WO2011010960A1 - Device and method for controlling damping of residual echo - Google Patents

Device and method for controlling damping of residual echo Download PDF

Info

Publication number
WO2011010960A1
WO2011010960A1 PCT/SE2010/050676 SE2010050676W WO2011010960A1 WO 2011010960 A1 WO2011010960 A1 WO 2011010960A1 SE 2010050676 W SE2010050676 W SE 2010050676W WO 2011010960 A1 WO2011010960 A1 WO 2011010960A1
Authority
WO
WIPO (PCT)
Prior art keywords
signal
echo
echo estimation
maximum
max
Prior art date
Application number
PCT/SE2010/050676
Other languages
French (fr)
Inventor
Fredric LINDTRÖM
Christian SCHÜLDT
Ingvar Claesson
Original Assignee
Limes Audio Ab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Limes Audio Ab filed Critical Limes Audio Ab
Priority to US13/384,554 priority Critical patent/US8693678B2/en
Publication of WO2011010960A1 publication Critical patent/WO2011010960A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • H04M9/082Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • G10L21/0232Processing in the frequency domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/20Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
    • H04B3/23Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a replica of transmitted signal in the time domain, e.g. echo cancellers
    • H04B3/237Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a replica of transmitted signal in the time domain, e.g. echo cancellers using two adaptive filters, e.g. for near end and for end echo cancelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L2021/02082Noise filtering the noise being echo, reverberation of the speech

Definitions

  • the conference telephone may receive a delayed line echo of the A-talker speech possibly due to echoes generated in the telephone network. Then, due to room acoustics, there will be an acoustic echo present on the microphone when the speech of the B-talker is present on the loudspeaker.
  • the echoes are typically removed through damping, cancellation or a combination of both damping and cancellation.
  • the damping solution is relatively simple, but will in situations where both A-talker and B-talker are speaking simultaneously only let one speaker through.
  • Echo cancellation typically uses one or more adaptive filters to model the echo, which is then subtracted from the microphone signal without disturbing the desired speech. This allows speech from both the A-talker and the B-talker simultaneously, denoted full- duplex. In practice however, echo cancellation will not completely remove the echo. Thus, a combination of echo cancellation and damping (to remove the non-cancelled residual echo) is frequently used.
  • the signal after echo cancellation will be a combination of residual echo and speech, i.e. the signal will contain more energy than a signal with pure residual echo.
  • the feedback properties will change. This can occur due to changes in the acoustic environment (e.g. people or objects are moving on the A-side) or changes in the telephone network (e.g. a call is being set up).
  • the adaptive echo cancelling filter will then produce a larger residual echo until it has had time to adapt to the change.
  • the output energy from the echo canceller will increase.
  • the damping should be restricted, whereas significant damping should be applied in the echo-path change situation.
  • Another problem is thus how to distinguish a double-talk situation from an echo-path change situation.
  • Another problem is that adaptive echo cancelling filters sometimes act unpredictably in, and immediately after, double-talk situations. This makes it difficult to assess the correct amount of echo, potentially leading to underestimation of the echo present in these situations.
  • the risk of underestimating the amount of echo present calls for a safety margin when calculating the speech-to- echo ratio in order to minimize the risk of detecting the echo as near-end speech.
  • a drawback of the safety margin is of course that it complicates the detection of true near-end speech.
  • a common method to achieve noise estimation is based on minimum statistics, as described in e.g. "Acoustic Echo and Noise Control: A Practical Approach” by E. Hansler and G. Schmidt, Wiley, 2004, and in “A Combined Implementation of Echo Suppression, Noise Reduction and Comfort Noise in a Speaker Phone Application” by C. Sch ⁇ ldt, F. Lindstrom and I. Claesson, In Proceedings of IEEE International Conference on Consumer
  • Estimation of the coupling factor can be achieved through e.g. the ratio of the estimated loudspeaker and microphone power, or be extracted from the near-end part of the adaptive filter coefficients. More details of how to estimate the coupling factor can be found in e.g. "Step-size control for acoustic echo cancellation filters - an overview" by A. Mader, H. Puder, G.U.
  • the differentiation between double-talk and echo path change is also crucial for avoiding divergence of adaptive echo cancelling filters, which can occur during double-talk.
  • the filter adaption should be halted during double-talk. If a single adaptive filter is used and an echo-path change is mistaken for a double-talk situation, the adaptive filter will not update, leading to a dead-lock situation.
  • a structure for avoiding the dead-lock problem is the so called two-path algorithm, where two adaptive echo cancelling filters are used in parallel. This structure is described in more detail in "Echo canceller with two echo path models" by K.
  • the method is characterised by the steps of:
  • the object of the invention is also achieved by a computer program for the device described above.
  • the computer program is characterised in that it comprises computer readable code which, when run by a processing unit in the device, causes the device to perform the above-described method.
  • the above-defined device and method may be used both for controlling damping of residual acoustic echo generated in a communication device, such as a conference telephone, when a microphone of the communication device picks up a loudspeaker signal simultaneously output by a loudspeaker thereof, and for controlling damping of residual line echo generated in a network, e.g. a telephone network, to which communication devices are connected.
  • a communication device such as a conference telephone
  • a microphone of the communication device picks up a loudspeaker signal simultaneously output by a loudspeaker thereof
  • damping of residual line echo generated in a network e.g. a telephone network
  • the first input signal is the loudspeaker signal received by the communication device and intended to be converted to sound by a loudspeaker thereof.
  • the echo-cancelled output signal is an echo-cancelled microphone signal which is generally formed by subtracting an acoustic echo signal estimated based on the loudspeaker signal from the microphone signal that is picked up by a microphone of the communication device at the time the loudspeaker signal is output by the loudspeaker.
  • the first input signal is the line out signal transmitted from a first communication device to a network to which it is connected, normally for further transmission to a second communication device.
  • the echo-cancelled output signal is an echo-cancelled line in signal which is generally formed by subtracting a line echo signal estimated based on said line out signal from a line in signal that is to be transmitted to the first communication device.
  • the background filter generates better echo estimates than the foreground filter in echo-path change situations whereas the foreground filter is more reliable than the background filter in double-talk situations.
  • the maximum echo estimation signal is calculated based on the power or energy spectral densities of the first and second echo estimation signals. This can be achieved by, e.g., rectifying the first and second echo estimation signals and, for a given frequency or frequency range, calculate an amplitude value for the maximum echo estimation signal based on the power or energy of the rectified echo estimation signal having the highest power or energy of the first and second rectified echo estimation signals at said frequency or within said frequency range.
  • the speech-to-echo ratio of the microphone signal can be estimated for the full-band microphone signal based on a single full-band maximum echo estimation signal, or individually estimated for each of a plurality of sub-bands of the microphone signal based on a sub-band maximum echo estimation signal calculated for the
  • residual echo damping may be performed by applying a single damping signal to the echo-cancelled microphone signal or by applying a plurality of sub-band damping signals to the echo-cancelled microphone signal, which sub-band damping signals can be calculated from the individually estimated speech-to-echo-ratios for the corresponding sub-bands or from
  • the amplitude of the maximum echo estimation signal for a given frequency can be made to correspond to the maximum amplitude of the first and second rectified echo estimation signals for that particular frequency.
  • Performing the processing in sub-bands takes advantage of the specific spectral characteristics of speech, e.g. that energy is concentrated to specific sub-bands, and can further improve the structure as compared to the full-band solution.
  • a maximum echo estimation signal representing a "worst case echo scenario" is generated.
  • the maximum echo estimation signal avoids underestimating the true echo signal.
  • one of the foreground and background filters may be better adapted than the other for estimating the echo occurring at a certain frequency or within a certain frequency range, while the other filter is better adapted for estimating the echo occurring at another frequency or within another frequency range.
  • the background filter will rapidly adapt to the new acoustic environment and output a good estimation of the echo picked up by the microphone.
  • the adapting background filter will adapt to the new echo path and produce a corresponding increased echo energy estimation, while the fixed foreground filter will continue to produce low echo energy estimate according to the previous echo path.
  • the adapting background filter will diverge and cancel the near-end speech, which may result in a too low estimate of the echo energy, while the fixed foreground filter will produce a much more accurate estimate.
  • the second input signal is likely to carry nothing but echo (acoustic echo in the acoustic echo scenario and line echo in the line echo scenario) whereupon the control damping means can apply significant damping to the echo-cancelled output signal. If, on the other hand, the ratio is much larger than one, the second input signal is likely to carry speech whereupon damping of the echo-cancelled output signal is restricted.
  • the damping control means is configured to calculate a minimum residual echo estimation by subtracting the energy of the maximum echo estimation signal from the energy of the second input signal, and to calculate a maximum residual echo estimation based on the first input signal and a coupling factor, and control the damping of the echo-cancelled output signal based on a comparison between the minimum residual echo estimation signal and the maximum residual echo estimation.
  • the coupling factor is normally referred to as the acoustic coupling factor and is a measure of the dependency between the loudspeaker signal and the microphone signal.
  • the coupling factor is a measure of the dependency between the line out signal and the line in signal.
  • the ratio between the minimum and maximum residual echo estimation signal is high, the probability that the second input signal carries speech is very high. If, however, the ratio is low, the second input signal is likely to carry nothing but echo and the echo-cancelled output signal can be heavily damped.
  • the calculations described above may be performed on a sub-band basis, meaning that some or all calculations can be performed for one or several sub frequency bands of the processed signals individually. Damping of the echo-cancelled output signal, i.e. the residual damping, can then be controlled based on the result of the
  • Damping may e.g. be applied to different sub-bands or groups of sub-bands individually by applying different damping signals for different sub-bands or groups of sub-bands.
  • FIG. 1 is a schematic block diagram illustrating a conference telephone
  • Fig. 2 is a block diagram illustrating an acoustic echo cancellation procedure performed by a Digital Signal Processor (DSP) of the conference telephone shown in Fig. 1;
  • DSP Digital Signal Processor
  • Fig. 3 is a block diagram illustrating a speech-to-echo estimation procedure performed by a speech-to-echo estimator of the DSP shown in Fig. 2;
  • Figs. 4A-B illustrate an exemplary way of calculating a maximum echo estimation signal according to an embodiment of the invention;
  • Figs. 5A-B and 6A-B illustrate another exemplary way of calculating a maximum echo estimation signal according to an embodiment of the invention
  • Fig. 7 illustrates a conference telephone comprising a computer program according to the invention.
  • a hands-free conference telephone is merely an example of a communication device for which the present invention is applicable.
  • Other examples of communication devices that would benefit from the inventive principles are, e.g., integrated car telephones and conventional mobile telephones put in loudspeaker mode.
  • Fig. 1 illustrates a block diagram of a conference telephone 1.
  • An analog line in signal carrying speech from the B-side, together with line-echo, is received from the telephone network at an input port of the conference telephone (not shown).
  • the analog line in signal is converted to a discrete signal, l(k), by an analog-to-digital (A/D) converter 3.
  • A/D analog-to-digital
  • the signal l(k) is fed to a digital signal processor (DSP) 5 which processes the signal in attempt to reduce the line-echo while preserving the B-side speech, and generates an output signal in form of a loudspeaker signal, x(k).
  • DSP digital signal processor
  • Fig. 2 shows a block diagram illustrating the acoustic echo cancellation procedure performed by the DSP 5 in Fig. 1.
  • the signal l(k) from the B-side is, after possible processing performed by a signal processor 21, forming the loudspeaker signal x(k) which is sent to the loudspeaker (11 in Fig. 1) and two adaptive echo cancelling filters 23, 25 of the DSP 5.
  • the filter 23 is a foreground filter configured to output a first echo estimation signal, ⁇ /k), based on the received loudspeaker signal x(k).
  • the filter 25 is a background filter configured to output a second echo estimation signal, ⁇ b(k), based on the received loudspeaker signal x(k).
  • the foreground filter 23 is a "fix" filter in the sense of not being configured to self-adapt.
  • the DSP 5 may comprise filter updating means (not shown) which is configured to update the foreground filter 23 by copying the background filter 25 into the foreground filter 23 when a certain criteria is met.
  • the criteria is chosen such that the background filter 25 is copied into the foreground filter 23 when the background filter 25 is considered to perform better in terms of echo cancellation than the foreground filter 23.
  • the DSP 5 further comprises a speech-to-echo-ratio estimator 31 which is configured to calculate a near-end side speech-to-echo-ratio estimate, r(k). To do so, the speech- to-echo-ratio estimator 31 uses the loudspeaker signal x(k), the microphone signal y(k), the first echo estimation signal ⁇ /k) output by the foreground filter 23, and the second echo estimation signal ⁇ b(k) output by the background filter 25.
  • a speech-to-echo-ratio estimator 31 uses the loudspeaker signal x(k), the microphone signal y(k), the first echo estimation signal ⁇ /k) output by the foreground filter 23, and the second echo estimation signal ⁇ b(k) output by the background filter 25.
  • Fig. 3 illustrates a more detailed block diagram of the processing performed by the speech-to-echo-ratio estimator 31 shown in Fig. 2.
  • This signal, e mm (k), can be seen as a smoothed average of the combined near-end speech and residual echo.
  • the loudspeaker signal x(k) is rectified and filtered in a step S7, using e.g. a moving average or exponential recursive weighting, forming a rectified and filtered loudspeaker signal Xfiu(k).
  • an acoustic coupling factor c(k) is estimated based on the loudspeaker signal x(k) and the microphone signal y(k).
  • a step S9 the rectified and filtered loudspeaker signal Xfiit(k) generated in step S7 is multiplied with the acoustic coupling factor c(k) estimated in step S8 in order to produce a signal e c (k) which is a "worst case" estimate of the acoustic echo.
  • a noise estimate n(k) is estimated based on the loudspeaker signal y(k).
  • a maximum residual echo estimation signal e max (k) is calculated as the maximum of the signal e c (k) produced in step S9 and the noise estimate n(k) estimated in step SlO.
  • Figs. 4A and 4B illustrate an exemplary way in which the maximum echo estimation signal ⁇ max (k) can be calculated based on the first and second echo estimation signals, ⁇ /k) and ⁇ b(k).
  • the graphs in Fig. 4A illustrate examples of a first and a second echo estimation signal after being rectified and filtered in steps Sl and S2 in Fig. 3.
  • the graphs illustrate the power of the rectified echo estimation signals ⁇ fjm(k) and ⁇ bjut(k) as functions of frequency for the relevant frequency range, and hence illustrate the power spectral densities of the respective signal.
  • the relevant frequency range is typically the frequency range in which speech may occur. In this
  • the integral A B of the rectified second echo estimation signal ⁇ bjm(k) is larger than the integral Ap of the rectified first echo estimation signal ⁇ fjut(k) which indicates that the second echo estimation signal ⁇ b(k) output by the
  • the speech-to-echo-ratio estimator 31 is configured to calculate the integral for each of the first and second rectified echo estimation signals within a certain frequency range or sub-band, which frequency range or sub-band is denoted F R in Fig. 5A.
  • the maximum echo estimation signal ⁇ max (k) is then calculated on a sub-band basis by, for each sub-band, calculate the maximum echo estimation signal ⁇ max (k) such that it corresponds to the rectified echo estimation signal ⁇ f j u t (k) or ⁇ bj m(k) having the largest integral within that sub-band.
  • Figs. 4 A and 4B hence illustrate an embodiment of the invention according to which damping is controlled on a full-band basis whereas Figs. 5A and 5B illustrate an embodiment according to which the damping is controlled on a sub-band basis.
  • Figs. 6A and 6B illustrate what will happen if the band width, i.e. the width of the sub-bands for which the maximum echo estimation signal ⁇ max (k) is calculated as described above, approaches zero. If the speech-to-echo-ratio estimator 31 is configured to calculate the integrals for very narrow sub-bands, the power of the maximum echo estimation signal ⁇ max (k) will, for substantially each given frequency, correspond to the power of the rectified echo estimation signal ⁇ fjm(k) or ⁇ bjm(k) having the highest power at that frequency. In this case, the maximum echo estimation signal ⁇ max (k) will be truly indicative of the maximum energy content of the first and second echo estimation signals, ⁇ j(k) and ⁇ b(k).
  • the maximum echo estimation signal ⁇ max (k) may be calculated by comparing the power of the first and second rectified echo estimation signals ⁇ fjm(k) and ⁇ bjm(k) at a plurality of discrete frequencies, set the power of the maximum echo estimation signal ⁇ max (k) at a given frequency to the power of the rectified echo estimation signal ⁇ fjut(k) or ⁇ bjm(k) having the highest power at that frequency, and interpolate between the so determined power/frequency values of the maximum echo estimation signal ⁇ max (k).
  • Fig. 7 illustrates a conference telephone 1 comprising a loudspeaker 11 and a microphone 13.
  • the conference telephone further comprises a processing unit 37 which may or may not be the DSP 5 in Fig. 1, and a computer readable medium 39 for storing digital information, such as a hard disk or another non- volatile memory.
  • the computer readable medium 39 is seen to store a computer program 41 comprising computer readable code which, when executed by the processing unit 37, causes the DSP 5 to control the damping of the echo-cancelled microphone signal e/k) according to principles described herein.
  • the functionality described above for controlling damping of acoustic residual echo could be incorporated in a separate damping device residing in the telephone network instead of in the conference telephone itself.
  • the acoustic echo cancellation procedure illustrated in Fig. 2 is carried out by the network damping device, which device is configured to forward the loudspeaker signal x(k) to the communication device for which it is intended, and receive the microphone signal y(k) therefrom.
  • the invention could be used for controlling damping of residual line echoes, i.e. echoes generated in the telephone network.
  • the description of such an embodiment is analogous with the description above describing an acoustic echo scenario.
  • the line echo scenario can most easily be appreciated by in figure 2 and 3 replacing the loudspeaker signal x(k) with the line out signal o(k), the microphone signal y(k) with the line in signal l(k), the line out signal o(k) with the loudspeaker signal x(k) and the line in signal l(k) with the microphone signal y(k).

Abstract

The present invention relates to a device (1), such as a communication device, comprising an adaptive foreground filter (23) configured to calculate a first echo estimation signal [â f (k)]based on a first input signal[x(k); o(k)], and an adaptive background filter (25) being more rapidly adapting than the foreground filter and configured to calculate a second echo estimation signal [â b (k)] based on said first input signal. The device further comprises damping control means (31, 33, 35) for controlling damping of an echo-cancelled output signal[e f (k)]. The device is characterised in that the damping control means is configured to calculate a maximum echo estimation signal [â max (k)] using both the first and the second echo estimation signals, and control the damping of the echo-cancelled output signal based on said maximum echo estimation signal and/or a signal derived from said maximum echo estimation signal.

Description

DEVICE AND METHOD FOR CONTROLLING DAMPING OF RESIDUAL ECHO
Technical field
The present invention relates to a device according to the preamble of claim 1, a method for controlling damping of an echo-cancelled output signal according to the preamble of claim 8, a computer program according to the preamble of claim 13, and a computer program product according to the preamble of claim 14.
Background of the invention
The invention concerns a technological solution targeted for communication systems where there is a feedback between outgoing and incoming signals, such as e.g. in a conference telephone where the outgoing loudspeaker signal is picked up by the microphone. This invention is intended to reduce the negative effects of such feedback. This type of unwanted feedback may occur in different types of communication devices, particularly in hands-free full-duplex communication devices in which the microphone is or may be positioned such that signals output by the loudspeaker are easily picked up by the microphone. Examples of such communication devices are hands-free conference telephones, hands-free car telephone systems, installed room systems using ceiling speakers and table microphones, conventional telephones or mobile telephones in speakerphone or hands-free mode, etc.
When describing, e.g., a hands-free conference telephone during an active conference call, the A-side (near-end side) commonly denotes the physical room in which the conference telephone is placed, and the B-side (far-end side) commonly denotes the physical location of the other participating part of the conference call. The A-talker is located at the A-side and the speech of the A-talker is picked up by the microphone of the conference telephone, processed and then sent through the telephone network to the B-side and the B-talker. The speech of the B-talker is sent over the telephone network and received by the conference telephone, which processes the received B-talk speech and presents it on the loudspeaker on the A- side.
In a scenario like the one described above, two types of echoes are present. First, in addition to the B-talker signal, the conference telephone may receive a delayed line echo of the A-talker speech possibly due to echoes generated in the telephone network. Then, due to room acoustics, there will be an acoustic echo present on the microphone when the speech of the B-talker is present on the loudspeaker. To remove the echoes is of outmost importance due to both listening comfort and system stability (to prevent so-called howling). The echoes are typically removed through damping, cancellation or a combination of both damping and cancellation. The damping solution is relatively simple, but will in situations where both A-talker and B-talker are speaking simultaneously only let one speaker through. This is called a half-duplex solution. Echo cancellation, on the other hand, typically uses one or more adaptive filters to model the echo, which is then subtracted from the microphone signal without disturbing the desired speech. This allows speech from both the A-talker and the B-talker simultaneously, denoted full- duplex. In practice however, echo cancellation will not completely remove the echo. Thus, a combination of echo cancellation and damping (to remove the non-cancelled residual echo) is frequently used.
How much the residual echo should be damped depends on the situation, but generally is a function of the speech-to-echo-ratio. A signal containing strong speech combined with weak echo should not be damped as much as a signal with weak speech combined with strong echo, since the speech will in a sense mask the echo. Moreover, to be able to achieve high listener comfort, the speech should be as unaffected by the damping as possible. Determining the speech-to-echo-ratio in a signal is a non-trivial problem. The problem can also be formulated as differentiating between double-talk and an echo-path change. A double-talk situation occurs when both A-side and B-side speakers are active simultaneously. In the double-talk situation, the signal after echo cancellation will be a combination of residual echo and speech, i.e. the signal will contain more energy than a signal with pure residual echo. In an echo-path change situation, the feedback properties will change. This can occur due to changes in the acoustic environment (e.g. people or objects are moving on the A-side) or changes in the telephone network (e.g. a call is being set up). The adaptive echo cancelling filter will then produce a larger residual echo until it has had time to adapt to the change. Hence, in both the double-talk and the echo-path change case the output energy from the echo canceller will increase. In the double-talk situation the damping should be restricted, whereas significant damping should be applied in the echo-path change situation. One problem is thus how to distinguish a double-talk situation from an echo-path change situation. Another problem is that adaptive echo cancelling filters sometimes act unpredictably in, and immediately after, double-talk situations. This makes it difficult to assess the correct amount of echo, potentially leading to underestimation of the echo present in these situations. The risk of underestimating the amount of echo present calls for a safety margin when calculating the speech-to- echo ratio in order to minimize the risk of detecting the echo as near-end speech. A drawback of the safety margin is of course that it complicates the detection of true near-end speech.
Significant for distinguishing double-talk from echo-path change, and also for other applications, is the ability to estimate the stationary noise level and the coupling
(feedback) factor (i.e. the strength of the echo). A common method to achieve noise estimation is based on minimum statistics, as described in e.g. "Acoustic Echo and Noise Control: A Practical Approach" by E. Hansler and G. Schmidt, Wiley, 2004, and in "A Combined Implementation of Echo Suppression, Noise Reduction and Comfort Noise in a Speaker Phone Application" by C. Schϋldt, F. Lindstrom and I. Claesson, In Proceedings of IEEE International Conference on Consumer
Electronics, Las Vegas, NV, January 2007. Estimation of the coupling factor can be achieved through e.g. the ratio of the estimated loudspeaker and microphone power, or be extracted from the near-end part of the adaptive filter coefficients. More details of how to estimate the coupling factor can be found in e.g. "Step-size control for acoustic echo cancellation filters - an overview" by A. Mader, H. Puder, G.U.
Schmidt, Signal Processing, vol. 80, no. 9, pp. 1697-1719, 2000.
The differentiation between double-talk and echo path change is also crucial for avoiding divergence of adaptive echo cancelling filters, which can occur during double-talk. Thus, the filter adaption should be halted during double-talk. If a single adaptive filter is used and an echo-path change is mistaken for a double-talk situation, the adaptive filter will not update, leading to a dead-lock situation. A structure for avoiding the dead-lock problem is the so called two-path algorithm, where two adaptive echo cancelling filters are used in parallel. This structure is described in more detail in "Echo canceller with two echo path models" by K.
Ochiai, T. Araseki, and T. Ogihara, IEEE Transactions on Communications, vol. COM-25, no. 6, pp. 8-11, June 1977. One filter, often referred to as the background filter, is continuously (i.e. very frequently) adapted whereas the other filter, often referred to as the foreground filter, is adapted much less frequently. For this reason, the foreground filter is sometimes referred to as a "fixed" filter. The foreground filter, or the "fixed" filter, is the filter producing the output used for echo
cancellation and adaption of the foreground filter is performed by copying the frequently adapting background filter into the foreground filter when the background filter is considered to perform better in terms of echo cancellation. This is what happens in an echo path-change situation. In a double-talk situation on the other hand, the background filter will diverge. However, this will not affect the system output since the fixed foreground filter is providing the output.
The above-discussed conventional solution suffers from drawbacks which, in situations depending on the particular solution, make it difficult to determine which level of damping should be applied to the residual echo in communication devices. There is thus a need for an alternative solution for controlling the damping of residual echo in communication devices. Summary of the invention
It is an object of the present invention to provide means for improved residual echo damping control.
This object is achieved by a device comprising an adaptive foreground filter configured to calculate a first echo estimation signal based on a first input signal, and an adaptive background filter being more rapidly adapting than the foreground filter and configured to calculate a second echo estimation signal based on said first input signal. The device further comprises damping control means for controlling damping of an echo-cancelled output signal. The device is characterised in that the damping control means is configured to calculate a maximum echo estimation signal using both the first and the second echo estimation signals, and control the damping of the echo-cancelled output signal based on said maximum echo estimation signal and/or a signal derived from said maximum echo estimation signal.
The object is also achieved by a method for controlling damping of an echo- cancelled output signal, comprising the steps of:
- calculating, by means of a foreground filter, a first echo estimation signal based on a first input signal, and
- calculating, by means of an adaptive background filter being more rapidly adapting than said foreground filter, a second echo estimation signal based on said first input signal. The method is characterised by the steps of:
- calculating a maximum echo estimation signal using both said first and said second echo estimation signals, and
- controlling the damping of said echo-cancelled output signal based on said maximum echo estimation signal and/or a signal derived from said maximum echo estimation signal.
The object of the invention is also achieved by a computer program for the device described above. The computer program is characterised in that it comprises computer readable code which, when run by a processing unit in the device, causes the device to perform the above-described method.
The above-defined device and method may be used both for controlling damping of residual acoustic echo generated in a communication device, such as a conference telephone, when a microphone of the communication device picks up a loudspeaker signal simultaneously output by a loudspeaker thereof, and for controlling damping of residual line echo generated in a network, e.g. a telephone network, to which communication devices are connected.
In the former scenario, which scenario hereinafter will be referred to as the acoustic echo scenario, the first input signal is the loudspeaker signal received by the communication device and intended to be converted to sound by a loudspeaker thereof. The echo-cancelled output signal is an echo-cancelled microphone signal which is generally formed by subtracting an acoustic echo signal estimated based on the loudspeaker signal from the microphone signal that is picked up by a microphone of the communication device at the time the loudspeaker signal is output by the loudspeaker. In the latter scenario, which scenario hereinafter will be referred to as the line echo scenario, the first input signal is the line out signal transmitted from a first communication device to a network to which it is connected, normally for further transmission to a second communication device. The echo-cancelled output signal is an echo-cancelled line in signal which is generally formed by subtracting a line echo signal estimated based on said line out signal from a line in signal that is to be transmitted to the first communication device.
In the following, the invention and the advantages thereof will be described mainly in the context of an acoustic echo scenario. However, it should be understood that, unless stated otherwise, the same principles apply mutatis mutandis to the line echo scenario. By controlling the damping of the echo-cancelled microphone signal based on a signal that is calculated using the echo estimation signals from both the foreground and background filter, several advantages are achieved. Since the background filter is configured to be more rapidly adapting than the foreground filter, meaning that the filter coefficients of the background filter converge more rapidly to new values upon a change in a filter input signal, the echo estimation signal from the foreground filter is more reliable in certain situations, whereas the echo estimation signal from the background filter is more reliable in other situations. Typically, the background filter generates better echo estimates than the foreground filter in echo-path change situations whereas the foreground filter is more reliable than the background filter in double-talk situations. By controlling the damping based on a signal calculated from both of them, the advantages of each filter can be utilized in the damping control.
According to a preferred embodiment of the invention, the maximum echo estimation signal is calculated based on the power or energy spectral densities of the first and second echo estimation signals. This can be achieved by, e.g., rectifying the first and second echo estimation signals and, for a given frequency or frequency range, calculate an amplitude value for the maximum echo estimation signal based on the power or energy of the rectified echo estimation signal having the highest power or energy of the first and second rectified echo estimation signals at said frequency or within said frequency range.
According to one aspect of the invention, the maximum echo estimation signal is calculated to correspond to the echo estimation signal having the highest power spectral density taken over the entire frequency range of the foreground and background filter outputs. This results in a maximum echo estimation signal corresponding to the echo estimation signal having the highest total energy of the first and second echo estimations signals. According to another aspect, the energies of the first and second echo estimation signals, and the maximum echo estimation signal, are calculated on a sub-band basis. For example, the power spectral densities of the first and second echo estimation signal can be calculated on a sub-band-by- sub-band basis, and, for each sub-band, the maximum echo estimation signal of a particular sub-band can be calculated to correspond to the echo estimation signal having the highest power spectral density within that particular sub-band.
The speech-to-echo ratio of the microphone signal can be estimated for the full-band microphone signal based on a single full-band maximum echo estimation signal, or individually estimated for each of a plurality of sub-bands of the microphone signal based on a sub-band maximum echo estimation signal calculated for the
corresponding sub-band. Likewise, residual echo damping may be performed by applying a single damping signal to the echo-cancelled microphone signal or by applying a plurality of sub-band damping signals to the echo-cancelled microphone signal, which sub-band damping signals can be calculated from the individually estimated speech-to-echo-ratios for the corresponding sub-bands or from
combinations of neighbouring sub-bands. Thereby, damping can be applied individually to each sub-band.
By making the sub-bands narrower, the amplitude of the maximum echo estimation signal for a given frequency can be made to correspond to the maximum amplitude of the first and second rectified echo estimation signals for that particular frequency. Performing the processing in sub-bands takes advantage of the specific spectral characteristics of speech, e.g. that energy is concentrated to specific sub-bands, and can further improve the structure as compared to the full-band solution.
By calculating a maximum echo estimation signal based on the maximum power or energy carried by the first and second echo estimation signals according to any of the above-described principles, a maximum echo estimation signal representing a "worst case echo scenario" is generated. The maximum echo estimation signal avoids underestimating the true echo signal. At any given point in time, one of the foreground and background filters may be better adapted than the other for estimating the echo occurring at a certain frequency or within a certain frequency range, while the other filter is better adapted for estimating the echo occurring at another frequency or within another frequency range. By calculating the maximum echo estimation signal on a sub-band by sub- band basis, or even on a frequency-by- frequency basis, the maximum echo estimation signal will represent the worst case echo scenario at every given frequency or frequency range.
In a communication system it is important not to damp a signal carrying speech so as to not deteriorate usability of the system. However, it is normally considered as more acceptable, during a short period of time, to apply damping to a speech-carrying signal than not to apply damping to a signal carrying nothing but echo. Loss of speech or reduction in volume of speech during a time period of some milliseconds is normally considered less annoying by a user than the sound of echo during that same time period, which sound often is perceived by the user as an annoying sound. By calculating the maximum echo estimation signal as proposed above, the risk of not damping a microphone signal which carries nothing but echo is minimized since the damping is controlled based on a worst case echo scenario.
Normally, in an echo-path change situation caused by, e.g., movement of people or objects in the room, the background filter will rapidly adapt to the new acoustic environment and output a good estimation of the echo picked up by the microphone. For example, in an echo-path change situation where the true echo energy is increasing, the adapting background filter will adapt to the new echo path and produce a corresponding increased echo energy estimation, while the fixed foreground filter will continue to produce low echo energy estimate according to the previous echo path. In a double-talk situation on the other hand, the adapting background filter will diverge and cancel the near-end speech, which may result in a too low estimate of the echo energy, while the fixed foreground filter will produce a much more accurate estimate. Using the maximum energy of the echo estimation signals will thus sometimes produce an overestimation of the echo, but never an underestimation. Overestimating the echo will yield to more echo-damping than necessary. However, applying a more significant damping than needed to the echo- cancelled microphone signal is considered acceptable in this case, especially since the increase in damping is caused by an echo-path change situation and not a double- talk situation.
Furthermore, controlling the damping of the echo-cancelled microphone signal based on a signal calculated as the maximum of the first and second echo estimation signal as described above is advantageous in situations in which the rapidly adapting background filter has to be rebooted, which situations occur from time to time. Upon a reboot it will take some time for the filter coefficients of the background filter to reach the "true" values and in the meantime the background filter will generate too low estimates of the echo. However, the maximum echo estimation signal will, in this situation, correspond to the echo estimation signal output by the foreground filter and hence be maintained at an acceptable level.
Preferably, the damping control means is configured to control damping of the echo- cancelled output signal based on the maximum echo estimation signal and a second input signal. In the acoustic echo scenario the second input signal is the microphone signal and, in the line echo scenario, the second input signal is the line in signal. This may be achieved, e.g., by controlling the damping in dependence of a signal obtained by subtracting the energy of the maximum echo estimation signal from the energy of the second input signal, or in dependence of a signal obtained by taking the quotient of the energy of the second input signal and the energy of the maximum echo estimation signal. If the ratio between the energy of the second input signal and the energy of the maximum echo estimation signal is close to one, the second input signal is likely to carry nothing but echo (acoustic echo in the acoustic echo scenario and line echo in the line echo scenario) whereupon the control damping means can apply significant damping to the echo-cancelled output signal. If, on the other hand, the ratio is much larger than one, the second input signal is likely to carry speech whereupon damping of the echo-cancelled output signal is restricted. According to a refined embodiment of the invention, the damping control means is configured to calculate a minimum residual echo estimation by subtracting the energy of the maximum echo estimation signal from the energy of the second input signal, and to calculate a maximum residual echo estimation based on the first input signal and a coupling factor, and control the damping of the echo-cancelled output signal based on a comparison between the minimum residual echo estimation signal and the maximum residual echo estimation. In the acoustic echo scenario, the coupling factor is normally referred to as the acoustic coupling factor and is a measure of the dependency between the loudspeaker signal and the microphone signal. In the line echo scenario, the coupling factor is a measure of the dependency between the line out signal and the line in signal. If the ratio between the minimum and maximum residual echo estimation signal is high, the probability that the second input signal carries speech is very high. If, however, the ratio is low, the second input signal is likely to carry nothing but echo and the echo-cancelled output signal can be heavily damped.
The calculations described above may be performed on a sub-band basis, meaning that some or all calculations can be performed for one or several sub frequency bands of the processed signals individually. Damping of the echo-cancelled output signal, i.e. the residual damping, can then be controlled based on the result of the
calculations performed for one or several sub-bands. Damping may e.g. be applied to different sub-bands or groups of sub-bands individually by applying different damping signals for different sub-bands or groups of sub-bands.
More advantageous embodiments of the device, the method and the computer program according to the invention will be described in the detailed description of the invention following hereinafter.
Brief description of the drawings
A more complete appreciation of the invention disclosed herein will be obtained as the same becomes better understood by reference to the following detailed description when considered in conjunction with the accompanying figures briefly described below. Fig. 1 is a schematic block diagram illustrating a conference telephone;
Fig. 2 is a block diagram illustrating an acoustic echo cancellation procedure performed by a Digital Signal Processor (DSP) of the conference telephone shown in Fig. 1;
Fig. 3 is a block diagram illustrating a speech-to-echo estimation procedure performed by a speech-to-echo estimator of the DSP shown in Fig. 2; Figs. 4A-B illustrate an exemplary way of calculating a maximum echo estimation signal according to an embodiment of the invention;
Figs. 5A-B and 6A-B illustrate another exemplary way of calculating a maximum echo estimation signal according to an embodiment of the invention, and
Fig. 7 illustrates a conference telephone comprising a computer program according to the invention.
Detailed description of the invention
When describing the invention, reference will hereinafter be made to a hands-free conference telephone. However, it should be appreciated that a hands-free conference telephone is merely an example of a communication device for which the present invention is applicable. Other examples of communication devices that would benefit from the inventive principles are, e.g., integrated car telephones and conventional mobile telephones put in loudspeaker mode.
Fig. 1 illustrates a block diagram of a conference telephone 1. An analog line in signal carrying speech from the B-side, together with line-echo, is received from the telephone network at an input port of the conference telephone (not shown). The analog line in signal is converted to a discrete signal, l(k), by an analog-to-digital (A/D) converter 3. After this conversion, the signal l(k) is fed to a digital signal processor (DSP) 5 which processes the signal in attempt to reduce the line-echo while preserving the B-side speech, and generates an output signal in form of a loudspeaker signal, x(k). The loudspeaker signal x(k) is converted to an analog signal by a digital-to-analog (D/ A) converter 7, amplified by an amplifier 9, and fed to a loudspeaker 11. The loudspeaker 11 thus presents the processed B-side speech to the A-side. Near-end speech, S , and acoustic echo, a, from the A-side is picked up by a microphone 13, amplified by an amplifier 15, and discretized by an A/D converter 17 to form a microphone signal, y(k), which is input to the DSP 5. The DSP 5 processes the microphone signal y(k) by attempting to reduce the acoustic echo a while preserving the A-side speech S resulting in an output signal, o(k). The output signal o(k) is then converted to an analog signal by a D/A converter 19, which analog signal is sent to the telephone network.
Fig. 2 shows a block diagram illustrating the acoustic echo cancellation procedure performed by the DSP 5 in Fig. 1. The signal l(k) from the B-side is, after possible processing performed by a signal processor 21, forming the loudspeaker signal x(k) which is sent to the loudspeaker (11 in Fig. 1) and two adaptive echo cancelling filters 23, 25 of the DSP 5. The filter 23 is a foreground filter configured to output a first echo estimation signal, ά/k), based on the received loudspeaker signal x(k). The filter 25 is a background filter configured to output a second echo estimation signal, άb(k), based on the received loudspeaker signal x(k). The background filter 25 is more rapidly adapting than the foreground filter 23. The output, ά/k), from the foreground filter 23 and the output, άb(k), from the background filter are then subtracted from the microphone signal x(k) by a respective subtracter 27, 29 to form a foreground filter feedback signal, e/k), and a background filter feedback signal, βb(k). The background filter feedback signal βb(k) is used to adapt the background filter 25 and the foreground filter feedback signal e/k) may be used to adapt the foreground filter 23. However, the foreground filter 23 does not have to be implemented as a self-adjusting filter using the foreground filter feedback signal e/k) to adapt itself. Instead, according to another embodiment of the invention, the foreground filter 23 is a "fix" filter in the sense of not being configured to self-adapt. The DSP 5 may comprise filter updating means (not shown) which is configured to update the foreground filter 23 by copying the background filter 25 into the foreground filter 23 when a certain criteria is met. Typically, the criteria is chosen such that the background filter 25 is copied into the foreground filter 23 when the background filter 25 is considered to perform better in terms of echo cancellation than the foreground filter 23.
The DSP 5 further comprises a speech-to-echo-ratio estimator 31 which is configured to calculate a near-end side speech-to-echo-ratio estimate, r(k). To do so, the speech- to-echo-ratio estimator 31 uses the loudspeaker signal x(k), the microphone signal y(k), the first echo estimation signal ά/k) output by the foreground filter 23, and the second echo estimation signal άb(k) output by the background filter 25. The speech- to-echo-ratio estimation signal r(k) calculated by the speech-to-echo-ratio estimator 31 is then fed to a gain calculator 33 which is configured to produce an output gain signal, g(k), based on the speech-to-echo-ratio estimation signal r(k). The gain signal g(k) is in turn fed to a residual echo processing unit 35 which is also fed with the echo-cancelled microphone signal e/k) corresponding to the foreground filter feedback signal. The residual echo processing unit 35 is configured to determine the damping of the foreground filter feedback signal e/k) based on the received gain signal. The gain calculator 33 can be configured to calculate a gain according to any known principle for determining a gain for an echo-cancelled microphone signal. For example, a basic gain calculator 33 may be configured to calculate the gain as follows: g(k)=λ*g(k) + (l-λ)*gc(k) (1)
where
Figure imgf000016_0001
gc(k)=0 if r(k)≤T, where T is a set threshold value, and
Figure imgf000016_0002
λ=λ2 if gc(k)<g(k), where λi and λ2 are smoothing factors determining the rise and fall times of the gain smoothing. The gain, g(k), is then applied to the foreground filter feedback signal e/k) by the residual echo processing unit 35 so as to form the output signal o(k). In this exemplary embodiment, the echo-cancelled microphone signal to which damping is applied is thus the foreground filter feedback signal e/k) obtained by subtracting the first echo estimation signal ά/k) output by the foreground filter 23 from the microphone signal y(k). However, it should be appreciated that the invention is not limited to the use of any particular echo-cancelled microphone signal. For example, the invention is equally applicable if the analog signal that is sent to the telephone network (see Fig. 1) is based on the background filter feedback signal e/k) instead of the foreground filter feedback signal e/k), or an echo- cancelled microphone signal formed by subtracting a "combination" of the first and second echo estimation signal from the microphone signal. That is, the invention is not concerned with how echo cancellation is performed but with how to control the damping of whatever echo-cancelled signal that is used to form the signal output by the communication device 1.
Fig. 3 illustrates a more detailed block diagram of the processing performed by the speech-to-echo-ratio estimator 31 shown in Fig. 2.
In the steps Sl and S2, the first and second echo estimation signals, ά/k) and άb(k), are rectified and filtered to form a first rectified and filtered echo estimation signal άfjm(k) and a second rectified and filtered echo estimation signal άbjm(k), respectively. This may be achieved, e.g., by using moving average or exponential recursive weighting. In step S3, the maximum oϊάfjut(k) and άbjm(k) is calculated, yielding a maximum echo estimation signal άmax(k).
In step S4, the maximum echo estimation signal άmax(k) is filtered using e.g. a moving average or exponential recursive weighting, resulting in a filtered maximum estimation signal άmaxjm(k). In parallel to steps Sl to S4, the microphone signal y(k) is rectified and filtered in a step S5, using e.g. a moving average or exponential recursive weighting, forming a rectified and filtered microphone signal yfiit(k). In step S6, the filtered maximum estimation signal άmaxjm(k) is subtracted from the rectified and filtered microphone signal yfiu(k) to yield a minimum residual echo estimation signal emm(k). This signal, emm(k), can be seen as a smoothed average of the combined near-end speech and residual echo. In parallel to steps Sl to S6, the loudspeaker signal x(k) is rectified and filtered in a step S7, using e.g. a moving average or exponential recursive weighting, forming a rectified and filtered loudspeaker signal Xfiu(k). In a parallel step S 8, an acoustic coupling factor c(k) is estimated based on the loudspeaker signal x(k) and the microphone signal y(k). In a step S9, the rectified and filtered loudspeaker signal Xfiit(k) generated in step S7 is multiplied with the acoustic coupling factor c(k) estimated in step S8 in order to produce a signal ec(k) which is a "worst case" estimate of the acoustic echo. In a step SlO, a noise estimate n(k) is estimated based on the loudspeaker signal y(k). In a step Sl 1, a maximum residual echo estimation signal emax(k) is calculated as the maximum of the signal ec(k) produced in step S9 and the noise estimate n(k) estimated in step SlO. Finally, in a step S12, a near-end speech-to-echo-ratio signal r(k) is produced by dividing the minimum residual echo estimation signal emm(k) generated in step S 6 with the maximum residual echo estimation signal emax(k) calculated in step SI l. The near-end speech-to-echo-ratio signal r(k) is then transmitted to the gain calculator 33 shown in Fig. 2 and subsequently used for controlling the damping of the echo-cancelled microphone signal e/k).
Thus, according to the proposed method, the damping of the echo-cancelled microphone signal e/k) is based on a speech-to-echo-ratio signal r(k) which in turn is based on the maximum echo estimation signal emax(k). The steps Sl to S 12 may be performed in several different ways. As previously mentioned, the signals can be divided into different frequency bands and the processing can be performed in individual frequency bands, or the processed signals can be full-band signals or a set of sub-band signals, where a specific processed signal can be processed using one, several or all of the input signals.
Figs. 4A and 4B illustrate an exemplary way in which the maximum echo estimation signal άmax(k) can be calculated based on the first and second echo estimation signals, ά/k) and άb(k). The graphs in Fig. 4A illustrate examples of a first and a second echo estimation signal after being rectified and filtered in steps Sl and S2 in Fig. 3. The graphs illustrate the power of the rectified echo estimation signals άfjm(k) and άbjut(k) as functions of frequency for the relevant frequency range, and hence illustrate the power spectral densities of the respective signal. The relevant frequency range is typically the frequency range in which speech may occur. In this
embodiment, the speech-to-echo-ratio estimator 31 (see Fig. 2) is configured to calculate the integral of the respective rectified echo estimation signal άfjut(k) and άbjm(k) for the entire relevant frequency range, i.e. the area in the xy-plane bounded by the respective signal. The integral of the rectified first echo estimation signal άfjiit(k) originating from the foreground filter 23 is denoted Ap and the integral of the rectified second echo estimation signal άbjm(k) originating from the background filter 25 is denoted AB. The integrals of the first and second rectified echo estimation signals indicate how much energy is carried by the respective signal. In this exemplary case, the integral AB of the rectified second echo estimation signal άbjm(k) is larger than the integral Ap of the rectified first echo estimation signal άfjut(k) which indicates that the second echo estimation signal άb(k) output by the
background filter 25 carries more energy than the first echo estimation signal ά/k) output by the foreground filter 23. The speech-to-echo-ratio estimator 31 is configured to compare the integrals Ap and AB, i.e. the energies of the first and second echo estimation signal ά/k) and άb(k), and to set the maximum echo estimation signal άmax(k) equal to the rectified echo estimation signal άfjut(k) or άbjm(k) having the largest integral. Fig. 4B illustrates the maximum echo estimation signal άmax(k) calculated from the rectified first and second echo estimation signals άfjut(k) or άbjut(k) illustrated in Fig. 4A based on the above described principles. In this case, the maximum echo estimation signal άmax(k) thus corresponds to the rectified second echo estimation signal άbjut(k). Figs. 5A and 5B illustrates another exemplary way in which the maximum echo estimation signal άmax(k) can be calculated based on the first and second echo estimation signals, άj(k) and άb(k). The graphs in Fig. 5 A represent the rectified first and second echo estimation signals άfjut(k) and άbjm(k) and Fig. 5B illustrates the maximum echo estimation signal άmax(k) calculated from the rectified first and second echo estimation signals άfjut(k) or άbjm(k) illustrated in Fig. 5 A when calculated on a sub-band basis. In this embodiment the speech-to-echo-ratio estimator 31 is configured to calculate the integral for each of the first and second rectified echo estimation signals within a certain frequency range or sub-band, which frequency range or sub-band is denoted FR in Fig. 5A. The maximum echo estimation signal άmax(k) is then calculated on a sub-band basis by, for each sub-band, calculate the maximum echo estimation signal άmax(k) such that it corresponds to the rectified echo estimation signal άfjut(k) or άbjm(k) having the largest integral within that sub-band. For example, in the sub-band between the frequencies/H and fn+i, in which the integral Api of the rectified first echo estimation signal άfjm(k) is larger than the integral ABI of the rectified second echo estimation signal άbjiit(k), the maximum echo estimation signal άmax(k) is set to correspond to the rectified first echo estimation signal άfjut(k). In all other sub-bands, given this exemplary band width, the integral of the second echo estimation signal άbjm(k) is larger than the integral of the rectified first echo estimation signal άfjnt(k) and, therefore, the maximum echo estimation signal άmax(k) will, for these frequency ranges,
corresponds to the second echo estimation signal άbjiitβ). It should be noted that the only difference between this way of calculating the maximum echo estimation signal άmax(k) and the way of calculating the maximum echo estimation signal άmax(k) described with reference to Figs. 4 A and 4B is that the frequency range FR in the latter case can be said to correspond to the entire relevant frequency range. Thus,
Figs. 4 A and 4B hence illustrate an embodiment of the invention according to which damping is controlled on a full-band basis whereas Figs. 5A and 5B illustrate an embodiment according to which the damping is controlled on a sub-band basis.
Figs. 6A and 6B illustrate what will happen if the band width, i.e. the width of the sub-bands for which the maximum echo estimation signal άmax(k) is calculated as described above, approaches zero. If the speech-to-echo-ratio estimator 31 is configured to calculate the integrals for very narrow sub-bands, the power of the maximum echo estimation signal άmax(k) will, for substantially each given frequency, correspond to the power of the rectified echo estimation signal άfjm(k) or άbjm(k) having the highest power at that frequency. In this case, the maximum echo estimation signal άmax(k) will be truly indicative of the maximum energy content of the first and second echo estimation signals, άj(k) and άb(k).
It should be understood that the above described ways of forming the maximum echo estimation signal άmax(k) by maximizing the rectified echo estimation signals άfjut(k) and άbjm(k) are only exemplary. The skilled person will appreciate that there are other ways in which the speech-to-echo-ratio estimator 31 can be configured to achieve a similar result. For example, the maximum echo estimation signal άmax(k) may be calculated by comparing the power of the first and second rectified echo estimation signals άfjm(k) and άbjm(k) at a plurality of discrete frequencies, set the power of the maximum echo estimation signal άmax(k) at a given frequency to the power of the rectified echo estimation signal άfjut(k) or άbjm(k) having the highest power at that frequency, and interpolate between the so determined power/frequency values of the maximum echo estimation signal άmax(k).
The skilled person will also appreciate that the reasoning given above is likewise applicable for the processing of steps Sl, S2 and S4 to S 12.
The steps of calculating the maximum echo estimation signal άmax(k) and for controlling the damping of the echo-cancelled microphone signal e/k) based on the maximum echo estimation signal is preferably performed by means of a computer program. Fig. 7 illustrates a conference telephone 1 comprising a loudspeaker 11 and a microphone 13. The conference telephone further comprises a processing unit 37 which may or may not be the DSP 5 in Fig. 1, and a computer readable medium 39 for storing digital information, such as a hard disk or another non- volatile memory. The computer readable medium 39 is seen to store a computer program 41 comprising computer readable code which, when executed by the processing unit 37, causes the DSP 5 to control the damping of the echo-cancelled microphone signal e/k) according to principles described herein.
It should be appreciated that the functionality described above for controlling damping of acoustic residual echo could be incorporated in a separate damping device residing in the telephone network instead of in the conference telephone itself. In this case, the acoustic echo cancellation procedure illustrated in Fig. 2 is carried out by the network damping device, which device is configured to forward the loudspeaker signal x(k) to the communication device for which it is intended, and receive the microphone signal y(k) therefrom.
Also, as mentioned in the introductory portion, it should be appreciated that the invention could be used for controlling damping of residual line echoes, i.e. echoes generated in the telephone network. The description of such an embodiment is analogous with the description above describing an acoustic echo scenario. The line echo scenario can most easily be appreciated by in figure 2 and 3 replacing the loudspeaker signal x(k) with the line out signal o(k), the microphone signal y(k) with the line in signal l(k), the line out signal o(k) with the loudspeaker signal x(k) and the line in signal l(k) with the microphone signal y(k).

Claims

Claims
1. A device (1) comprising
- an adaptive foreground filter (23) configured to calculate a first echo estimation signal [af(k)] based on a first input signal [x(k); o(k)];
- an adaptive background filter (25) being more rapidly adapting than said foreground filter (23) and configured to calculate a second echo estimation signal [ab(k)] based on said first input signal [x(k); o(k)], and
- damping control means (31, 33, 35) for controlling damping of an echo-cancelled output signal [ef(k)],
characterised in that said damping control means (31) is configured to calculate a maximum echo estimation [amax(k)] signal using both said first [af(k)] and said second [at,(k)] echo estimation signals, calculate a minimum residual echo estimation signal [emin(k)] by subtracting said maximum echo estimation signal [amax(k)] from a second input signal [y(k); l(k)], calculate a maximum residual echo estimation signal [emaχ(k)] based on said first input signal [x(k); o(k)] and a coupling factor [c(k)], and to control the damping of the echo-cancelled output signal [ef(k)] based on a comparison between said minimum residual echo estimation signal [emin(k)] and said maximum residual echo estimation signal [emax(k)].
2. Device (1) according to claim 1 wherein said damping control means (31) is configured to calculate said maximum echo estimation signal [amax(k)] based on the power or energy spectral densities of said first [af(k)] and second [at,(k)] echo estimation signals.
3. Device (1) according to claim 2 wherein said damping control means (31) is configured to calculate said maximum echo estimation signal [amax(k)] by, for a given frequency or frequency range (FR), calculate an amplitude for the maximum echo estimation signal [amax(k)] based on the power or energy of the echo estimation signal having the highest power or energy of said first [af(k)] and second [at,(k)] echo estimation signals at said frequency or within said frequency range (FR).
4. Device (1) according to any of the preceding claims wherein said damping control means (31) is configured to calculate said maximum residual echo estimation
[emax(k)] as a combination of:
- a residual echo estimation signal [ec(k)] which in turn is calculated based on said first input signal [x(k); o(k)] and said coupling factor [c(k)], and
- a noise estimation signal [n(k)] which in turn is calculated based on said second input signal [y(k); l(k)].
5. Device (1) according to any of the preceding claims, said device (1) being configured to perform all or some of the calculations for given sub frequency bands of the processed signals, such that the residual damping [g(k)] may be performed in sub-bands or in full band based on some or all of the frequency bands used.
6. Device (1) according to any of the preceding claims, further comprising filter updating means configured to update the foreground filter (23) by copying the background filter (25) into the foreground filter (23) when a certain criteria is met.
7. Device (1) according to any of the preceding claims, wherein said device is a communication device, such as a conference telephone or an integrated car telephone, and comprises a loudspeaker (11) for converting the first input signal
[x(k); o(k)] to sound when said first input signal is a loudspeaker signal [x(k)], and a microphone (13) for converting sound to a second input signal [y(k); l(k)] in form of a microphone signal [y(k)].
8. A method for controlling damping of an echo-cancelled output signal [ef(k)], comprising the steps of:
- calculating, by means of a foreground filter (23), a first echo estimation signal [af(k)] based on a first input signal [x(k); o(k)];
- calculating, by means of an adaptive background filter (25) being more rapidly adapting than said foreground filter (23), a second echo estimation signal [at,(k)] based on said first input signal [x(k); o(k)],
characterised by the steps of: - calculating (S3) a maximum echo estimation [amax(k)] signal using both said first [af(k)] and said second [at,(k)] echo estimation signals, a minimum residual echo estimation signal [emin(k)] by subtracting said maximum echo estimation signal [amax(k)] from a second input signal [y(k); l(k)], a maximum residual echo estimation signal [emax(k)] based on said first input signal [x(k); o(k)] and a coupling factor [c(k)], and
- controlling the damping of said echo-cancelled output signal [ef(k)] based on a comparison between said minimum residual echo estimation signal [emin(k)] and said maximum residual echo estimation signal [emax(k)].
9. Method according to claim 8 wherein the step of calculating the maximum echo estimation [amax(k)] signal is performed by calculating the maximum echo estimation signal [amax(k)] based on the power or energy spectral densities of said first [af(k)] and second [at,(k)] echo estimation signals.
10. Method according to claim 9 wherein the step of calculating the maximum echo estimation [amax(k)] signal is performed by, for a given frequency or frequency range (FR), calculating an amplitude for the maximum echo estimation signal [amax(k)] based on the power or energy of the echo estimation signal having the highest power or energy of said first [af(k)] and second [at,(k)] echo estimation signals at said frequency or within said frequency range (FR).
11. Method according to any of the claims 8 to 10 wherein the maximum residual echo estimation [emax(k)] is calculated as a combination of :
- a residual echo estimation signal [ec(k)] which in turn is calculated based on said first input signal [x(k); o(k)] and said coupling factor [c(k)], and
- a noise estimation signal [n(k)] which in turn is calculated based on said second input signal [y(k); l(k)].
12. Method according to any of the claims 8 to 11 wherein all or some of the calculations are performed for given sub frequency bands of the processed signals, such that the residual damping [g(k)] may be performed in sub-bands or in full band based on some or all of the frequency bands used.
13. A computer program (41) for a device (1) according to any of the claims 1 to 7, characterised in that the computer program (41) comprises computer readable code which when run by a processing unit (37) in the device (1) causes the device (1) to perform the method according to any of the claims 8 to 12.
14. A computer program product comprising a computer readable medium (39) and computer readable code stored on the computer readable medium (39), characterised in that the computer readable code is the computer program (41) according to claim 13.
PCT/SE2010/050676 2009-07-20 2010-06-17 Device and method for controlling damping of residual echo WO2011010960A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/384,554 US8693678B2 (en) 2009-07-20 2010-06-17 Device and method for controlling damping of residual echo

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SE0901012-5 2009-07-20
SE0901012A SE533956C2 (en) 2009-07-20 2009-07-20 Device and method for controlling residual cushioning

Publications (1)

Publication Number Publication Date
WO2011010960A1 true WO2011010960A1 (en) 2011-01-27

Family

ID=43499276

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/SE2010/050676 WO2011010960A1 (en) 2009-07-20 2010-06-17 Device and method for controlling damping of residual echo

Country Status (3)

Country Link
US (1) US8693678B2 (en)
SE (1) SE533956C2 (en)
WO (1) WO2011010960A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014150211A1 (en) * 2013-03-15 2014-09-25 Dolby Laboratories Licensing Corporation Acoustic echo mitigation apparatus and method, audio processing apparatus and voice communication terminal
WO2021110175A1 (en) * 2019-12-06 2021-06-10 展讯通信(上海)有限公司 Echo cancellation method and device

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5156043B2 (en) * 2010-03-26 2013-03-06 株式会社東芝 Voice discrimination device
US9805734B2 (en) * 2010-10-08 2017-10-31 Nec Corporation Signal processing device, signal processing method and signal processing program for noise cancellation
WO2013115762A1 (en) 2012-01-27 2013-08-08 Empire Technology Development, Llc Accelerating transport through graphene membranes
US9473865B2 (en) * 2012-03-01 2016-10-18 Conexant Systems, Inc. Integrated motion detection using changes in acoustic echo path
US9530428B2 (en) * 2013-05-14 2016-12-27 Mitsubishi Electric Corporation Echo cancellation device
US9313012B2 (en) 2014-02-21 2016-04-12 Qualcomm Incorporated Apparatus and methods for full duplex communication
EP4224833A3 (en) 2018-05-09 2023-10-11 Nureva Inc. Method and apparatus utilizing residual echo estimate information to derive secondary echo reduction parameters
CN114026635A (en) * 2019-07-02 2022-02-08 哈曼贝克自动系统股份有限公司 Automatic noise control
CN114830232A (en) * 2019-12-26 2022-07-29 松下电器(美国)知识产权公司 Sound collecting device, sound collecting method, and sound collecting program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002023755A2 (en) * 2000-09-15 2002-03-21 Intel Corporation Residual echo estimation for echo cancellation
US6532289B1 (en) * 1997-11-28 2003-03-11 International Business Machines Corporation Method and device for echo suppression
US20030206624A1 (en) * 2002-05-03 2003-11-06 Acoustic Technologies, Inc. Full duplex echo cancelling circuit
WO2005002184A2 (en) * 2003-06-27 2005-01-06 Nokia Corporation A method for enhancing the acoustic echo cancellation system using residual echo filter
WO2006040734A1 (en) * 2004-10-13 2006-04-20 Koninklijke Philips Electronics N.V. Echo cancellation
US20070274535A1 (en) * 2006-05-04 2007-11-29 Sony Computer Entertainment Inc. Echo and noise cancellation

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5663955A (en) * 1995-08-25 1997-09-02 Lucent Technologies Inc. Echo canceller system with shared coefficient memory
FI104524B (en) * 1997-04-18 2000-02-15 Nokia Mobile Phones Ltd An echo cancellation system and method and a mobile station
JP3608525B2 (en) * 2001-05-09 2005-01-12 ヤマハ株式会社 Impulse response setting method for 2-channel echo cancellation filter, 2-channel echo canceller, and bidirectional 2-channel audio transmission apparatus
US8139760B2 (en) * 2007-02-27 2012-03-20 Freescale Semiconductor, Inc. Estimating delay of an echo path in a communication system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6532289B1 (en) * 1997-11-28 2003-03-11 International Business Machines Corporation Method and device for echo suppression
WO2002023755A2 (en) * 2000-09-15 2002-03-21 Intel Corporation Residual echo estimation for echo cancellation
US20030206624A1 (en) * 2002-05-03 2003-11-06 Acoustic Technologies, Inc. Full duplex echo cancelling circuit
WO2005002184A2 (en) * 2003-06-27 2005-01-06 Nokia Corporation A method for enhancing the acoustic echo cancellation system using residual echo filter
WO2006040734A1 (en) * 2004-10-13 2006-04-20 Koninklijke Philips Electronics N.V. Echo cancellation
US20070274535A1 (en) * 2006-05-04 2007-11-29 Sony Computer Entertainment Inc. Echo and noise cancellation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014150211A1 (en) * 2013-03-15 2014-09-25 Dolby Laboratories Licensing Corporation Acoustic echo mitigation apparatus and method, audio processing apparatus and voice communication terminal
US9947336B2 (en) 2013-03-15 2018-04-17 Dolby Laboratories Licensing Corporation Acoustic echo mitigation apparatus and method, audio processing apparatus and voice communication terminal
WO2021110175A1 (en) * 2019-12-06 2021-06-10 展讯通信(上海)有限公司 Echo cancellation method and device

Also Published As

Publication number Publication date
SE533956C2 (en) 2011-03-15
SE0901012A1 (en) 2011-01-21
US8693678B2 (en) 2014-04-08
US20120183133A1 (en) 2012-07-19

Similar Documents

Publication Publication Date Title
US8693678B2 (en) Device and method for controlling damping of residual echo
CN110149453B (en) Gain control system and method for dynamically tuning an echo canceller
CN110838300B (en) Echo cancellation processing method and processing system
US9502048B2 (en) Adaptively reducing noise to limit speech distortion
KR100716377B1 (en) Digital adaptive filter and acoustic echo canceller using the same
CN110225214B (en) Method, attenuation unit, system and medium for attenuating a signal
US6434110B1 (en) Full-duplex speakerphone circuit including a double-talk detector
US5598468A (en) Method and apparatus for echo removal in a communication system
US6212273B1 (en) Full-duplex speakerphone circuit including a control interface
US7203308B2 (en) Echo canceller ensuring further reduction in residual echo
US6282176B1 (en) Full-duplex speakerphone circuit including a supplementary echo suppressor
CN109716743B (en) Full duplex voice communication system and method
US9699554B1 (en) Adaptive signal equalization
CN109273019B (en) Method for double-talk detection for echo suppression and echo suppression
AU1907799A (en) Methods and apparatus for controlling echo suppression in communications systems
JP5086769B2 (en) Loudspeaker
EP2700161A2 (en) Processing audio signals
US8964967B2 (en) Subband domain echo masking for improved duplexity of spectral domain echo suppressors
US8064966B2 (en) Method of detecting a double talk situation for a “hands-free” telephone device
KR19980086461A (en) Hand-free phone
US8369511B2 (en) Robust method of echo suppressor
JP4403776B2 (en) Echo canceller
US7711107B1 (en) Perceptual masking of residual echo
US7065207B2 (en) Controlling attenuation during echo suppression
Puder et al. Implementation of a hands-free car phone with echo cancellation and noise-dependent loss control

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10802519

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 13384554

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 10802519

Country of ref document: EP

Kind code of ref document: A1