Mercurial > mplayer.hg
changeset 11464:1efd0f9a946d
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.
author | mosu |
---|---|
date | Sat, 15 Nov 2003 20:00:31 +0000 |
parents | d379e392a132 |
children | 516d684972ae |
files | libmpdemux/demux_ogg.c |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/libmpdemux/demux_ogg.c Sat Nov 15 10:49:38 2003 +0000 +++ b/libmpdemux/demux_ogg.c Sat Nov 15 20:00:31 2003 +0000 @@ -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