Commit dd831976 authored by Aaron Levinson's avatar Aaron Levinson Committed by Michael Niedermayer

qsvenc: Use MFXVideoENCODE_Query() to update the parameters

Purpose: Fill out the default/unset parameters with ones actually in use.

Note: Matches the current MediaSDK example code.  This code used to be
present in ffmpeg and was eliminated in revision 1f26a231 on Oct. 31,
2016 (qsv: Merge libav implementation, at
https://github.com/FFmpeg/FFmpeg/commit/1f26a231bb065276cd80ce02957c759f3197edfa#diff-7d84a34d58597bb7aa4b8239dca1f9f8).
Already applied to libav.
Reviewed-by: 's avatarLuca Barbato <lu_zero@gentoo.org>
(cherry picked from commit b22094d7)
Signed-off-by: 's avatarMark Thompson <sw@jkqxz.net>
Signed-off-by: 's avatarAaron Levinson <alevinsn@aracnet.com>
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent 28230a69
......@@ -740,10 +740,18 @@ int ff_qsv_enc_init(AVCodecContext *avctx, QSVEncContext *q)
if (ret < 0)
return ret;
ret = MFXVideoENCODE_Query(q->session, &q->param, &q->param);
if (ret == MFX_WRN_PARTIAL_ACCELERATION) {
av_log(avctx, AV_LOG_WARNING, "Encoder will work with partial HW acceleration\n");
} else if (ret < 0) {
return ff_qsv_print_error(avctx, ret,
"Error querying encoder params");
}
ret = MFXVideoENCODE_QueryIOSurf(q->session, &q->param, &q->req);
if (ret < 0)
return ff_qsv_print_error(avctx, ret,
"Error querying the encoding parameters");
"Error querying (IOSurf) the encoding parameters");
if (opaque_alloc) {
ret = qsv_init_opaque_alloc(avctx, q);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment