diff options
author | Haihao Xiang <haihao.xiang@intel.com> | 2022-01-24 16:24:53 +0800 |
---|---|---|
committer | Haihao Xiang <haihao.xiang@intel.com> | 2022-01-29 12:02:52 +0800 |
commit | 8dd507bf0daa826691ea5960ed5634233518c57c (patch) | |
tree | 232be29bb0228e6bf0c94c8078925fa219a73205 /libavcodec/qsvdec.c | |
parent | 80801e570566976195f515216de4403cdcf4f7a3 (diff) | |
download | ffmpeg-8dd507bf0daa826691ea5960ed5634233518c57c.tar.gz |
lavc/qsv: allow to add more parameter buffers to QSV frame
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
Diffstat (limited to 'libavcodec/qsvdec.c')
-rw-r--r-- | libavcodec/qsvdec.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c index d9e0fef1f1..783d252002 100644 --- a/libavcodec/qsvdec.c +++ b/libavcodec/qsvdec.c @@ -423,11 +423,13 @@ static int alloc_frame(AVCodecContext *avctx, QSVContext *q, QSVFrame *frame) frame->surface.Data.MemId = &q->frames_ctx.mids[ret]; } - frame->surface.Data.ExtParam = &frame->ext_param; - frame->surface.Data.NumExtParam = 1; - frame->ext_param = (mfxExtBuffer*)&frame->dec_info; + + frame->surface.Data.ExtParam = frame->ext_param; + frame->surface.Data.NumExtParam = 0; + frame->num_ext_params = 0; frame->dec_info.Header.BufferId = MFX_EXTBUFF_DECODED_FRAME_INFO; frame->dec_info.Header.BufferSz = sizeof(frame->dec_info); + ff_qsv_frame_add_ext_param(avctx, frame, (mfxExtBuffer *)&frame->dec_info); frame->used = 1; |