[speex-dev] More Speex (pre-processing) Options

Tom Harper harper at archila.com
Wed Nov 26 10:17:39 PST 2003


Thanks, that gave me some ideas.  I have tried calling speex_echo_cancel
and speex_preprocess separately and jointly, with a number of different 
filter lengths,
and using the cancelled and non-cancelled data as input to the pre-filter, 
and without the residual echo, etc. but there doesn't appear to be valid 
data in the
echo or the cancelled frame any way I try it.

Back to the drawing board (and eagerly awaiting the next release),


At 05:28 AM 11/26/2003, Tom Grandgent wrote:
>I don't think the echo canceller works yet.  The best I could
>get it to do is trash my audio.  If it does work, some sample
>code demonstrating its use would be really appreciated...
>Here is what Jean-Marc has said about it in the past:
> > What should I use for a filter length for speex_echo_state_init()?
>"Well, it depends on your problem. The filter length represents the
>maximum delay of the echo. For acoustic echo, that value is generally
>higher than for line echo. You'll need to experiment, but a value around
>500 (for 8 kHz) might be a good start."
> > [question about params for echo canceller function]
>"Actually, ref is the incoming frame (with echo), echo is the outgoing
>frame (that has only the echo) and out is the echo-cancelled frame. As
>for Yout, it is an estimation of the residual echo that can be sent to
>the denoiser so that residual echo can be removed as well. Note that
>this last feature is still experimental."
>Tom Harper (harper at archila.com) wrote:
> >
> > Hi,
> >
> > So I have had a chance to delve deeper into  the new pre-processing
> > code-  I was also able to get VAD, AGC, Denoising, etc working inside 
> of the
> > current release candidate (1.0.3).   For some reason, the 1.1.2
> > release didn't properly encode/decode in our system (on windows)
> > and I haven't had time to determine why.  In any case, all of the features
> > jointly work very well- great job!
> >
> > I realize the echo cancellation element may still be in development, 
> but I am
> > having trouble getting that part of the preprocessor to work.  When
> > I don't pass NULL into the speex_preprocess for the echo parameter, things
> > seem to go haywire- some memory appears to be getting trampled somewhere
> > (this is probably my fault).  Maybe I am misunderstanding the purpose 
> of this
> > parameter?  Except for the first few packets, the preprocessor
> > appears to be removing all audio- The algorithm I am using passes in a 
> recently
> > decoded frame...  Any ideas?  Do I need to set some settings in somewhere
> > in order for this to work properly?
> >
> > Thanks,
> > Tom
>--- >8 ----
>List archives:  http://www.xiph.org/archives/
>Ogg project homepage: http://www.xiph.org/ogg/
>To unsubscribe from this list, send a message to 'speex-dev-request at xiph.org'
>containing only the word 'unsubscribe' in the body.  No subject is needed.
>Unsubscribe messages sent to the list will be ignored/filtered.

<p>--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'speex-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.

More information about the Speex-dev mailing list