summaryrefslogtreecommitdiff
path: root/src/xine-engine
diff options
context:
space:
mode:
authorChristopher Martin <christopher.martin@utoronto.ca>2011-05-15 09:09:29 -0400
committerChristopher Martin <christopher.martin@utoronto.ca>2011-05-15 09:09:29 -0400
commit48a9464eb6f0ec4fe1cadef792e041e67ccb4156 (patch)
tree70bc34b47a85b91bc81b8d53e6194cfd1e2dbe03 /src/xine-engine
parent138e3a387bb7f5770cd358700d158576a0461cf7 (diff)
downloadxine-lib-48a9464eb6f0ec4fe1cadef792e041e67ccb4156.tar.gz
xine-lib-48a9464eb6f0ec4fe1cadef792e041e67ccb4156.tar.bz2
Better support for 24-bit lpcm
First of all, it improves the qt demuxer, ensuring that 24-bit audio is marked appropriately, and detecting little vs. big endian audio. It also adjusts the buffer size when audio is 24-bit, ensuring that samples aren't chopped in half (8192 does not divide evenly into 3 byte samples). Secondly, in the lpcm decoder, the patch distinguishes between standard 24-bit lpcm (big and little endian) and special DVD-format 24-bit lpcm (see http://wiki.multimedia.cx/index.php?title=PCM) and now handles both, instead of only handling the DVD format. The result is that xine now correctly plays all the 24-bit lpcm samples I throw at it, whereas before only a few worked.
Diffstat (limited to 'src/xine-engine')
-rw-r--r--src/xine-engine/buffer_types.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/xine-engine/buffer_types.c b/src/xine-engine/buffer_types.c
index 1db073851..e6b846d64 100644
--- a/src/xine-engine/buffer_types.c
+++ b/src/xine-engine/buffer_types.c
@@ -836,6 +836,7 @@ static const audio_db_t audio_db[] = {
0x01,
ME_FOURCC('r','a','w',' '),
ME_FOURCC('s','o','w','t'),
+ ME_FOURCC('4','2','n','i'),
0
},
BUF_AUDIO_LPCM_LE,