diff options
author | Takashi Iwai <tiwai@suse.de> | 2007-08-14 16:21:52 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2007-08-14 16:21:52 +0200 |
commit | 1ee7b56befc16d0940bd162f3ac9b6ae66e85f0b (patch) | |
tree | 065c9830aa3999292faee1954e74abe0bd4c8675 /pph/rate_speexrate.c | |
parent | f875609b187837c4332246a55c8032db07aa76c0 (diff) |
Update speex rate converter code
Take speex rate converter code from speex SVN tree, which includes the
fix for the noises with simple conversion (signed / unsigned mismatch).
Diffstat (limited to 'pph/rate_speexrate.c')
-rw-r--r-- | pph/rate_speexrate.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/pph/rate_speexrate.c b/pph/rate_speexrate.c index 9eb33b9..38244b6 100644 --- a/pph/rate_speexrate.c +++ b/pph/rate_speexrate.c @@ -77,12 +77,13 @@ static void pcm_src_free(void *obj) static int pcm_src_init(void *obj, snd_pcm_rate_info_t *info) { struct rate_src *rate = obj; + int err; if (! rate->st || rate->channels != info->channels) { if (rate->st) speex_resampler_destroy(rate->st); rate->channels = info->channels; - rate->st = speex_resampler_init_frac(rate->channels, info->in.period_size, info->out.period_size, info->in.rate, info->out.rate, rate->quality); + rate->st = speex_resampler_init_frac(rate->channels, info->in.period_size, info->out.period_size, info->in.rate, info->out.rate, rate->quality, &err); if (! rate->st) return -EINVAL; } |