Echo Cancellation Demystified
Frequency-domain echo cancellers are very effective in canceling acoustic echoes. Unlike time-domain AECs, they need fewer DSP MIPs, perform better in double-talk situations, work well in presence of noise, can have embedded noise suppression almost for free and perform better with nonlinearities in the echo path. This is why frequency-domain echo cancellers should be preferred over time-domain ones.
Failing to Achieve Echo Cancellation
Unfortunately, it is not uncommon for engineers, integrating echo cancellers in their devices, to make mistakes, which cause LECs and AECs to cease work. In this chapter we will describe the most typical design and integration mistakes that lead to failures in achieving echo cancellation. That is, it can be not just a question of achieving good echo cancellation, but instead it can be a question of achieving the echo cancellation at all!
It is very important to understand and meet the requirements of the echo cancellers or they will just not work. To the engineers developing applications with echo cancellers it means that they will need to redesign their product and change the integration of the echo canceller. Speaking in business terms, this will incur higher product costs and longer time to market. And all of this can and should be avoided at best!
Nonlinear Distortions in Hardware
The first thing, which can lead to echo canceller performing very poorly, is the nonlinear distortions in the echo path of the hardware of your device. The echo cancellers perform poorly or don't work at all in systems with the net nonlinear distortions in the echo path higher than -16 dB (typical value). The smaller are distortions, the better.
The nonlinear distortions exist everywhere. Certain nonlinearity is inherent in the hybrids, microphones, speakers, amplifiers and DAC/ADCs (known as codecs). It is not recommended to make the design with parts, which are highly nonlinear such that the net nonlinear distortions of the device in the echo path are prohibitively high. If there's some preliminary design available, already in a form of a working device, it is a good practice to measure the level of the nonlinear distortions in it. The sooner such measurements are done, the better.
Usually, in the systems, which are not strictly digital (e.g. those involving use of analog circuitry and transmitting analog signals anywhere inside), there's an ADC/DAC available so the echo canceller implemented on a DSP can work with samples. The path between the DAC output and the ADC input has the analog circuitry, which is subject to nonlinearities. If we're talking about using an AEC in some hands-free system, then the analog circuitry in question will include the following: microphone, microphone amplifier, the ADC/DAC itself, the loudspeaker amplifier and the loudspeaker. This entire echo path must be tested. An easy test for this would be feeding a test signal as samples to the DAC so the speaker would produce it and recording samples from the ADC, e.g. recording what the microphone is picking. The recording should then be analyzed.
Kane Computing Ltd
7 Theatre Court, London Road, Northwich, Cheshire, CW9 5HB, UK
Tel: +44(0)1606 351006 - Fax: +44(0)1606 351007/8
Email: email@example.com - Web: www.kanecomputing.com
If you are familiar with RSS feeds, you can also sign up for our free blog feed. Our RSS feed is updated in real-time while our newsletter is updated daily.