matroskamux: revert change that set a reserved flag on the Block.
authorZaheer Abbas Merali <zaheerabbas@merali.org>
Mon, 14 Jun 2010 13:26:22 +0000 (14:26 +0100)
committerZaheer Abbas Merali <zaheerabbas@merali.org>
Mon, 14 Jun 2010 13:28:53 +0000 (14:28 +0100)
So matroska's Block structure has no keyframe flag, only the SimpleBlock has it.
To detect keyframes in Blocks, it is just the BlockGroup container that needs
to have a ReferenceBlock attached if it is a delta frame in video.

gst/matroska/matroska-mux.c
tests/check/elements/matroskamux.c

index e3d9ab1..265eb18 100644 (file)
@@ -2681,15 +2681,13 @@ gst_matroska_mux_write_data (GstMatroskaMux * mux, GstMatroskaPad * collect_pad)
 
     return gst_ebml_last_write_result (ebml);
   } else {
-    int flags =
-        GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT) ? 0 : 0x80;
     gst_ebml_write_set_cache (ebml, GST_BUFFER_SIZE (buf) * 2);
     /* write and call order slightly unnatural,
      * but avoids seek and minizes pushing */
     blockgroup = gst_ebml_write_master_start (ebml, GST_MATROSKA_ID_BLOCKGROUP);
     hdr =
         gst_matroska_mux_create_buffer_header (collect_pad->track,
-        relative_timestamp, flags);
+        relative_timestamp, 0);
     if (write_duration) {
       gst_ebml_write_uint (ebml, GST_MATROSKA_ID_BLOCKDURATION,
           gst_util_uint64_scale (block_duration, 1, mux->time_scale));
index f3b1d07..9d6f375 100644 (file)
@@ -312,7 +312,7 @@ GST_START_TEST (test_block_group)
   int i;
   guint8 data0[] = { 0xa0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
     0xa1, 0x85,
-    0x81, 0x00, 0x01, 0x80
+    0x81, 0x00, 0x01, 0x00
   };
   guint8 data1[] = { 0x42 };