summaryrefslogtreecommitdiff
path: root/libavcodec/qsvenc_h264.c
diff options
context:
space:
mode:
authorHaihao Xiang <haihao.xiang@intel.com>2022-09-01 10:12:57 +0800
committerHaihao Xiang <haihao.xiang@intel.com>2022-09-07 14:01:06 +0800
commita5b6e292271f18d309389e7672e362332dc7dd7c (patch)
tree5e933bc9e4e8f6b5ed1345da38c5c926730eb35c /libavcodec/qsvenc_h264.c
parentff6f2c558640bcb6ee9f6b17f259645c4193151b (diff)
downloadffmpeg-a5b6e292271f18d309389e7672e362332dc7dd7c.tar.gz
lavc/qsvenc: use VBR if maxrate is not specified on Windows
Currently AVBR is disabled and VBR is the default method if maxrate is not specified on Linux, but AVBR is the default one if maxrate is not specified on Windows. In order to make user experience better accross Linux and Windows, use VBR by default on Windows if maxrate is not specified. User need to set both avbr_accuracy and avbr_convergence to non-zero explicitly and not to specify maxrate if AVBR is expected. In addition, AVBR works for H264 and HEVC only in the SDK. $ ffmpeg.exe -v verbose -f lavfi -i yuvtestsrc -vf "format=nv12" -c:v vp9_qsv -f null -
Diffstat (limited to 'libavcodec/qsvenc_h264.c')
-rw-r--r--libavcodec/qsvenc_h264.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c
index 1bbdc45203..3fae8f0200 100644
--- a/libavcodec/qsvenc_h264.c
+++ b/libavcodec/qsvenc_h264.c
@@ -115,6 +115,7 @@ static const AVOption options[] = {
QSV_OPTION_LOW_DELAY_BRC
QSV_OPTION_MAX_MIN_QP
QSV_OPTION_SCENARIO
+ QSV_OPTION_AVBR
{ "cavlc", "Enable CAVLC", OFFSET(qsv.cavlc), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE },
#if QSV_HAVE_VCM