PR #23150 opened by Diego de Souza (ddesouza) URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/23150 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/23150.patch
The NVENC driver currently forces deltaQ_v_ac equal to deltaQ_u_ac for AV1, so crQPIndexOffset is silently ignored. The SDK header annotates the field as "for future use only" (nvEncodeAPI.h, NV_ENC_RC_PARAMS). Reported in #22737 Signed-off-by: Diego de Souza <[email protected]> >From 4f60b9efd774e11214e59713929c2c09c5cd1534 Mon Sep 17 00:00:00 2001 From: Diego de Souza <[email protected]> Date: Tue, 19 May 2026 09:50:10 +0200 Subject: [PATCH] avcodec/nvenc: warn when av1_nvenc qp_cr_offset differs from qp_cb_offset The NVENC driver currently forces deltaQ_v_ac equal to deltaQ_u_ac for AV1, so crQPIndexOffset is silently ignored. The SDK header annotates the field as "for future use only" (nvEncodeAPI.h, NV_ENC_RC_PARAMS). Reported in #22737 Signed-off-by: Diego de Souza <[email protected]> --- libavcodec/nvenc.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c index 7b9f7260df..e9ca6e01fd 100644 --- a/libavcodec/nvenc.c +++ b/libavcodec/nvenc.c @@ -1162,6 +1162,13 @@ static av_cold int nvenc_setup_rate_control(AVCodecContext *avctx) #ifdef NVENC_HAVE_QP_CHROMA_OFFSETS ctx->encode_config.rcParams.cbQPIndexOffset = ctx->qp_cb_offset; ctx->encode_config.rcParams.crQPIndexOffset = ctx->qp_cr_offset; + + if (avctx->codec->id == AV_CODEC_ID_AV1 && + ctx->qp_cr_offset != ctx->qp_cb_offset) + av_log(avctx, AV_LOG_WARNING, + "av1_nvenc: qp_cr_offset is currently ignored by the NVENC driver " + "(deltaQ_v_ac is forced equal to deltaQ_u_ac); only qp_cb_offset " + "takes effect.\n"); #else if (ctx->qp_cb_offset || ctx->qp_cr_offset) av_log(avctx, AV_LOG_WARNING, "Failed setting QP CB/CR offsets, SDK 11.1 or greater required at compile time.\n"); -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
