From: Nicolas Dufresne Date: Tue, 9 Jun 2020 14:48:06 +0000 (-0400) Subject: v4l2slh264dec: Fix reading mode and start code type X-Git-Tag: 1.19.3~507^2~1776 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=483539f45cfbf7b7cb9c880588e2a012bcf5e54b;p=platform%2Fupstream%2Fgstreamer.git v4l2slh264dec: Fix reading mode and start code type These two controls are not pointer based, so we don't need to pass any size or pointer and need to copy the values afterward. This fixes H264 decoding regression with Hantro and RKVDEC drivers. Fixes 037730a787c6cdeeee5779c1834315c1ca764505 Part-of: --- diff --git a/sys/v4l2codecs/gstv4l2codech264dec.c b/sys/v4l2codecs/gstv4l2codech264dec.c index 0fa96dd..5b7d336 100644 --- a/sys/v4l2codecs/gstv4l2codech264dec.c +++ b/sys/v4l2codecs/gstv4l2codech264dec.c @@ -115,13 +115,9 @@ gst_v4l2_codec_h264_dec_open (GstVideoDecoder * decoder) struct v4l2_ext_control control[] = { { .id = V4L2_CID_MPEG_VIDEO_H264_DECODE_MODE, - .ptr = &self->decode_mode, - .size = sizeof (self->decode_mode), }, { .id = V4L2_CID_MPEG_VIDEO_H264_START_CODE, - .ptr = &self->start_code, - .size = sizeof (self->start_code), }, }; /* *INDENT-ON* */ @@ -141,6 +137,9 @@ gst_v4l2_codec_h264_dec_open (GstVideoDecoder * decoder) return FALSE; } + self->decode_mode = control[0].value; + self->start_code = control[1].value; + GST_INFO_OBJECT (self, "Opened H264 %s decoder %s", is_frame_based (self) ? "frame based" : "slice based", needs_start_codes (self) ? "using start-codes" : "withouth start-codes");