[Mplayer-cvslog] CVS: main/libmpdemux demux_mov.c,1.95,1.96

Roberto Togni CVS rtognimp at mplayerhq.hu
Sat Mar 15 11:52:54 CET 2003


Update of /cvsroot/mplayer/main/libmpdemux
In directory mail:/var/tmp.root/cvs-serv13114

Modified Files:
	demux_mov.c 
Log Message:
Animatrix AAC fix, patch by <dimakar(at)yahoo.com>. (This is the right patch)

Index: demux_mov.c
===================================================================
RCS file: /cvsroot/mplayer/main/libmpdemux/demux_mov.c,v
retrieving revision 1.95
retrieving revision 1.96
diff -u -r1.95 -r1.96
--- demux_mov.c	12 Mar 2003 22:59:04 -0000	1.95
+++ demux_mov.c	15 Mar 2003 10:52:30 -0000	1.96
@@ -903,14 +903,15 @@
 		  }
 		}
 
-		if((trak->stdata[9]==0) && trak->stdata_len >= 36) { // version 0 with extra atoms
-		    int atom_len = char2int(trak->stdata,28);
-		    switch(char2int(trak->stdata,32)) { // atom type
+		if((trak->stdata[9]==0 || trak->stdata[9]==1) && trak->stdata_len >= 36) { // version 0 with extra atoms
+        int adjust = (trak->stdata[9]==1)?48:0;
+		    int atom_len = char2int(trak->stdata,28+adjust);
+		    switch(char2int(trak->stdata,32+adjust)) { // atom type
 		      case MOV_FOURCC('e','s','d','s'): {
 			mp_msg(MSGT_DEMUX, MSGL_INFO, "MOV: Found MPEG4 audio Elementary Stream Descriptor atom (%d)!\n", atom_len);
 			if(atom_len > 8) {
 			  esds_t esds; 				  
-			  if(!mp4_parse_esds(&trak->stdata[36], atom_len-8, &esds)) {
+			  if(!mp4_parse_esds(&trak->stdata[36+adjust], atom_len-8, &esds)) {
 			    
 			    sh->i_bps = esds.avgBitrate/8; 
 
@@ -935,7 +936,7 @@
 		      } break;
 		      default:
 			mp_msg(MSGT_DEMUX, MSGL_INFO, "MOV: Found unknown audio atom %c%c%c%c (%d)!\n",
-			    trak->stdata[32],trak->stdata[33],trak->stdata[34],trak->stdata[35],
+			    trak->stdata[32+adjust],trak->stdata[33+adjust],trak->stdata[34+adjust],trak->stdata[35+adjust],
 			    atom_len);
 		    }
 		}  



More information about the MPlayer-cvslog mailing list