[Speex-dev] Echo cancellation diagnostic code
Jean-Marc Valin
jean-marc.valin at usherbrooke.ca
Fri Mar 23 03:17:44 PDT 2007
All I can say for now is that:
1) My diagnostic tool does funny things that need to be fixed
2) It was probably also getting confused by the clicks at the end of the
files
3) There seems to be odd things with your recordings, though I can't say
what that would be. Are you changing something during the recording by
any chance? Note that if a person close to the mic of speaker moves,
that changes the acoustic path
Jean-Marc
William Zhang a écrit :
> Definitely! It tells me that my delay is fine but drifting is -15. I
> use the same onboard sound
> to record the near end and far end voice. So I can assume it should be
> fine?
> But I don't see the any different between input and output the
> echo_canceller function for this recording.
> Maybe there is some nonlinearity issue there? The link of this
> file(Capture1.zip) is in
> http://lists.xiph.org/pipermail/speex-dev/2007-March/005390.html
> There is another record set in the file(Capture2.zip) which I got 141
> sample delay and drift of 14.
> I did not record this file so I don't know if it is from the same
> sound card. The PC simulation
> only gets about 10 to 15db ERLE. It could be also a linearity issue.
>
> On 3/22/07, Jean-Marc Valin <jean-marc.valin at usherbrooke.ca> wrote:
>> > Thanks for the great work. It indeed helps to diagnose of echo
>> > canceller and narrow down the
>> > problem area.
>>
>> Good, so it worked for you?
>>
>> > I am not an expert in the signaling processing but I
>> > wonder if it is possible
>> > to add the linearity check in the echo_diagnostic function?
>>
>> Theoretically, yes. In practice, I'm not sure how accurate it would be.
>> Do you have any samples you know have non-linear distortion?
>>
>> Jean-Marc
>>
>> > Thanks,
>> > William
>> >
>> > On 3/16/07, Jean-Marc Valin <jean-marc.valin at usherbrooke.ca> wrote:
>> >> 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
>> >> _______________________________________________
>> >> Speex-dev mailing list
>> >> Speex-dev at xiph.org
>> >> http://lists.xiph.org/mailman/listinfo/speex-dev
>> >>
>> >
>> >
>>
>
>
More information about the Speex-dev
mailing list