gst/flv/gstflvparse.c: codec_data is needed for every tag not just the first one...
authorJulien Moutte <julien@moutte.net>
Wed, 26 Sep 2007 16:30:50 +0000 (16:30 +0000)
committerJulien Moutte <julien@moutte.net>
Wed, 26 Sep 2007 16:30:50 +0000 (16:30 +0000)
Original commit message from CVS:
2007-09-26  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): codec_data is needed for every tag
not just the first one. (Fix a stupid bug i introduced without
testing)

ChangeLog
gst/flv/gstflvparse.c

index e77f060..9a7e349 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,13 @@
 2007-09-26  Julien MOUTTE  <julien@moutte.net>
 
        * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
+       (gst_flv_parse_tag_video): codec_data is needed for every tag
+       not just the first one. (Fix a stupid bug i introduced without
+       testing)
+
+2007-09-26  Julien MOUTTE  <julien@moutte.net>
+
+       * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
        (gst_flv_parse_tag_video): Fix bit masks operations to be
        sure we detect the codec_tags and sample rates correctly.
        Fix raw audio caps generation.
index a7ca1a8..bf475cb 100644 (file)
@@ -658,6 +658,9 @@ gst_flv_parse_tag_video (GstFLVDemux * demux, const guint8 * data,
   }
   /* Codec tag */
   codec_tag = flags & 0x0F;
+  if (codec_tag == 4 || codec_tag == 5) {
+    codec_data = 2;
+  }
 
   GST_LOG_OBJECT (demux, "video tag with codec tag %u, keyframe (%d) "
       "(flags %02X)", codec_tag, keyframe, flags);
@@ -685,11 +688,9 @@ gst_flv_parse_tag_video (GstFLVDemux * demux, const guint8 * data,
         break;
       case 4:
         caps = gst_caps_new_simple ("video/x-vp6-flash", NULL);
-        codec_data = 2;
         break;
       case 5:
         caps = gst_caps_new_simple ("video/x-vp6-flash", NULL);
-        codec_data = 2;
         break;
       default:
         GST_WARNING_OBJECT (demux, "unsupported video codec tag %d", codec_tag);