[Speex-dev] NLMS filter length for AEC

Jean-Marc Valin Jean-Marc.Valin at USherbrooke.ca
Tue Feb 21 00:58:07 PST 2006

>        I have a query. I developed NLMS acoustic echo cancellation
> algorithm for real time voip application and using general purpose
> processor. Used more filter length (4096/2048) for NLMS and faced CPU
> consumption.


> With less filter length unable to estimate the exact echo signal and
> the quality of the speech also getting degraded.

It probably means you have too much delay between the mic and speaker

> Could any one please suggest me the filter length which can give me
> the better voice
> quality with echo cancelled? 

Normally, about 100-200 ms tail length should be enough.

> or any other algorithm for AEC better than NLMS but with
> less complexity?

Speex includes an AEC based on the MDF algorithm with an adaptive
learning rate. Should be much better (and less CPU intensive) than NLMS.


More information about the Speex-dev mailing list