This flag was added in 492026209 in conjunction with av_demuxer_open() to allow to pass private options to demuxers. It worked as follows: av_open_input_stream() (the predecessor of avformat_open_input()) would not call the read_header function if this flag is set. Instead the user could set private options of the demuxer via the format's private class after avformat_open_input() and then call av_demuxer_open() which called the format's read_header function.
This approach was abandoned in e37f161e and av_demuxer_open() deprecated; instead the AVDictionary based way of passing private options to the demuxer was choosen. Yet AVFMT_FLAG_PRIV_OPT has never been deprecated (and av_demuxer_open() never removed). This commit implements the deprecation. Given that av_demuxer_open() has been deprecated in 2012 and that this flag is useless without it, the flag is slated to be ignored at the next major version bump. Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@gmail.com> --- I really wonder how av_demuxer_open() could survive that long despite having been deprecated more than eight years ago. Is it because it was just deprecated, but without any #if around it to be slated for removal? doc/APIchanges | 4 ++++ libavformat/avformat.h | 2 +- libavformat/version.h | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index f1d7eac2ee..c7ce019b1a 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -15,6 +15,10 @@ libavutil: 2017-10-21 API changes, most recent first: +2020-04-02 - xxxxxxxxxx - lavf 58.43.100 - avformat.h + Deprecate AVFMT_FLAG_PRIV_OPT. It will be ignored after the next + major bump and avformat_open_input() will behave as if it were unset. + 2020-03-29 - xxxxxxxxxx - lavf 58.42.100 - avformat.h av_read_frame() now guarantees to handle uninitialized input packets and to return refcounted packets on success. diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 39b99b4481..b7049b69a0 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1489,7 +1489,7 @@ typedef struct AVFormatContext { #define AVFMT_FLAG_MP4A_LATM 0x8000 ///< Deprecated, does nothing. #endif #define AVFMT_FLAG_SORT_DTS 0x10000 ///< try to interleave outputted packets by dts (using this flag can slow demuxing down) -#define AVFMT_FLAG_PRIV_OPT 0x20000 ///< Enable use of private options by delaying codec open (this could be made default once all code is converted) +#define AVFMT_FLAG_PRIV_OPT 0x20000 ///< Enable use of private options by delaying codec open; deprecated. #if FF_API_LAVF_KEEPSIDE_FLAG #define AVFMT_FLAG_KEEP_SIDE_DATA 0x40000 ///< Deprecated, does nothing. #endif diff --git a/libavformat/version.h b/libavformat/version.h index 18c2f5fec2..493a0b337f 100644 --- a/libavformat/version.h +++ b/libavformat/version.h @@ -32,7 +32,7 @@ // Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium) // Also please add any ticket numbers that you believe might be affected here #define LIBAVFORMAT_VERSION_MAJOR 58 -#define LIBAVFORMAT_VERSION_MINOR 42 +#define LIBAVFORMAT_VERSION_MINOR 43 #define LIBAVFORMAT_VERSION_MICRO 100 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \ -- 2.20.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".