mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-01-04 14:22:12 +00:00
Output proper 16-bit sound (fixes decoding on PPC)
Originally committed as revision 7000 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
6c0d04136f
commit
a47d3c0442
@ -484,10 +484,13 @@ static int vmdaudio_loadsound(VmdAudioContext *s, unsigned char *data,
|
||||
} 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 @@ static int vmdaudio_loadsound(VmdAudioContext *s, unsigned char *data,
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user