From b2b0483d03b0ae08e6df54dc2bf24f4e387bd72b Mon Sep 17 00:00:00 2001 From: He Junyan Date: Fri, 1 Jan 2021 16:00:10 +0800 Subject: [PATCH] va: mpeg2dec: Apply buffer_flags to the output buffer. Part-of: --- sys/va/gstvampeg2dec.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/sys/va/gstvampeg2dec.c b/sys/va/gstvampeg2dec.c index 59af2b9067..51da9d5ca2 100644 --- a/sys/va/gstvampeg2dec.c +++ b/sys/va/gstvampeg2dec.c @@ -557,6 +557,17 @@ gst_va_mpeg2_dec_output_picture (GstMpeg2Decoder * decoder, if (base->copy_frames) gst_va_base_dec_copy_output_buffer (base, frame); + if (picture->buffer_flags != 0) { + gboolean interlaced = + (picture->buffer_flags & GST_VIDEO_BUFFER_FLAG_INTERLACED) != 0; + gboolean tff = (picture->buffer_flags & GST_VIDEO_BUFFER_FLAG_TFF) != 0; + + GST_TRACE_OBJECT (self, + "apply buffer flags 0x%x (interlaced %d, top-field-first %d)", + picture->buffer_flags, interlaced, tff); + GST_BUFFER_FLAG_SET (frame->output_buffer, picture->buffer_flags); + } + gst_mpeg2_picture_unref (picture); return gst_video_decoder_finish_frame (GST_VIDEO_DECODER (self), frame);