US 8085941 B2
A dynamic range manipulation system, for use for example in an audio playback system such as a two-way communication system, mobile telephone, MP3 player, and the like, obtains a measure of ambient noise at the playback location and adjusts the gain of the drive signal provided to the loudspeaker based on this measure and based on the audio signal to be played back.
1. A dynamic sound delivery method comprising:
receiving an ambient noise signal indicative of ambient noise;
receiving an information signal;
determining a gain at a predetermined information signal threshold level as a function of the level of the ambient noise signal;
generating a compression/expansion function based on the gain; and
applying compression/expansion characteristics determined from the compression/expansion function to the information signal to generate a gain-controlled output signal.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method of
10. The method of
11. The method of
12. The method of
13. The method of
14. The method of
15. The method of
16. A dynamic sound delivery device comprising:
means for receiving an ambient noise signal indicative of ambient noise;
means for receiving an information signal;
means for determining a gain at a predetermined information signal threshold level as a function of the level of the ambient noise signal;
means for generating a compression/expansion function based on the gain; and
means for applying compression/expansion characteristics determined from the compression/expansion function to the information signal to generate a gain-controlled output signal.
17. The device of
18. The device of
19. The device of
20. The device of
21. The device of
22. The device of
23. The device of
24. The device of
25. The device of
26. The device of
27. The device of
28. The device of
29. The device of
30. The device of
31. A circuit for performing dynamic sound delivery, comprising:
a first input configured to receive an ambient noise signal indicative of ambient noise;
a second input configured to receive an information signal;
a processor configured to:
determine a gain at a predetermined information signal threshold level as a function of the level of the ambient noise signal;
generate a compression/expansion function based on the gain; and
apply compression/expansion characteristics determined from the compression/expansion function to the information signal to generate a gain-controlled output signal.
32. The circuit of
33. The circuit of
34. The circuit of
35. The circuit of
36. The circuit of
37. The circuit of
38. The circuit of
39. The circuit of
40. The circuit of
41. The circuit of
42. The circuit of
43. The circuit of
44. The circuit of
45. The circuit of
46. A playback system comprising:
a noise indicia generating circuit configured to provide an ambient noise signal indicative of ambient noise;
an information signal generating circuit configured to provide an information signal;
a processor configured to:
determine a gain at a predetermined information signal threshold level as a function of the level of the ambient noise signal;
generate a compression/expansion function based on the gain; and
apply compression/expansion characteristics determined from the compression/expansion function to the information signal to generate a gain-controlled output signal;
a circuit for acoustically combining the gain-controlled output signal with the ambient noise to produce an acoustic listening signal; and
a loudspeaker configured to receive the acoustic listening signal and generate an audible signal therefrom.
47. The system of
48. The system of
49. The system of
50. The system of
51. The system of
52. The system of
53. The system of
54. The system of
55. The system of
56. The system of
57. The system of
The present disclosure relates to audio playback, for example in two-way communication systems such as cellular telephones and walkie-talkies.
Ambient noise may sometimes interfere with the delivery of audio information. In a two-way communication system for example, in which the far-end talker is at a location remote from the near-end listener, the far-end talker, ignorant of the noise conditions at the listener's location, may not take measures to compensate for the occurrence of disruptive noise events (instantaneous or sustained). For example, the talker, unaware of a passing car at the listener's location, may not raise his/her voice to maintain audibility to the listener, and the talker's words may be not be heard or understood by the listener, even if the system were electrically and mechanically capable of handling such compensation. The inability of the listener to discern the talker's speech under such circumstances is due to the well known psychophysical phenomenon called “masking”, that is when loud enough, the local noise covers up, or masks, the played-back far-end sound signal. This problem is not limited to two-way communication systems of course, and ambient noise may similarly interfere with pre-recorded voices, any pre-stored audio information that is being played back.
As described herein, a dynamic range manipulation system includes a first input configured to provide an information signal, a second input configured to provide a noise indication signal, and a processor configured to receive the information signal and the noise indication signal, and to generate a gain-controlled output signal based on a determination of power in the information signal and the noise signal.
Further as described herein, an audio playback device includes an information source configured to provide an information signal, a loudspeaker configured to present audio information in accordance with a playback drive signal, a noise indication signal source configured to provide a noise indication signal based on ambient noise at the location of the loudspeaker, and a processor configured to generate the playback drive signal as a function of the information signal and the noise indication signal, the processor effecting gain control of the playback signal based on a determination of power in the information signal and the noise signal.
Also described herein is a method for compensating for ambient noise at a playback location. The method includes receiving an ambient noise signal indicative of the ambient noise, receiving an information signal, and generating an output signal that is gain-controlled as a function of power in the ambient noise signal and the information signal.
The accompanying drawings, which are incorporated into and constitute a part of this specification, illustrate one or more examples of embodiments and, together with the description of example embodiments, serve to explain the principles and implementations of the embodiments.
In the drawings:
Example embodiments are described herein in the context of a system and method for dynamic sound delivery. Those of ordinary skill in the art will realize that the following description is illustrative only and is not intended to be in any way limiting. Other embodiments will readily suggest themselves to such skilled persons having the benefit of this disclosure. Reference will now be made in detail to implementations of the example embodiments as illustrated in the accompanying drawings. The same reference indicators will be used to the extent possible throughout the drawings and the following description to refer to the same or like items.
In the interest of clarity, not all of the routine features of the implementations described herein are shown and described. It will, of course, be appreciated that in the development of any such actual implementation, numerous implementation-specific decisions must be made in order to achieve the developer's specific goals, such as compliance with application- and business-related constraints, and that these specific goals will vary from one implementation to another and from one developer to another. Moreover, it will be appreciated that such a development effort might be complex and time-consuming, but would nevertheless be a routine undertaking of engineering for those of ordinary skill in the art having the benefit of this disclosure.
In accordance with this disclosure, the components, process steps, and/or data structures described herein may be implemented using various types of operating systems, computing platforms, computer programs, and/or general purpose machines. In addition, those of ordinary skill in the art will recognize that devices of a less general purpose nature, such as hardwired devices, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), or the like, may also be used without departing from the scope and spirit of the inventive concepts disclosed herein. Where a method comprising a series of process steps is implemented by a computer or a machine and those process steps can be stored as a series of instructions readable by the machine, they may be stored on a tangible medium such as a computer memory device (e.g., ROM (Read Only Memory), PROM (Programmable Read Only Memory), EEPROM (Electrically Erasable Programmable Read Only Memory), FLASH Memory, Jump Drive, and the like), magnetic storage medium (e.g., tape, magnetic disk drive, and the like), optical storage medium (e.g., CD-ROM, DVD-ROM, paper card, paper tape and the like) and other types of program memory.
The example embodiments described herein are presented in the context of a processes implemented using a digital signal process. It will be recognized that each process step can be accomplished with alternative implementations, for example, using analog circuits. While the hardware supporting an analog implementation would appear different from the hardware implementation in the digital domain, the fundamental nature of each of the corresponding process steps is equivalent. Thus, the processes described herein are intended to be applicable to any hardware implementation in either the analog or digital domain.
The communication system 100 is considered a two-way system, as it contains two communication “circuits” as described. However, it should be understood that the implementations described herein relate to the communication “circuits” individually, and therefore are not limited to two-way systems. Rather, they are also applicable to one-way systems, in which a local or near-end user is only able to hear a remote user, and is unequipped to speak to the remote user, or vice versa. Even more generally, the implementations described herein are applicable to systems that may be exclusively for playback or presentation of audio information, such as music, sound signals and pre-recorded voices, regardless of the state or location of the source of the audio information, and no remote user or audio source need be involved. Such systems include for instance portable and non-portable audio systems such as walkmans, compact disk players, home stereos, television sets, personal digital assistants (PDAs), and so on. In such systems, unlike in two-way communication system 100, playback is not necessarily effected in real time—that is, the audio information is not necessarily presented at the same time that it is created.
Transceiver 108 is configured to effect transmission and/or reception of information, and can be in the form of a single component. Alternatively, separate components dedicated to each of these two functions can be used. Transmission can take place wirelessly, by way of modulated radio signals for example, or in a wired fashion using conventional electrical cabling, or even optically using fibers or through line-of-sight.
Since, in the example of
As previously explained, while the description herein may be in the context of a two-way communication system, this is not intended to be limiting, and applications in systems that are exclusively for playback of audio information, such as music, sound signals and pre-recorded voices are also contemplated, regardless of the state or nature of the audio information source, and in real time or otherwise.
The indicator 208 from which the indicia may be derived can be a simple microphone, or an array of microphones (for example microphone(s) 104 of
As explained in more detail below, the dynamic sound delivery system 200 of
The dynamic range manipulation system 300 receives the audio noise indicator signal at a first input 301 thereof, and provides that signal to a first frequency decomposition module 302, where it is resolved into frequency bins or bands. As previously explained, the audio noise indicator signal is indicative of the ambient noise at the playback location. The dynamic range manipulation system 300 receives the audio information signal at a second input 303, and provides it to a second frequency decomposition module 304. Frequency decomposition module 304 resolves this audio information signal into frequency bins or bands as well.
In the two-way communication system of
In the example two sub-band embodiment, frequency decomposition modules 302 and 304 each apply a standard short time Fourier transform (STFT) process on the respective input signals from inputs 301 and 303. This process is explained with reference to flow diagram 400 of
In the frequency domain example embodiment, the frequency bins are assembled into groups, or sub-bands. In this example, the group of bins from 1 kHz to 3.5 kHz form one sub-band (the “upper sub-band”) and the group of bins from 50 Hz to 1 kHz form a separate, second sub-band (the “lower sub-band”). Thus the two sets of bins constituting frequency domain representations of the audio noise indicator signal and the information signal respectively are each divided into two groups of bins, or sub-bands, providing a high sub-band and a low sub-band for each of the noise indicator signal and the audio information signal.
The above described embodiment is carried out in the frequency domain. However, in an alternative time domain embodiment, the frequency decomposition can be effected with band-pass filters. For the two sub-band example, there are two sets of two band-pass filters, with each such set comprising one band-pass filter passing the associated range of frequencies for the lower sub-band and one band-pass filter passing the associated range of frequencies for the upper sub-band. One of the sets of two band-pass filters is associated with the noise indicator signal and one of the sets of band-pass filters is associated with the audio information signal. Thus in this exemplary embodiment, there are four band-pass filters performing the frequency decomposition process.
A dynamic range manipulation control signal is developed by sub-processors 306, 308 as described with reference to
The frame power values thus obtained naturally vary from frame to frame, especially for the noise frame power values, and it may be desirable to reduce this variability. Accordingly, the resulting four streams of frame power values are passed through smoothing filters 605 and 605′, which track the respective frame power values. It is preferable that this smoothing is performed in the logarithmic domain, so the four streams are first converted to streams of log power values as described above. Smoothing is shown at 505 and 505′ in
where Pi is the tracked power for the current frame, signal and sub-band, Pi−1 is the tracked power for the previous frame, α and β are filter coefficients, Si is the summed power for the current frame, signal and sub-band, and i is the frame index. In the instant example, the values α=0.83 (typical values range from about 0.5 to about 0.95) and β=0.134 (typical values range from about 0.01 to about 0.5) are used.
Because the noise frame power values have greater variability than the information frame power values, and further may need slower response to prevent a “pumping” sound character to be introduced into the final output of the compression system, the two sub-band noise frame power values are further smoothed by applying (507) a tracking filter 607 (again these are in the class of low-pass filters and any such filter is generally applicable for this function). In the exemplary two sub-band system, this smoothing is described by the equation
where Ni is the smoothed and tracked noise power for the current frame and sub-band, Ni−1 is the smoothed and tracked noise power for the previous frame and δ is the filter smoothing coefficient. The value δ=0.4 (typical values range from about 0.1 to about 0.8) is used for example.
In the embodiment described here, smoothing filters 605 and 605′ may have the same properties, and if they are implemented as DSP (digital signal processor) code, the same code can be used for both filters, with the tracking filtering used for the noise component accomplished by the addition of tracking filter 607. Alternatively, smoothing filter 605 and tracking filter 607 can be combined into a single filter, which may have a time constant greater than that of filter 605′.
From the smoothed and tracked noise power, a compression knee value is calculated (509, 609) for each sub-band according to the equation
where Ki is the compression knee value for the current frame and μ is an offset factor. The value μ=−1.2 is used.
The significance of the compression knee value is explained with reference to the curves in
In the plot of
This compression knee value is used, along with the smoothed signal power, to create the compression gain (or attenuation), at 511 and 611, to subsequently be applied to each sub-band of the input information signal to create the output signal that is used to drive the loudspeaker 206 (
For a given instant in time, and for a particular sub-band, Equation 4 defines the compression curve, where the compression knee value is the single variable. The operation of this equation is such that the parameters define a minimum input signal level that represents the minimum equivalent audible SPL in quiet, a maximum signal level that represents the maximum equivalent acoustic SPL, and a compression knee threshold level that represents the lowest acoustic SPL that is intended to retain audibility when the listener is in noise. For the exemplary embodiment illustrated by the curves shown in
One way to visualize this single value compression control is to recognize that the minimum and maximum points are substantially fixed and that the output level equals the input level at those two fixed points. To help with the visualization, if a rubber band were stretched between those two points, and the compression knee value were applied by raising the rubber band by an amount equal to the compression knee value at the location of the compression knee threshold level, then the rubber band would take on the shape of the compression curve, i.e. such as the curves shown in
A feature of this compression control method is the downward expansion that is created to the left of the compression knee threshold, as is evidenced by the steeper-than-one slope of the compression curves in this region (
After the compression gain Gi is defined by Equation 4, the gain can be converted to linear form as follows:
At this point, there are two sub-band linear gain factors corresponding to each frame of data. These factors are expanded back to 257 separate bin gain factors by assigning the appropriate linear gain factor to each bin number associated with all the bins in each sub-band. (513 of
After applying the bin compression gains, the resulting attenuated frequency multi-band signals 519, 619 are combined in the well-known inverse STFT overlap-and-add process. This is shown as the signal recomposition block 310 in
The gain contour plot shown in
It should be noted that in the processing for both the noise and information signals, signal powers are used rather than their magnitudes. By using the signal powers, computational power requirements for achieving the processed output signal are minimized. Alternatively however, the magnitudes can also be used, and such operation is also contemplated. Also, smoothing is performed with filters in the log domain rather than the linear domain, thus providing logarithmic symmetry around a logarithmic average, which is distinctly different from filtering in the linear domain. Since loudness perception in human hearing is known to follow a logarithmic characteristic, this process gives very natural sounding results, as opposed to linear domain processing. Nevertheless, these features are not intended to be limiting, and linear as well as other non-linear alternatives are also contemplated.
As explained herein, an advantage achieved by the above arrangement is the control of the compression through control of the compression knee value (the value of the gain applied at the compression threshold). In other words, the output signal level can be held at that of the input signal level (gain=1) at a maximum spl (e.g. 110 db spl, range from 90-120) and at a minimum spl (e.g. 20 db spl, range 10-40). An instantaneous gain to be applied at the compression knee threshold (e.g. 52 db spl, range 40-75) is then calculated. The compression knee threshold is the input signal level at which the transition from downward expansion to compression occurs as the input signal increases across the compression knee threshold. The gain (the compression knee value) to be applied at the compression threshold as a function of the near-end noise is determined, and the compression/expansion curve based upon that compression knee value is derived. All other points on the compression cure are determined simply from linearly interpolating between those three points (see
Thus, it will be appreciated that power measurement per se are not paramount. More importantly, what is achieved is simplified calculations that do not require “profiles” or storage, and provide appropriate amounts of compression/expansion responsive to both the far-end signal level and the near-end noise level.
While embodiments and applications have been shown and described, it would be apparent to those skilled in the art having the benefit of this disclosure that many more modifications than mentioned above are possible without departing from the inventive concepts disclosed herein. For example, tracking the power of a signal, whether noise or information, is essentially a form of envelope detection, so any type of envelope detection (or envelope following/follower) is within the scope of the invention. The invention, therefore, is not to be restricted except in the spirit of the appended claims.