[FFmpeg-devel] [PATCH] hw_base_encode: Support refs option to limit number of references (PR #20175)

nowrep code at ffmpeg.org
Fri Aug 8 15:30:36 EEST 2025


PR #20175 opened by nowrep
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20175
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20175.patch


From 5d7fdc99c2307072b702d9376830a19ed4c6096a Mon Sep 17 00:00:00 2001
From: David Rosca <nowrep at gmail.com>
Date: Wed, 25 Jun 2025 08:46:23 +0200
Subject: [PATCH] hw_base_encode: Support refs option to limit number of
 references

---
 libavcodec/hw_base_encode.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libavcodec/hw_base_encode.c b/libavcodec/hw_base_encode.c
index 33a30c8d10..927aeb4bad 100644
--- a/libavcodec/hw_base_encode.c
+++ b/libavcodec/hw_base_encode.c
@@ -666,6 +666,11 @@ int ff_hw_base_init_gop_structure(FFHWBaseEncodeContext *ctx, AVCodecContext *av
     ctx->ref_l0 = FFMIN(ref_l0, MAX_PICTURE_REFERENCES);
     ctx->ref_l1 = FFMIN(ref_l1, MAX_PICTURE_REFERENCES);
 
+    if (avctx->refs > 0) {
+        ctx->ref_l0 = FFMIN(ctx->ref_l0, avctx->refs);
+        ctx->ref_l1 = FFMIN(ctx->ref_l1, avctx->refs);
+    }
+
     if (flags & FF_HW_FLAG_INTRA_ONLY || avctx->gop_size <= 1) {
         av_log(avctx, AV_LOG_VERBOSE, "Using intra frames only.\n");
         ctx->gop_size = 1;
-- 
2.49.1



More information about the ffmpeg-devel mailing list