# HG changeset patch # User kostya # Date 1163394955 0 # Node ID 17d005bf07f28049dad8453a6f5fd8c06b7ddd63 # Parent 580d2c3972518795ecae143695933a688e71d2d0 Output proper 16-bit sound (fixes decoding on PPC) diff -r 580d2c397251 -r 17d005bf07f2 vmdav.c --- a/vmdav.c Sun Nov 12 23:35:49 2006 +0000 +++ b/vmdav.c Mon Nov 13 05:15:55 2006 +0000 @@ -484,10 +484,13 @@ } else { if (s->bits == 16) vmdaudio_decode_audio(s, data, buf, 1); - else + else { /* copy the data but convert it to signed */ - for (i = 0; i < s->block_align; i++) - data[i * 2 + 1] = buf[i] + 0x80; + for (i = 0; i < s->block_align; i++){ + *data++ = buf[i] + 0x80; + *data++ = buf[i] + 0x80; + } + } } } else { bytes_decoded = s->block_align * 2; @@ -500,8 +503,10 @@ vmdaudio_decode_audio(s, data, buf, 0); } else { /* copy the data but convert it to signed */ - for (i = 0; i < s->block_align; i++) - data[i * 2 + 1] = buf[i] + 0x80; + for (i = 0; i < s->block_align; i++){ + *data++ = buf[i] + 0x80; + *data++ = buf[i] + 0x80; + } } } }