[FFmpeg-devel] [PATCH v2 1/1] avformat/demux: Add durationprobesize AVOption

Anton Khirnov anton at khirnov.net
Tue Mar 5 16:59:45 EET 2024


Quoting Nicolas Gaullier (2024-03-05 13:07:51)
> diff --git a/doc/APIchanges b/doc/APIchanges
> index 7d46ebb006..548c91effe 100644
> --- a/doc/APIchanges
> +++ b/doc/APIchanges
> @@ -2,6 +2,9 @@ The last version increases of all libraries were on 2023-02-09
>  
>  API changes, most recent first:
>  
> +2024-03-05 - xxxxxxxxxx - lavf 60.23.100 - options_table.h
> +  Add AVOption durationprobesize

This is wrong:
* options_table.h is not a public header, so it has no meaning for API
  users
* the main thing that should be mentioned is the AVFormatContext field,
  we usually do not mention avoptions here

> +
>  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/doc/formats.texi b/doc/formats.texi
> index 69fc1457a4..b9feef5d15 100644
> --- a/doc/formats.texi
> +++ b/doc/formats.texi
> @@ -228,6 +228,19 @@ would require too many resources due to a large number of streams.
>  Skip estimation of input duration when calculated using PTS.
>  At present, applicable for MPEG-PS and MPEG-TS.
>  
> + at item durationprobesize @var{integer} (@emph{input})
> +Set probing size in bytes for estimating durations when calculated using PTS.

I don't understand what 'calculated using PTS' is supposed to mean.

> diff --git a/libavformat/avformat.h b/libavformat/avformat.h
> index f4506f4cf1..7b714f3c65 100644
> --- a/libavformat/avformat.h
> +++ b/libavformat/avformat.h
> @@ -1994,6 +1994,15 @@ typedef struct AVFormatContext {
>       * Freed by libavformat in avformat_free_context().
>       */
>      AVStreamGroup **stream_groups;
> +
> +    /**
> +     * Maximum number of bytes read from input in order to determine stream durations
> +     * when using estimate_timings_from_pts in avformat_find_stream_info().
> +     *
> +     * - encoding: unused
> +     * - decoding: set by user
> +     */
> +    int64_t duration_probesize;

Presumably 0 means some special behaviour? The documentation should
say so.

-- 
Anton Khirnov


More information about the ffmpeg-devel mailing list