From 6ff29343b01923e9b125fe7404ac8701cdfb1fe5 Mon Sep 17 00:00:00 2001 From: "Li, Zhong" Date: Fri, 1 Dec 2017 16:48:45 +0800 Subject: [PATCH] lavc/qsvenc: set HRD buffer size Hypothetical Reference Decoding (HRD) model assumes that data flows into a buffer of the fixed size BufferSizeInKB with a constant bitrate. Smaller BufferSizeInKB means smaller frame size variations, but more difficult to maintain HRD. Signed-off-by: Zhong Li Signed-off-by: Maxym Dmytrychenko --- libavcodec/qsvenc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/qsvenc.c b/libavcodec/qsvenc.c index 9db9eb375c..f6034c443d 100644 --- a/libavcodec/qsvenc.c +++ b/libavcodec/qsvenc.c @@ -503,6 +503,7 @@ static int init_video_param(AVCodecContext *avctx, QSVEncContext *q) #if QSV_HAVE_VCM case MFX_RATECONTROL_VCM: #endif + q->param.mfx.BufferSizeInKB = avctx->rc_buffer_size / 8000; q->param.mfx.InitialDelayInKB = avctx->rc_initial_buffer_occupancy / 1000; q->param.mfx.TargetKbps = avctx->bit_rate / 1000; q->param.mfx.MaxKbps = avctx->rc_max_rate / 1000;