[FFmpeg-devel] [PATCH] nvenc: Propagate desired number of reference frames.

Philip Langdale philipl at overt.org
Sat Jan 24 06:41:23 CET 2015


Signed-off-by: Philip Langdale <philipl at overt.org>
---
 libavcodec/nvenc.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c
index c52beb7..e68bbe9 100644
--- a/libavcodec/nvenc.c
+++ b/libavcodec/nvenc.c
@@ -614,6 +614,11 @@ static av_cold int nvenc_encode_init(AVCodecContext *avctx)
     memcpy(&ctx->encode_config, &preset_config.presetCfg, sizeof(ctx->encode_config));
     ctx->encode_config.version = NV_ENC_CONFIG_VER;
 
+    if (avctx->refs >= 0) {
+        /* 0 means "let the hardware decide" */
+        ctx->encode_config.encodeCodecConfig.h264Config.maxNumRefFrames = avctx->refs;
+    }
+
     /* 0 is intra-only, 1 is I/P only, 2 is one B Frame, 3 two B frames, and so on. */
     ctx->encode_config.frameIntervalP = avctx->max_b_frames + 1;
 
-- 
2.1.0



More information about the ffmpeg-devel mailing list