core: Fix incorrect clamping in ADPCM decoder

Caused artifacts in ADPCM encoded audio.
This commit is contained in:
Mike Welsh 2019-09-19 11:05:27 -07:00
parent 547da84c9c
commit c2eb96eed0
1 changed files with 4 additions and 4 deletions

View File

@ -88,8 +88,8 @@ impl<R: Read> AdpcmDecoder<R> {
} else {
self.left_sample += delta;
}
if self.left_sample < -32768 {
self.left_sample = 32768;
if self.left_sample < -32767 {
self.left_sample = -32767;
} else if self.left_sample > 32767 {
self.left_sample = 32767;
}
@ -115,8 +115,8 @@ impl<R: Read> AdpcmDecoder<R> {
} else {
self.right_sample += delta;
}
if self.right_sample < -32768 {
self.right_sample = 32768;
if self.right_sample < -32767 {
self.right_sample = -32767;
} else if self.right_sample > 32767 {
self.right_sample = 32767;
}