[Speex-dev] Problem with VAD in preprocessor on iPhone

Karl Nordstrom karl at algosolutions.com
Fri Nov 5 11:08:20 PDT 2010

Hi Greg,

We have been able to get the VAD sort of working by significantly 
reducing the amplitude of the signal going into it. We watched the 
speech probability value as we reduced the amplitude of the input signal 
until seemed to be switching okay. In the end, the reduction was by a 
right shift of 9, i.e. a factor of 2^9.

The switching is probably not as good as it could be and will need some  
attention to achieve a proper fix. The large shift indicates that 
something is wrong.

As I understand it, the signal going into the echo canceller was not 
reduced (I wasn't the one that did the work).

Not too useful but I hope it helps.


On 2010 Oct 28 14:26, Greg Lappen wrote:
> Hello,
> I am attempting to use Speex in an iPhone application and running into 
> an issue.  I got speex to compile by following these instructions:
> http://codeforfun.wordpress.com/2010/04/29/compile-speex-for-iphone/
> Next, I was able to record some audio and play it back.  I then 
> inserted a call to the speex preprocessor and am passing all of the 
> audio buffers I receive from Audio Queue Services (the iPhone/Mac 
> audio streaming API) into speex_preprocess_run.  The problem though is 
> that speex_preprocess_run is returning a 1 regardless of whether I am 
> speaking into the microphone or not.  There is this output in the log 
> when debugging my program:
> *warning: The VAD has been replaced by a hack pending a complete rewrite*
> Does this mean that VAD does not work at all in the processor in 
> version 1.2rc1, or am I just using it incorrectly if I always get back 
> a 1 (I suspect it's the latter, not the former).
> Any help would be greatly appreciated.
> Greg
> _______________________________________________
> 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