[FFmpeg-devel] [PATCH] avcodec/nvenc: add compile time check for outputRecoveryPointSEI for HEVC
James Almer
jamrial at gmail.com
Tue Feb 4 15:31:23 EET 2025
Fixes compilation when using API headers older than 12.0
Signed-off-by: James Almer <jamrial at gmail.com>
---
libavcodec/nvenc.c | 2 ++
libavcodec/nvenc.h | 5 +++++
2 files changed, 7 insertions(+)
diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c
index c359c2bc8a..eea3e8d703 100644
--- a/libavcodec/nvenc.c
+++ b/libavcodec/nvenc.c
@@ -1462,7 +1462,9 @@ static av_cold int nvenc_setup_hevc_config(AVCodecContext *avctx)
hevc->intraRefreshPeriod = cc->gopLength;
hevc->intraRefreshCnt = cc->gopLength - 1;
cc->gopLength = NVENC_INFINITE_GOPLENGTH;
+#ifdef NVENC_HAVE_OUTPUT_RECOVERY_POINT_SEI
hevc->outputRecoveryPointSEI = 1;
+#endif
#ifdef NVENC_HAVE_SINGLE_SLICE_INTRA_REFRESH
hevc->singleSliceIntraRefresh = ctx->single_slice_intra_refresh;
#endif
diff --git a/libavcodec/nvenc.h b/libavcodec/nvenc.h
index 341a242cf7..d395221870 100644
--- a/libavcodec/nvenc.h
+++ b/libavcodec/nvenc.h
@@ -78,6 +78,11 @@ typedef void ID3D11Device;
#define NVENC_HAVE_SINGLE_SLICE_INTRA_REFRESH
#endif
+// SDK 12.0 compile time feature checks
+#if NVENCAPI_CHECK_VERSION(12, 0)
+#define NVENC_HAVE_OUTPUT_RECOVERY_POINT_SEI
+#endif
+
// SDK 12.1 compile time feature checks
#if NVENCAPI_CHECK_VERSION(12, 1)
#define NVENC_NO_DEPRECATED_RC
--
2.48.1
More information about the ffmpeg-devel
mailing list