mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-09-09 13:48:55 +00:00
matroskamux: revert change that set a reserved flag on the Block.
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.
This commit is contained in:
parent
a391bf52cc
commit
e49c31fd25
2 changed files with 2 additions and 4 deletions
|
@ -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));
|
||||
|
|
|
@ -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 };
|
||||
|
||||
|
|
Loading…
Reference in a new issue