diff --git a/gst-libs/gst/codecparsers/gsth264parser.c b/gst-libs/gst/codecparsers/gsth264parser.c index 4af4d44f96..320777b0b0 100644 --- a/gst-libs/gst/codecparsers/gsth264parser.c +++ b/gst-libs/gst/codecparsers/gsth264parser.c @@ -704,9 +704,12 @@ gst_h264_slice_parse_dec_ref_pic_marking (GstH264SliceHdr * slice, GstH264NalUnit * nalu, NalReader * nr) { GstH264DecRefPicMarking *dec_ref_pic_m; + guint start_pos; GST_DEBUG ("parsing \"Decoded reference picture marking\""); + start_pos = nal_reader_get_pos (nr); + dec_ref_pic_m = &slice->dec_ref_pic_marking; if (nalu->idr_pic_flag) { @@ -746,6 +749,8 @@ gst_h264_slice_parse_dec_ref_pic_marking (GstH264SliceHdr * slice, } } + dec_ref_pic_m->bit_size = nal_reader_get_pos (nr) - start_pos; + return TRUE; error: diff --git a/gst-libs/gst/codecparsers/gsth264parser.h b/gst-libs/gst/codecparsers/gsth264parser.h index dda51d6da9..9670be5c95 100644 --- a/gst-libs/gst/codecparsers/gsth264parser.h +++ b/gst-libs/gst/codecparsers/gsth264parser.h @@ -867,6 +867,9 @@ struct _GstH264DecRefPicMarking guint8 adaptive_ref_pic_marking_mode_flag; GstH264RefPicMarking ref_pic_marking[10]; guint8 n_ref_pic_marking; + + /* Size of the dec_ref_pic_marking() syntax element in bits (Since: 1.18) */ + guint bit_size; };