summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Kunde Schlesner <yuriks@yuriks.net>2016-09-03 12:37:44 -0700
committerGitHub <noreply@github.com>2016-09-03 12:37:44 -0700
commitc3307b41db4e222ceca3860c75ccbe6300484729 (patch)
treefcf2501a0aa71f926e8d9e89ad5d9934aa535700
parentfed59e07148bbfa5517570bdfdcafde535b0da71 (diff)
parent0bbda3bab45f37fc888b8a8ac3ca9392a667c342 (diff)
Merge pull request #2050 from MerryMage/adpcm
codec: Fix ADPCM distortion caused by incorrect nibble order
-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++;