[Speex-dev] Echo cancellation diagnostic code

Jean-Marc Valin jean-marc.valin at usherbrooke.ca
Fri Mar 16 07:31:54 PDT 2007


Hi everyone,

I think this should be interesting to all of those with echo
cancellation problems. I finally check in some code to make these
problems easier to debug. You'll need to have svn version for this.

First, you need to manually define DUMP_ECHO_CANCEL_DATA in the
compilation (sorry configure switch for now). With that, the AEC will
automatically save the near-end, far-end and output signals to files
(aec_rec.sw aec_play.sw and aec_out.sw). These are exactly what the AEC
receives and outputs.

>From there, you'll need to start Octave and type:

echo_diagnostic('aec_rec.sw', 'aec_play.sw', 'aec_diagnostic.sw', 1024);

(the value of 1024 is the filter length and can be changed)

There will be some (possibly) useful messages printed and echo cancelled
audio will be saved to aec_diagnostic.sw . If even that output is bad
(almost no cancellation) then you probably have a recording problem.

Cheers,

	Jean-Marc


More information about the Speex-dev mailing list