[FFmpeg-devel] [PATCH] avformat/options: Deprecate av_fmt_ctx_get_duration_estimation_method()

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Mon Mar 4 00:36:45 EET 2024


Forgotten in b7785d10b00c88029d8af7dbddac09ab0d6f2b7f.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 doc/APIchanges              | 4 ++++
 libavformat/avformat.h      | 4 ++++
 libavformat/options.c       | 2 ++
 libavformat/version_major.h | 1 +
 4 files changed, 11 insertions(+)

diff --git a/doc/APIchanges b/doc/APIchanges
index 7d46ebb006..a72ec3553e 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -2,6 +2,10 @@ The last version increases of all libraries were on 2023-02-09
 
 API changes, most recent first:
 
+2024-03-03 - xxxxxxxxxx - lavf 60.xx.100 - avformat.h
+  Deprecate av_fmt_ctx_get_duration_estimation_method().
+  The relevant field is public and needs no getter to access.
+
 2024-02-28 - xxxxxxxxxx - swr   4.14.100 - swresample.h
   swr_convert() now accepts arrays of const pointers (to input and output).
 
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index f4506f4cf1..af064b4dbb 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -2008,12 +2008,16 @@ typedef struct AVFormatContext {
  */
 void av_format_inject_global_side_data(AVFormatContext *s);
 
+#if FF_API_GET_DUR_ESTIMATE_METHOD
 /**
  * Returns the method used to set ctx->duration.
  *
  * @return AVFMT_DURATION_FROM_PTS, AVFMT_DURATION_FROM_STREAM, or AVFMT_DURATION_FROM_BITRATE.
+ * @deprecated duration_estimation_method is public and can be read directly.
  */
+attribute_deprecated
 enum AVDurationEstimationMethod av_fmt_ctx_get_duration_estimation_method(const AVFormatContext* ctx);
+#endif
 
 /**
  * @defgroup lavf_core Core functions
diff --git a/libavformat/options.c b/libavformat/options.c
index cd7e4cea9c..0b3e9775d9 100644
--- a/libavformat/options.c
+++ b/libavformat/options.c
@@ -198,10 +198,12 @@ FF_ENABLE_DEPRECATION_WARNINGS
     return s;
 }
 
+#if FF_API_GET_DUR_ESTIMATE_METHOD
 enum AVDurationEstimationMethod av_fmt_ctx_get_duration_estimation_method(const AVFormatContext* ctx)
 {
     return ctx->duration_estimation_method;
 }
+#endif
 
 const AVClass *avformat_get_class(void)
 {
diff --git a/libavformat/version_major.h b/libavformat/version_major.h
index 224fdacf23..c488188344 100644
--- a/libavformat/version_major.h
+++ b/libavformat/version_major.h
@@ -50,6 +50,7 @@
 #define FF_API_ALLOW_FLUSH              (LIBAVFORMAT_VERSION_MAJOR < 61)
 #define FF_API_AVSTREAM_SIDE_DATA       (LIBAVFORMAT_VERSION_MAJOR < 61)
 
+#define FF_API_GET_DUR_ESTIMATE_METHOD  (LIBAVFORMAT_VERSION_MAJOR < 62)
 
 #define FF_API_R_FRAME_RATE            1
 
-- 
2.40.1



More information about the ffmpeg-devel mailing list