From: Eric Laurent Date: Fri, 2 May 2014 16:20:08 +0000 (-0700) Subject: audio utils: fix resampler bug X-Git-Tag: android-x86-7.1-r1~321 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=7e71a03c7c01b89733ee4b7b3f753db5315858b9;p=android-x86%2Fsystem-media.git audio utils: fix resampler bug input and output frame counts passed to speex resampler where not initialized by resampler_resample_from_input(). Bug: 14240418. Change-Id: Ieaaea5986667abd01400775f36d12d09a2670841 --- diff --git a/audio_utils/resampler.c b/audio_utils/resampler.c index f3d00624..7282aa9a 100644 --- a/audio_utils/resampler.c +++ b/audio_utils/resampler.c @@ -156,7 +156,6 @@ int resampler_resample_from_input(struct resampler_itfe *resampler, size_t *outFrameCount) { struct resampler *rsmp = (struct resampler *)resampler; - spx_uint32_t inFrames, outFrames; if (rsmp == NULL || in == NULL || inFrameCount == NULL || out == NULL || outFrameCount == NULL) { @@ -171,20 +170,17 @@ int resampler_resample_from_input(struct resampler_itfe *resampler, speex_resampler_process_int(rsmp->speex_resampler, 0, in, - &inFrames, + (spx_uint32_t *)inFrameCount, out, - &outFrames); + (spx_uint32_t *)outFrameCount); } else { speex_resampler_process_interleaved_int(rsmp->speex_resampler, in, - &inFrames, + (spx_uint32_t *)inFrameCount, out, - &outFrames); + (spx_uint32_t *)outFrameCount); } - *inFrameCount = inFrames; - *outFrameCount = outFrames; - ALOGV("resampler_resample_from_input() DONE in %zu out %zu", *inFrameCount, *outFrameCount); return 0;