[Speex-dev] 2 questions, frame size and SPEEX_GET_LOOKAHEAD
jpu at apple.com
Tue Oct 31 14:16:26 PST 2006
Ok, let me first explain why 5ms matters, even they are 0's, in my
I am working on a speech synthesis system. The basic idea is
concatenating pre-recorded phonemes or words into longer sentences. So
any missing or extra samples, even it is as short as 5~10ms, cause
very noticeable discontinuities.
I want to use speex to compress/decompress those pre-recorded
material. But I'm concerned about the extra 0's might be padded at
For the zero padding at the last frame, I know how to remove it after
decoding. But I am a little confused by the look ahead at the
beginning. The sample code in the manual doesn't use look ahead, while
the speexenc.c does. I'd like to know what difference it makes.
Let me plugin some numbers. I am using wide-band mode, the frame size
is 320 samples. Say I take the first frame of an audio buffer, i.e.
the first 320 samples, and feed them into encoder. Then after
decompress, do I get all 320 samples, or a portion of 320 samples with
some 0 padding at the very beginning?
On Oct 31, 2006, at 12:38 PM, Jean-Marc Valin wrote:
>> In my application, even 5ms (110 samples at 22KHz) matters.
> 1) If 5 ms matters, I don't recommend Ogg (and I definitely hope
> not running Windows!)
> 2) 22 kHz is *not* recommended. Use 16 kHz instead
>> So what
>> should I do to avoid discarding samples at the beginning?
> Why are they so precious, they're *zeros* (or nearly).
>> 1. Turning off look ahead?
>> 2. Padding 0's at the beginning.
> Or you can always just play them if they're so precious. Ah, the sound
> of 5ms worth of zeros...
More information about the Speex-dev