From def24a15ad1d206b102ad4cec5ac164757b85c8f Mon Sep 17 00:00:00 2001 From: Ken Cooke Date: Wed, 16 Sep 2015 09:00:41 -0700 Subject: [PATCH] fix audio int16_t to float scaling --- libraries/audio/src/AudioBuffer.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/audio/src/AudioBuffer.h b/libraries/audio/src/AudioBuffer.h index 558d686861..2d23be864b 100644 --- a/libraries/audio/src/AudioBuffer.h +++ b/libraries/audio/src/AudioBuffer.h @@ -239,7 +239,7 @@ inline void AudioFrameBuffer< T >::copyFrames(uint32_t channelCount, const uint3 if(typeid(T) == typeid(float32_t) && typeid(S) == typeid(int16_t)) { // source and destination aare not the same, convert from float32_t to int16_t and copy out - const int scale = (2 << ((8 * sizeof(S)) - 1)); + const int scale = (1 << ((8 * sizeof(S)) - 1)); if (frameAlignment16 && (_channelCount == 1 || _channelCount == 2)) { @@ -382,7 +382,7 @@ inline void AudioFrameBuffer< T >::copyFrames(uint32_t channelCount, const uint3 if(typeid(T) == typeid(float32_t) && typeid(S) == typeid(int16_t)) { // source and destination aare not the same, convert from int16_t to float32_t and copy in - const int scale = (2 << ((8 * sizeof(S)) - 1)); + const int scale = (1 << ((8 * sizeof(S)) - 1)); if (frameAlignment16 && (_channelCount == 1 || _channelCount == 2)) {