summaryrefslogtreecommitdiffstats
path: root/libmpdemux
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-10-31 19:35:20 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-10-31 19:35:20 +0000
commit3c438bdca04aba0b3390182f61ca055a5bcc7991 (patch)
tree105fd048a7772329fb882d68f1c29717f7935475 /libmpdemux
parent328866188b3829370af96a5ff5b6b9c733b416b5 (diff)
downloadmpv-3c438bdca04aba0b3390182f61ca055a5bcc7991.tar.bz2
mpv-3c438bdca04aba0b3390182f61ca055a5bcc7991.tar.xz
pass audio codecdata
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8004 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux')
-rw-r--r--libmpdemux/demux_mov.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c
index 696315dca3..b8ab7c936b 100644
--- a/libmpdemux/demux_mov.c
+++ b/libmpdemux/demux_mov.c
@@ -797,12 +797,21 @@ static void lschunks(demuxer_t* demuxer,int level,off_t endpos,mov_track_t* trak
mp_msg(MSGT_DEMUX, MSGL_INFO, "Audio bits: %d chans: %d rate: %d\n",
trak->stdata[19],trak->stdata[17],sh->samplerate);
- if(trak->stdata_len >= 44 && trak->stdata[9]>=1)
+ if(trak->stdata_len >= 44 && trak->stdata[9]>=1){
mp_msg(MSGT_DEMUX,MSGL_V,"Audio header: samp/pack=%d bytes/pack=%d bytes/frame=%d bytes/samp=%d \n",
char2int(trak->stdata,28),
char2int(trak->stdata,32),
char2int(trak->stdata,36),
char2int(trak->stdata,40));
+ if(trak->stdata_len>=44+8){
+ int len=char2int(trak->stdata,44);
+ int fcc=char2int(trak->stdata,48);
+ // we have extra audio headers!!!
+ printf("Audio extra header: len=%d fcc=0x%X\n",len,fcc);
+ sh->codecdata_len = len-8;
+ sh->codecdata = trak->stdata+44+8;
+ }
+ }
if((trak->stdata[9]==0) && trak->stdata_len >= 36) { // version 0 with extra atoms
int atom_len = char2int(trak->stdata,28);