[FFmpeg-devel] [PATCH 3/3] nvenc: check sdk 10.0 ptrs at runtime
Timo Rothenpieler
timo at rothenpieler.org
Wed Jul 15 18:19:08 EEST 2020
On 15.07.2020 16:34, wangbin wrote:
> From: wang-bin <wbsecg1 at gmail.com>
>
> ---
> libavcodec/nvenc.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c
> index cec59f02f3..c421c292c8 100644
> --- a/libavcodec/nvenc.c
> +++ b/libavcodec/nvenc.c
> @@ -1248,11 +1248,12 @@ static av_cold int nvenc_setup_encoder(AVCodecContext *avctx)
> #ifdef NVENC_HAVE_NEW_PRESETS
> ctx->init_encode_params.tuningInfo = ctx->tuning_info;
>
> - nv_status = p_nvenc->nvEncGetEncodePresetConfigEx(ctx->nvencoder,
> - ctx->init_encode_params.encodeGUID,
> - ctx->init_encode_params.presetGUID,
> - ctx->init_encode_params.tuningInfo,
> - &preset_config);
> + if (p_nvenc->nvEncGetEncodePresetConfigEx)
> + nv_status = p_nvenc->nvEncGetEncodePresetConfigEx(ctx->nvencoder,
> + ctx->init_encode_params.encodeGUID,
> + ctx->init_encode_params.presetGUID,
> + ctx->init_encode_params.tuningInfo,
> + &preset_config);
> #endif
> } else {
> #ifdef NVENC_HAVE_NEW_PRESETS
>
Same here. Just not calling that function will lead to weird behaviour
down the chain.
Needs proper handling plus error message.
This will also be the case for a lot of failure cases where non-existent
parameters for the old version are passed to the older driver.
Like, newer profiles, entire new options, ...
More information about the ffmpeg-devel
mailing list