summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>2010-01-06 13:57:51 +0100
committerMark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>2010-01-06 14:03:44 +0100
commit3f4820d6c26d8f88071b256deaf6f7a8d96ec012 (patch)
treea33b76a74391cef059194c4c83202db5aa3a83f4
parent66545eb7a21821b3ff8d985e200d9138026bc5dc (diff)
oggdemux: decide flac header packet by content rather than count
-rw-r--r--ext/ogg/gstoggstream.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/ext/ogg/gstoggstream.c b/ext/ogg/gstoggstream.c
index 2889b89f..0f8e39b2 100644
--- a/ext/ogg/gstoggstream.c
+++ b/ext/ogg/gstoggstream.c
@@ -620,6 +620,12 @@ setup_flac_mapper (GstOggStream * pad, ogg_packet * packet)
return TRUE;
}
+static gboolean
+is_header_flac (GstOggStream * pad, ogg_packet * packet)
+{
+ return (packet->bytes > 0 && (packet->packet[0] != 0xff));
+}
+
static gint64
packet_duration_flac (GstOggStream * pad, ogg_packet * packet)
{
@@ -1187,7 +1193,7 @@ static const GstOggMap mappers[] = {
granulepos_to_granule_default,
granule_to_granulepos_default,
is_keyframe_true,
- is_header_count,
+ is_header_flac,
packet_duration_flac
},
{