diff options
author | Zaheer Abbas Merali <zaheerabbas@merali.org> | 2010-06-09 22:40:23 +0200 |
---|---|---|
committer | Zaheer Abbas Merali <zaheerabbas@merali.org> | 2010-06-10 01:32:15 +0200 |
commit | 823a514161747fb05a39054283570469d40d6d58 (patch) | |
tree | 87f5b5854af461ea45ab68c91a54960a018b64a3 | |
parent | 45f711044fe60efba33e0dbaba354860fd450eed (diff) |
matroskamux: some non-delta buffers were not marked as keyframes
-rw-r--r-- | gst/matroska/matroska-mux.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gst/matroska/matroska-mux.c b/gst/matroska/matroska-mux.c index 265eb186d..e3d9ab1a0 100644 --- a/gst/matroska/matroska-mux.c +++ b/gst/matroska/matroska-mux.c @@ -2681,13 +2681,15 @@ 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, 0); + relative_timestamp, flags); if (write_duration) { gst_ebml_write_uint (ebml, GST_MATROSKA_ID_BLOCKDURATION, gst_util_uint64_scale (block_duration, 1, mux->time_scale)); |