# HG changeset patch # User reimar # Date 1215802743 0 # Node ID 847ed11ede5e8840784bf7cfcce14e3da3609f3c # Parent 46bcd3f1b123580a83d1e6ff0328f406edccfc07 Scale msadpcm coefficients to fit into 8 bits diff -r 46bcd3f1b123 -r 847ed11ede5e libmpcodecs/ad_msadpcm.c --- a/libmpcodecs/ad_msadpcm.c Fri Jul 11 18:51:12 2008 +0000 +++ b/libmpcodecs/ad_msadpcm.c Fri Jul 11 18:59:03 2008 +0000 @@ -34,14 +34,14 @@ 768, 614, 512, 409, 307, 230, 230, 230 }; -static const int ms_adapt_coeff1[] = +static const int8_t ms_adapt_coeff1[] = { - 256, 512, 0, 192, 240, 460, 392 + 64, 128, 0, 48, 60, 115, 98 }; -static const int ms_adapt_coeff2[] = +static const int8_t ms_adapt_coeff2[] = { - 0, -256, 0, 64, 0, -208, -232 + 0, -64, 0, 16, 0, -52, -58 }; #define MS_ADPCM_PREAMBLE_SIZE 6 @@ -173,7 +173,7 @@ predictor = ( ((sample1[current_channel] * coeff1[current_channel]) + - (sample2[current_channel] * coeff2[current_channel])) / 256) + + (sample2[current_channel] * coeff2[current_channel])) / 64) + (snibble * idelta[current_channel]); CLAMP_S16(predictor); sample2[current_channel] = sample1[current_channel];