mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-01-12 10:29:39 +00:00
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 revision1f26a23
on Oct. 31, 2016 (qsv: Merge libav implementation, at1f26a231bb (diff-7d84a34d58597bb7aa4b8239dca1f9f8)
). Already applied to libav. Reviewed-by: Luca Barbato <lu_zero@gentoo.org> (cherry picked from commitb22094d749
) Signed-off-by: Mark Thompson <sw@jkqxz.net> Signed-off-by: Aaron Levinson <alevinsn@aracnet.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
28230a690e
commit
dd8319767e
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user