va: h264dec: Fix picture_height_in_mbs_minus1
authorSeungha Yang <seungha@centricular.com>
Sat, 14 Nov 2020 11:46:30 +0000 (20:46 +0900)
committerSeungha Yang <seungha@centricular.com>
Tue, 17 Nov 2020 10:57:35 +0000 (19:57 +0900)
Fix for interlaced stream (when sps->frame_mbs_only_flag is equal to one)

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

sys/va/gstvah264dec.c

index 1ea00e9..9468452 100644 (file)
@@ -371,7 +371,8 @@ gst_va_h264_dec_start_picture (GstH264Decoder * decoder,
     /* .ReferenceFrames */
     .picture_width_in_mbs_minus1 = sps->pic_width_in_mbs_minus1,
     .picture_height_in_mbs_minus1 =
-        sps->pic_height_in_map_units_minus1 << !sps->frame_mbs_only_flag,
+        ((sps->pic_height_in_map_units_minus1 + 1) <<
+            !sps->frame_mbs_only_flag) -1,
     .bit_depth_luma_minus8 = sps->bit_depth_luma_minus8,
     .bit_depth_chroma_minus8 = sps->bit_depth_chroma_minus8,
     .num_ref_frames = sps->num_ref_frames,