[FFmpeg-cvslog] Merge commit '54307b35311e9a871b3d8ecb2b2eecfc16de0163'
James Almer
git at videolan.org
Sat Apr 14 02:39:38 EEST 2018
ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Fri Apr 13 20:38:46 2018 -0300| [bbe95ebdadff24127a7c1c9ccf1e7b71aac96cf8] | committer: James Almer
Merge commit '54307b35311e9a871b3d8ecb2b2eecfc16de0163'
* commit '54307b35311e9a871b3d8ecb2b2eecfc16de0163':
lavc/qsvdec: set complete_frame flags for progressive picture
Merged-by: James Almer <jamrial at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=bbe95ebdadff24127a7c1c9ccf1e7b71aac96cf8
---
libavcodec/qsvdec.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c
index 80e1e645eb..32f1fe79d7 100644
--- a/libavcodec/qsvdec.c
+++ b/libavcodec/qsvdec.c
@@ -323,6 +323,8 @@ static int qsv_decode(AVCodecContext *avctx, QSVContext *q,
bs.DataLength = avpkt->size;
bs.MaxLength = bs.DataLength;
bs.TimeStamp = avpkt->pts;
+ if (avctx->field_order == AV_FIELD_PROGRESSIVE)
+ bs.DataFlag |= MFX_BITSTREAM_COMPLETE_FRAME;
}
sync = av_mallocz(sizeof(*sync));
@@ -506,6 +508,7 @@ int ff_qsv_process_data(AVCodecContext *avctx, QSVContext *q,
pkt->data, pkt->size, pkt->pts, pkt->dts,
pkt->pos);
+ avctx->field_order = q->parser->field_order;
/* TODO: flush delayed frames on reinit */
if (q->parser->format != q->orig_pix_fmt ||
FFALIGN(q->parser->coded_width, 16) != FFALIGN(avctx->coded_width, 16) ||
@@ -530,7 +533,6 @@ int ff_qsv_process_data(AVCodecContext *avctx, QSVContext *q,
avctx->height = q->parser->height;
avctx->coded_width = FFALIGN(q->parser->coded_width, 16);
avctx->coded_height = FFALIGN(q->parser->coded_height, 16);
- avctx->field_order = q->parser->field_order;
avctx->level = q->avctx_internal->level;
avctx->profile = q->avctx_internal->profile;
======================================================================
More information about the ffmpeg-cvslog
mailing list