summaryrefslogtreecommitdiff
path: root/src/audio_core/codec.cpp
diff options
context:
space:
mode:
authorfincs <fincs.alt1@gmail.com>2016-09-03 14:01:31 +0100
committerMerryMage <MerryMage@users.noreply.github.com>2016-09-03 14:06:25 +0100
commit0bbda3bab45f37fc888b8a8ac3ca9392a667c342 (patch)
tree227a21382fb51833a20d858273b98f342662feba /src/audio_core/codec.cpp
parent09063dc5bb1e2b769c10077bf820a5300494c119 (diff)
codec: Fix ADPCM distortion caused by incorrect nibble order
Closes #2049. Signed-off-by: MerryMage <MerryMage@users.noreply.github.com>
Diffstat (limited to 'src/audio_core/codec.cpp')
-rw-r--r--src/audio_core/codec.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/audio_core/codec.cpp b/src/audio_core/codec.cpp
index ab65514b7..3e23323f1 100644
--- a/src/audio_core/codec.cpp
+++ b/src/audio_core/codec.cpp
@@ -58,11 +58,11 @@ StereoBuffer16 DecodeADPCM(const u8* const data, const size_t sample_count, cons
size_t outputi = framei * SAMPLES_PER_FRAME;
size_t datai = framei * FRAME_LEN + 1;
for (size_t i = 0; i < SAMPLES_PER_FRAME && outputi < sample_count; i += 2) {
- const s16 sample1 = decode_sample(SIGNED_NIBBLES[data[datai] & 0xF]);
+ const s16 sample1 = decode_sample(SIGNED_NIBBLES[data[datai] >> 4]);
ret[outputi].fill(sample1);
outputi++;
- const s16 sample2 = decode_sample(SIGNED_NIBBLES[data[datai] >> 4]);
+ const s16 sample2 = decode_sample(SIGNED_NIBBLES[data[datai] & 0xF]);
ret[outputi].fill(sample2);
outputi++;