Abstract:
A system for processing audio data comprising an audio data source. A delay system coupled to the audio data source and a delay input and configured to delay audio data provided by the audio data source by an amount of time equal to the delay input. A randomizer system coupled to the delay input and configured to generate an output that randomly changes as a function of time.

Description:
RELATED APPLICATIONS 
     The present application claims priority to and benefit of U.S. Provisional Patent Application No. 62/092,603, filed on Dec. 16, 2014, U.S. Provisional Patent Application No. 62/133,167, filed on Mar. 13, 2015, U.S. Provisional Patent Application No. 62/156,061, filed on May 1, 2015, and U.S. Provisional Patent Application No. 62/156,065, filed on May 1, 2015, each of which are hereby incorporated by reference for all purposes as if set forth herein in their entirety. 
    
    
     TECHNICAL FIELD 
     The present disclosure relates generally to audio data processing, and more specifically to a system and method for decorrelating audio data that improves sound quality by providing kinocilia stimulation. 
     BACKGROUND OF THE INVENTION 
     “High-quality” audio data systems, such as digital audio data systems, can provide sound quality that is not as qualitatively good as other “low-quality” audio data systems, as that sound is experienced by a listener. The reasons for this discrepancy are unknown in the prior art. 
     SUMMARY OF THE INVENTION 
     A system for processing audio data is provided that includes an audio data source. A delay system is connected to the audio data source and a delay input, and is configured to delay audio data provided by the audio data source by an amount of time equal to the delay input. A randomizer system connected to the delay input generates an output that randomly changes as a function of time, such that this output can be used to randomly vary the delay. 
     Other systems, methods, features, and advantages of the present disclosure will be or become apparent to one with skill in the art upon examination of the following drawings and detailed description. It is intended that all such additional systems, methods, features, and advantages be included within this description, be within the scope of the present disclosure, and be protected by the accompanying claims. 
    
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS 
       Aspects of the disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views, and in which: 
         FIG. 1  is a diagram of a system for decorrelating audio in accordance with an exemplary embodiment of the present disclosure; 
         FIG. 2  is a diagram of an array of randomly variable delays in accordance with an exemplary embodiment of the present disclosure; and 
         FIG. 3  is a diagram of an algorithm in accordance with an exemplary embodiment of the present disclosure. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     In the description that follows, like parts are marked throughout the specification and drawings with the same reference numerals. The drawing figures might not be to scale and certain components can be shown in generalized or schematic form and identified by commercial designations in the interest of clarity and conciseness. 
       FIG. 1  is a diagram of a system  100  for decorrelating audio in accordance with an exemplary embodiment of the present disclosure. System  100  can be implemented in hardware or a suitable combination of hardware and software, and can be one or more software systems operating on a special purpose audio processor or other suitable devices. 
     As used herein, “hardware” can include a combination of discrete components, an integrated circuit, an application-specific integrated circuit, a field programmable gate array, or other suitable hardware. As used herein, “software” can include one or more objects, agents, threads, lines of code, subroutines, separate software applications, two or more lines of code or other suitable software structures operating in two or more software applications, on one or more processors (where a processor includes a microcomputer or other suitable controller, memory devices, input-output devices, displays, data input devices such as a keyboard or a mouse, peripherals such as printers and speakers, associated drivers, control cards, power sources, network devices, docking station devices, or other suitable devices operating under control of software systems in conjunction with the processor or other devices), or other suitable software structures. In one exemplary embodiment, software can include one or more lines of code or other suitable software structures operating in a general purpose software application, such as an operating system, and one or more lines of code or other suitable software structures operating in a specific purpose software application. As used herein, the term “couple” and its cognate terms, such as “couples” and “coupled,” can include a physical connection (such as a copper conductor), a virtual connection (such as through randomly assigned memory locations of a data memory device), a logical connection (such as through logical gates of a semiconducting device), other suitable connections, or a suitable combination of such connections. 
     System  100  includes adder  102 , which receives an input audio data stream and adds it to a feedback audio data stream. The output of adder  102  is provided to router  104 , which routes the audio data to the inputs of scattering matrix  106 . Scattering matrix  106  can utilize a full M-input×N-output mixer with a total of M×N coefficients. The coefficients can be contained in a coefficients matrix with the gain from the ith input to the jth output found at coeffs(i, j). In this exemplary embodiment, the coeffs array can be a one dimensional array of length M×N. The gain from input m (0&lt;=m&lt;=M−1) to output n (0&lt;=n&lt;=N−1) can be stored at coeffs[m+n*M]. In this manner, the first M coefficients can be the gains used to compute the first output channel. The next M coefficients can be the gains used to compute the second output channel, and so forth. 
     The output from scattering matrix  106  is provided to delay  108 , which is a randomly variable delay. By introducing a randomly variable delay with less than 5 cents of variation, the audio data is decorrelated from other audio data as well as itself, such as to prevent the audio data from exciting resonance modes in chassis or other structures. The output of delay  108  is provided to low pass filter  110 , which is then provided to scaler  112 . 
     Scaler  112  is used to reduce the level of the decorrelated audio data to at least  13  dB below the unprocessed audio data, so that it is present in the audio data but not noticeable to a human listener. This effect is based on the observation that an audio content signal that is 13 dB or greater than associated an audio noise signal will effectively block the audio noise signal from being perceived by a listener. The output from scaler  112  is fed back to the input of router  104 , as well as to router  114  and router  116 . The output of router  114  is fed back to the input to adder  102 , and the output of router  116  is fed to mixer  118 , where it is mixed with the audio input signal. 
     In operation, system  100  receives and processes input digital audio data in the time domain to decorrelate the digital audio data, such as to combine overlay audio data that varies slightly from the input audio data with the input audio data to generate decorrelated output audio data. The decorrelated audio data is then combined with the unprocessed audio data at a level that is at least  13  decibels below the level of the unprocessed audio data, so as to cause the kinocilia to be stimulated at a sound level that is not perceived by the listener, but which nonetheless prevents the listener&#39;s kinocilia from becoming dormant, which would require additional audio energy to wake the kinocilia and which effectively masks low level audio data in the unprocessed audio data. Although time domain processing is disclosed, frequency domain components and processing can also or alternatively be used where suitable. 
       FIG. 2  is a diagram of an array  200  of randomly variable delays in accordance with an exemplary embodiment of the present disclosure. Array  200  receives the output of scattering matrix  106  into each of a plurality of delay units  204 A through  204 N, which each have an associated random input  202 A through  202 N. In one exemplary embodiment, each delay unit can be a Z −N  delay unit, where the value of N is changed by an amount not exceeding 5 cents. The outputs of delays  204 A through  204 N are then summed at summer  206  to generate a decorrelated output signal. 
     Although a plurality of programmable delays  204 A through  204 N are shown with a plurality of random inputs, a single programmable delay with a single random input can be used, as long as the delay is truly randomized. When a non-random delay is used, patterns in the delay variation can be detectable to human hearing, or can otherwise excite resonant oscillation modes in speaker grills, enclosures or other structures. 
       FIG. 3  is a diagram of an algorithm  300  in accordance with an exemplary embodiment of the present disclosure. Algorithm  300  can be implemented in hardware or a suitable combination of hardware and software. 
     Algorithm  300  begins at  300 , where audio data is received. In one exemplary embodiment, the audio data can be a single channel of audio data in a digital format that is received over a data port and buffered in a data memory, multiple channels of audio data in a digital format that are received in data packets having a multiple-channel format and which are processed to extract individual channels that are buffered into separate data memory locations, one or multiple channels of audio data in a predetermined analog format that are subsequently converted to a digital format using an analog to digital data processing system and buffered in a data memory, or other suitable forms of audio data. The algorithm then proceeds to  304 . 
     At  304 , the audio data is mixed with audio data that has been fed back after processing. In one exemplary embodiment, the mixing can be performed by simple addition of the two audio signals, or other suitable mixing processes can also or alternatively be used. The algorithm then proceeds to  306 . 
     At  306 , the mixed audio data is routed to a scattering matrix. In one exemplary embodiment, the audio data can be routed as different time samples, as redundant data streams or in other suitable manners. The algorithm then proceeds to  308 . 
     At  308 , the audio data is processed by the scattering matrix, such as in the manner discussed herein or in other suitable manners. The output of the scattering matrix can then be summed or reconstructed as suitable, and the algorithm proceeds to  310 . 
     At  310 , a variable delay is applied to the audio data. In one exemplary embodiment, the audio data can be processed using a Z −N  transform, where the delay value is changed by an amount not exceeding 5 cents (0.416 percent). In one exemplary embodiment, the amount of delay can be limited to no more than an amount that is below a level at which human hearing can distinguish a change in a steady single frequency tone, so as to prevent the random variation from being noticeable. In one exemplary embodiment, the output of the scattering matric can be provided in parallel to a plurality of parallel programmable delays, which each have a distinct random variation to the amount of delay, and where the audio output data from each delay is then added together to form a single set of audio data, or other suitable processing can also or alternatively be used. The algorithm then proceeds to  312 . 
     At  312 , the audio data is processed by a low pass filter. In one exemplary embodiment, the low pass filter can have an 8 kilohertz cutoff frequency or other suitable frequencies, such as to extract higher frequency components where pitch variations are difficult to hear. The algorithm then proceeds to  314 . 
     At  314  the audio data is processed by a scaler, such as to reduce the magnitude of the audio data prior to feeding the audio data back for processing at  302  and  304 , for mixing with input audio data or for other suitable purposes. In one exemplary embodiment, the level can be sufficient to prevent kinocilia from becoming inactive for more than 200 milliseconds, because the amount of energy required to re-active kinocilia after they have become inactive can result in a reduction in the perceived quality of the audio data. 
     At  316 , the audio data is mixed with the input audio data and is fed back for mixing at  302  and is also fed back for routing at  304 . As discussed, the use of decorrelated audio that has been added into the original audio data can improve the sensitivity of kinocilia to the processed audio data by preventing the kinocilia from becoming dormant. 
     It should be emphasized that the above-described embodiments are merely examples of possible implementations. Many variations and modifications may be made to the above-described embodiments without departing from the principles of the present disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.