[FFmpeg-devel] [PATCH 2/2] lavf: deprecate AVFMT_FLAG_AUTO_BSF

Anton Khirnov anton at khirnov.net
Fri Nov 25 20:00:16 EET 2022


---
 doc/APIchanges              | 3 +++
 libavformat/avformat.h      | 5 ++++-
 libavformat/options_table.h | 4 +++-
 libavformat/version_major.h | 1 +
 4 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/doc/APIchanges b/doc/APIchanges
index ab7ce15faea..5611e012cc3 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -14,6 +14,9 @@ libavutil:     2021-04-27
 
 API changes, most recent first:
 
+2022-12-xx - xxxxxxxxxx - lavf 59 - avformat.h
+  Deprecate AVFMT_FLAG_AUTO_BSF without replacement.
+
 2022-11-xx - xxxxxxxxxx - lavu 57.43.100 - tx.h
   Add AV_TX_FLOAT_DCT, AV_TX_DOUBLE_DCT and AV_TX_INT32_DCT.
 
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 1d97d56ac58..73628cdf2b7 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -1357,7 +1357,10 @@ typedef struct AVFormatContext {
 #endif
 #define AVFMT_FLAG_FAST_SEEK   0x80000 ///< Enable fast, but inaccurate seeks for some formats
 #define AVFMT_FLAG_SHORTEST   0x100000 ///< Stop muxing when the shortest stream stops.
-#define AVFMT_FLAG_AUTO_BSF   0x200000 ///< Add bitstream filters as requested by the muxer
+
+#if FF_API_AUTO_BSF
+#define AVFMT_FLAG_AUTO_BSF   0x200000 ///< deprecated, does nothing
+#endif
 
     /**
      * Maximum number of bytes read from input in order to determine stream
diff --git a/libavformat/options_table.h b/libavformat/options_table.h
index 83e6c6fb3cb..2b6d1b79955 100644
--- a/libavformat/options_table.h
+++ b/libavformat/options_table.h
@@ -52,7 +52,9 @@ static const AVOption avformat_options[] = {
 {"nobuffer", "reduce the latency introduced by optional buffering", 0, AV_OPT_TYPE_CONST, {.i64 = AVFMT_FLAG_NOBUFFER }, 0, INT_MAX, D, "fflags"},
 {"bitexact", "do not write random/volatile data", 0, AV_OPT_TYPE_CONST, { .i64 = AVFMT_FLAG_BITEXACT }, 0, 0, E, "fflags" },
 {"shortest", "stop muxing with the shortest stream", 0, AV_OPT_TYPE_CONST, { .i64 = AVFMT_FLAG_SHORTEST }, 0, 0, E, "fflags" },
-{"autobsf", "add needed bsfs automatically", 0, AV_OPT_TYPE_CONST, { .i64 = AVFMT_FLAG_AUTO_BSF }, 0, 0, E, "fflags" },
+#if FF_API_AUTO_BSF
+{"autobsf", "deprecated, does nothing", 0, AV_OPT_TYPE_CONST, { .i64 = AVFMT_FLAG_AUTO_BSF }, 0, 0, E, "fflags" },
+#endif
 {"seek2any", "allow seeking to non-keyframes on demuxer level when supported", OFFSET(seek2any), AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1, D},
 {"analyzeduration", "specify how many microseconds are analyzed to probe the input", OFFSET(max_analyze_duration), AV_OPT_TYPE_INT64, {.i64 = 0 }, 0, INT64_MAX, D},
 {"cryptokey", "decryption key", OFFSET(key), AV_OPT_TYPE_BINARY, {.dbl = 0}, 0, 0, D},
diff --git a/libavformat/version_major.h b/libavformat/version_major.h
index 86af3ee4a5a..02cbc2bbaa7 100644
--- a/libavformat/version_major.h
+++ b/libavformat/version_major.h
@@ -48,6 +48,7 @@
 #define FF_API_AVSTREAM_CLASS           (LIBAVFORMAT_VERSION_MAJOR > 59)
 #define FF_API_GET_END_PTS              (LIBAVFORMAT_VERSION_MAJOR < 60)
 #define FF_API_AVIODIRCONTEXT           (LIBAVFORMAT_VERSION_MAJOR < 60)
+#define FF_API_AUTO_BSF                 (LIBAVFORMAT_VERSION_MAJOR < 61)
 
 
 #define FF_API_R_FRAME_RATE            1
-- 
2.35.1



More information about the ffmpeg-devel mailing list