[Speex-dev] Echo Can Tail Length
dbkr at mxtelecom.com
Mon Apr 20 09:08:52 PDT 2009
On 20 Apr 2009, at 12:27, Jean-Marc Valin wrote:
> David Baker a écrit :
>> I've been trying to understand the documentation on the Speex echo
>> canceller, and unless I'm confused, I think there's a mistake
>> somewhere. The documentation on http://speex.org/docs/manual/speex-manual/node7.html#SECTION00740000000000000000
>> says, " The recommended tail length is approximately the third of
>> the room reverberation time". However, the Octave script
>> echo_diagnostic.m has the code:
>> if (b > .3*tail_length)
>> printf ('This is too much delay, try delaying the far-end
>> signal a bit\n');
>> This seems to mandate that the tail length should be at least 3 (or
>> 3.33...) times the delay, which conflicts with what the manual says.
> There's no conflict. The b above has nothing to do with the
> reverberation time. It's the buffering delay of the audio
> playback/capture and if it's more than 30% of the tail length, it
> you're wasting that much of your tail. If it's larger than the tail
> length, then it means that no cancellation is possible at all.
>> Is this a mistake, or is my understanding incorrect (I'm assuming
>> far-end delay and room reverberation time are the same thing). I'd
>> really appreciate if someone could clear this up, as I've not had
>> luck getting the echo canceller to work.
>> Thanks in advance,
Ah, that makes sense. Many thanks for the prompt response!
More information about the Speex-dev