diff options
author | Darren Salt <linux@youmustbejoking.demon.co.uk> | 2011-08-23 20:18:22 +0100 |
---|---|---|
committer | Darren Salt <linux@youmustbejoking.demon.co.uk> | 2011-08-23 20:18:22 +0100 |
commit | b097a80fb2d9100e02f2fdaf62fe3d408f73763f (patch) | |
tree | 930fda0d620d73f453e7be7eb51aad28de3395cf /src/audio_dec | |
parent | 53ec0b8ab9e7076d84221bbd5ea84978239a1afc (diff) | |
parent | edb68926aced0739f3e62ea2501bc32326c02f86 (diff) | |
download | xine-lib-b097a80fb2d9100e02f2fdaf62fe3d408f73763f.tar.gz xine-lib-b097a80fb2d9100e02f2fdaf62fe3d408f73763f.tar.bz2 |
Merge from 1.1.
--HG--
rename : src/xine-engine/buffer.h => include/xine/buffer.h
rename : src/libxineadec/xine_lpcm_decoder.c => src/audio_dec/xine_lpcm_decoder.c
rename : src/libspuhdmv/xine_hdmv_decoder.c => src/spu_dec/spuhdmv_decoder.c
Diffstat (limited to 'src/audio_dec')
-rw-r--r-- | src/audio_dec/xine_lpcm_decoder.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/audio_dec/xine_lpcm_decoder.c b/src/audio_dec/xine_lpcm_decoder.c index 7b9b4a81b..59f847f5c 100644 --- a/src/audio_dec/xine_lpcm_decoder.c +++ b/src/audio_dec/xine_lpcm_decoder.c @@ -120,8 +120,12 @@ static void lpcm_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) { num_channels = channels[(buf->decoder_info[2] >> (16+4)) & 0x0f]; switch ((buf->decoder_info[2] >> (24+6)) & 0x03) { case 1: bits_per_sample = 16; break; - case 2: bits_per_sample = 20; break; - case 3: bits_per_sample = 24; special_dvd_audio = 1; break; + case 2: /*bits_per_sample = 20; break;*/ + /* fall thru. Samples are 0-padded to 24 bits, and + * converted later to 16 bits by dropping 8 lowest bits. + * this needs to be changed if audio out some day accepts 24bit samples. + */ + case 3: bits_per_sample = 24; break; default: bits_per_sample = 0; break; } switch ((buf->decoder_info[2] >> 16) & 0x0f) { |