oggdemux: Drop all other Ogg VP8 header packets and make VP8 mapping check a bit...
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 20 May 2010 08:19:29 +0000 (10:19 +0200)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 20 May 2010 08:19:29 +0000 (10:19 +0200)
ext/ogg/gstoggdemux.c
ext/ogg/gstoggstream.c

index c05da7f..348acff 100644 (file)
@@ -490,8 +490,8 @@ gst_ogg_demux_chain_peer (GstOggPad * pad, ogg_packet * packet,
       /* We don't push header packets for VP8 */
       cret = gst_ogg_demux_combine_flows (ogg, pad, GST_FLOW_OK);
       goto done;
-    } else if (packet->b_o_s || (packet->bytes >= 6
-            && memcmp (packet->packet, "OVP80\1", 4) == 0)) {
+    } else if (packet->b_o_s || (packet->bytes >= 5
+            && memcmp (packet->packet, "OVP80", 6) == 0)) {
       /* We don't push header packets for VP8 */
       cret = gst_ogg_demux_combine_flows (ogg, pad, GST_FLOW_OK);
       goto done;
index 53db77b..0746b83 100644 (file)
@@ -1636,7 +1636,7 @@ static const GstOggMap mappers[] = {
     granulepos_to_key_granule_dirac
   },
   {
-    "OVP80\1", 6, 4,
+    "OVP80\1\1", 7, 4,
     "video/x-vp8",
     setup_vp8_mapper,
     granulepos_to_granule_vp8,