Echo Cancellation Overview

Source: Internet
Author: User

In a general VoIP software or videoconferencing system, suppose we have only A and B two people on the phone,
First, the sound of a is passed to the b,b and then the horn is released.
The mic of B then collects the sound from the speaker and passes it back to a,
If the delay in the transmission is large enough, a will hear what he has just said, and that is the echo.


The function of the Echo Canceller is to process the sound collected by B at the B end, and to remove the sound from the sound contained in the
So a will not hear what he said.


The two sound signals passed to the Echo Canceller must be synchronized very well,
That is, in the B-side received a said words, to the sound data to the Echo Canceller for reference, and then passed to the sound card, sound card playback,
Here is a delay, then B again collected, and then passed to the Echo Canceller, compared with that reference data, from the collected data to the frequency and reference data of the same part of the elimination.


If the two signal passed to the elimination is not well synchronized, that is, two signals can not find the same frequency portion, there is no way to eliminate.


In the general VoIP software, receiving the other's voice and uploading to the sound card is played in a thread,
And the local sound is collected and sent to the other side and in another thread,
The acoustic echo Canceller also needs to play the data in the thread as a reference while the echo cancellation of the collected sound.
It is very difficult to synchronize the data in these two threads, because the adaptive filter in the acoustic echo Canceller will diverge in a slightly different step,
Not only eliminates the echo, but also destroys the original sound collected, making the damaged sound difficult to distinguish.


Acoustic echo is mainly divided into the following two kinds:
1. Direct echo: The sound produced by the speaker goes directly into the microphone without any reflection
2, indirect echo: The sound from the speaker after several reflections, and then into the mic
For the second kind of echo, it is more difficult to deal with the characteristics of multipath and time-varying.


There are two ways of echo cancellation:
First: Through hardware implementations,
There are many mobile phones are doing this, there are professional chips, but only support 8khz,
If high quality sound is required, the basic implementation is not.
The second kind: through the software realization,
Qq,msn,skype a lot of software with call functions, now has the function of echo cancellation (need to be relatively high version, the lower version may not),
But the implementation code is not, the open source Echo elimination code only Speex and WEBRTC.


There are two common open source AEC: Speex and WEBRTC


WEBRTC is more powerful than Speex, for the following reasons:
1,WEBRTC algorithm module with echo time delay estimation
2,WEBRTC with Neteq module
3,WEBRTC core is gips, cause you know.

Echo Cancellation Overview

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.