[Mplayer-cvslog] CVS: main/libmpdemux demux_ogg.c,1.36,1.37

Moritz Bunkus CVS mosu at mplayerhq.hu
Sat Nov 15 21:00:58 CET 2003


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

Modified Files:
	demux_ogg.c 
Log Message:
For FLAC-in-Ogg the packets are NEVER skipped, and there's no such thing as a "packet header byte" like in Ogm streams. Basically the handling for Vorbis != Theora != FLAC != Ogm.

Index: demux_ogg.c
===================================================================
RCS file: /cvsroot/mplayer/main/libmpdemux/demux_ogg.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- demux_ogg.c	15 Oct 2003 16:46:55 -0000	1.36
+++ demux_ogg.c	15 Nov 2003 20:00:31 -0000	1.37
@@ -408,9 +408,11 @@
   }
   // If packet is an header we jump it except for vorbis and theora
   // (PACKET_TYPE_HEADER bit doesn't even exist for theora ?!)
-  if((*pack->packet & PACKET_TYPE_HEADER) && 
+  // We jump nothing for FLAC. Ain't this great? Packet contents have to be
+  // handled differently for each and every stream type. The joy! The joy!
+  if(!os->flac && ((*pack->packet & PACKET_TYPE_HEADER) && 
      (ds != d->audio || ( ((sh_audio_t*)ds->sh)->format != 0xFFFE || os->hdr_packets >= NUM_VORBIS_HDR_PACKETS ) ) &&
-     (ds != d->video || (((sh_video_t*)ds->sh)->format != 0xFFFC)))
+     (ds != d->video || (((sh_video_t*)ds->sh)->format != 0xFFFC))))
     return 0;
 
   // For vorbis packet the packet is the data, for other codec we must jump



More information about the MPlayer-cvslog mailing list