[FFmpeg-devel] [PATCH] avformat/options: Deprecate av_fmt_ctx_get_duration_estimation_method()
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Tue Mar 5 13:01:24 EET 2024
Andreas Rheinhardt:
> 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
>
Will apply this patch tomorrow unless there are objections.
- Andreas
More information about the ffmpeg-devel
mailing list