[Speex-dev] [PATCH] resample: Fix input indexing bug from interleaved functions

Nikos Chantziaras realnc at gmail.com
Sun Jan 13 18:37:32 PST 2013

On 02/05/12 17:28, oku at iki.fi wrote:
> From: Jyri Sarha <jsarha at ti.com>
> This bug happens quite often when resampling from a low to a high
> sample-rate with big enough factor. Also the resampling call has to
> be limited by the output buffer size and some unused samples needs be
> left in the input buffer.
> Sometimes when up-sampling with a big factor the resampling function
> wants to peek one more sample from the input buffer to produce one
> more output sample, but the inputs sample is not consumed because it
> is also needed to produce the next output sample. When resampling the
> next channel this peeked sample is not any more available because
> *in_len parameter value was updated when resampling the first channel.
> Signed-off-by: Jyri Sarha <jsarha at ti.com>

I was wondering what's causing the (very noticeable) glitches when I 
resample from 44100Hz to 96000Hz by using 
speex_resampler_process_interleaved_float().  I applied this patch and I 
now get clear audio at last!

I see this patch is from May 2012.  Any chance of applying it in current 
Git?  It's quite a serious audio quality bug.

More information about the Speex-dev mailing list