[Speex-dev] frame size

Jean-Marc Valin Jean-Marc.Valin at USherbrooke.ca
Wed May 10 03:06:07 PDT 2006

Le mercredi 10 mai 2006 à 10:17 +0100, devilal sharma a écrit :
> Hi, 
> Can someone please tell me how should I go about changing the frame
> size which is hardcoded to 160 for NB and WB and 320 for UWB. 
> For NB speech(8KHz) the framesize of 160 is 20ms frame but for WB and
> UWB its 10ms.

Sorry, you got your calculations wrong, it's 20 ms regardless of the

> What are the parameters being affected by simply changing the
> framesize and sub-frame size in "modes.c" 

Not much. All you need to do is retrain the LSP codebooks, retrain the
pitch codebooks, retrain the innovation codebooks, adjust just about
every other buffer size and then figure out why Speex not crashes on
you :-)

> How to change the buffer size and how its affected.
> can we have a variable frame size implementation based on some
> voiced/unvoiced part?

Sure, that'll be about 1000-2000 lines of code, plus the retraining of
all codebooks. Any that would gain you what exactly?

> I was also trying to add pitch prediction in WB/UWB part i.e. in high
> band coding, but found it really difficult to do it. Tell me if I can
> use the direct functions of pitch prediction in NB ? and HOW ?

There's a reason I don't have pitch prediction in WB/UWB. Not only would
the gain be small (compared to NB), but the prediction would be really
tricky because of the spectral folding of the high-band caused by the


More information about the Speex-dev mailing list