[Speex-dev] AEC Troubles

Greger Burman greger at mobile-robotics.com
Fri Aug 21 04:46:05 PDT 2009

I've been debugging and troubleshooting echo cancellation myself recently
and I have made some observations.
First of all playback and recording must be synchronized. There cannot be
any clock drift between the microphone signal and the speaker (echo) signal.
This has been said many times in the mailing list, but I will repeat it
anyway. You have to first make sure that this is not your problem. I was
recording and playing full duplex on the same audio card but still had clock
drift between the signals of about 3 ms per second when using windows
multimedia interface.
You can compile speex with the preprocessor flag DUMP_ECHO_CANCEL_DATA to
get audio dump files from the echo cancellor. There is a matlab/octave
script you can use on the dumps, but you can also import the dumps into an
audio editor (e.g. Audacity) to analyse.
I have noticed that the delay between echo signal and the microphone signal
also has an effect on how well Speex AEC performs. I did some tests with the
testecho program. With the signals perfectly aligned echo cancellation was
near perfect. When I introduced a small delay of <20 ms between speaker
signal and microphone signal, I got no noticeable echo cancellation at all.
I don't know if this is the expected behavior. My sample was quite short and
perhaps the AEC needs time to converge when there is a delay between the
signals. The question is how long time? Jean-Marc can probably shed some
light on that.
Something I am wondering about is: Should the delay between speaker signal
and mic signal be taken into account when choosing the tail length? Or is
the tail length independent of the delay?
2009/8/21 mrywhh <mrywhh at 163.com>

> Hello!
> I am a new user of speex.I am currently working on speex frames and I have
> some questions.
> I am using narrowband and long tail length, and it works very well with
> speex test DEMO. But it is very difficult to have speaker input in perfect
> sync with mic input. Speex does not work at all.
> Any suggestion?
> Regards!
> ------------------------------
> 没有广告的终身免费邮箱,www.yeah.net <http://www.yeah.net/?from=footer>
> _______________________________________________
> Speex-dev mailing list
> Speex-dev at xiph.org
> http://lists.xiph.org/mailman/listinfo/speex-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20090821/08958510/attachment.htm 

More information about the Speex-dev mailing list