codecs: h264decoder: Fix MMCO type 1 for interlaced stream
authorSeungha Yang <seungha@centricular.com>
Sat, 14 Nov 2020 18:41:27 +0000 (03:41 +0900)
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Mon, 16 Nov 2020 14:25:36 +0000 (14:25 +0000)
If field_pic_flag of current picture is equal to zero,
both field of reference field pair should be marked as
"unused for reference"

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1810>

gst-libs/gst/codecs/gsth264picture.c

index 9f8bf76..f215200 100644 (file)
@@ -836,7 +836,7 @@ gst_h264_dpb_perform_memory_management_control_operation (GstH264Dpb * dpb,
       other = gst_h264_dpb_get_short_ref_by_pic_num (dpb, pic_num_x);
       if (other) {
         gst_h264_picture_set_reference (other,
-            GST_H264_PICTURE_REF_NONE, FALSE);
+            GST_H264_PICTURE_REF_NONE, GST_H264_PICTURE_IS_FRAME (picture));
         GST_TRACE ("MMCO-1: unmark short-term ref picture %p, (poc %d)",
             other, other->pic_order_cnt);
       } else {