[Speex-dev] noise cancellation

Tom Grandgent tgrand at canvaslink.com
Fri Apr 29 15:36:48 PDT 2005


The 1.1.x Speex versions feature a denoiser that I'm a big fan of.  
It's adaptive and will filter out pretty much anything that is fairly 
stable over time while preserving the quality of the speech very well.  
You will need to make the following calls to set it up and use it:

speex_preprocess_state_init
speex_preprocess_ctl with SPEEX_PREPROCESS_SET_DENOISE
speex_preprocess

You can also do VAD and AGC with the Speex preprocessor.   For sample 
code, you can take a look at the wrapper classes that I use in my 
application.  I've posted them at:

http://www.grandgent.com/spx/tgAudioCodec.zip

Good luck,

Tom

"Randy Toor" <hellraiser412 at hotmail.com> wrote:
> 
> Well I finally managed to get speex working :)
> 
> Vinod I appreciate the wrapper code a lot, I found I couldn't get yours to 
> work with the float conversion, but I changed to speex_encode_int instead 
> and just passed in the shorts, and it worked perfect :)
> 
> I am quite impressed with the quality, it sounds about the same as my PCM 
> data.. however..
> 
> The mic on my ppc picks up EVERYTHING in the room, and I mean everything, 
> including fans and whatnot.. is there a way to get that noise cancelled out 
> and focus on the speech only ?
> 
> I am using the ARM build by the way, if that makes any difference.. thanks 
> :)



More information about the Speex-dev mailing list