[FFmpeg-cvslog] lavf: add a flag for experimental (de)muxers
Anton Khirnov
git at videolan.org
Mon Jan 3 21:42:40 EET 2022
ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Sun Jan 2 18:38:02 2022 +0100| [be97d2a825a12c9c01a61b985d44eb7424628fd6] | committer: Anton Khirnov
lavf: add a flag for experimental (de)muxers
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=be97d2a825a12c9c01a61b985d44eb7424628fd6
---
doc/APIchanges | 3 +++
libavformat/avformat.h | 7 +++++++
libavformat/format.c | 2 ++
libavformat/version.h | 2 +-
4 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/doc/APIchanges b/doc/APIchanges
index 670a59329e..29c235630e 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -14,6 +14,9 @@ libavutil: 2021-04-27
API changes, most recent first:
+2022-01-xx - xxxxxxxxxx - lavf 59.13.100 - avformat.h
+ Add AVFMT_EXPERIMENTAL flag.
+
2021-12-xx - xxxxxxxxxx - lavu 57.13.100 - hwcontext_videotoolbox.h
Add av_vt_pixbuf_set_attachments
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 70b36d7682..6ce367e854 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -463,6 +463,13 @@ typedef struct AVProbeData {
/// Demuxer will use avio_open, no opened file should be provided by the caller.
#define AVFMT_NOFILE 0x0001
#define AVFMT_NEEDNUMBER 0x0002 /**< Needs '%d' in filename. */
+/**
+ * The muxer/demuxer is experimental and should be used with caution.
+ *
+ * - demuxers: will not be selected automatically by probing, must be specified
+ * explicitly.
+ */
+#define AVFMT_EXPERIMENTAL 0x0004
#define AVFMT_SHOW_IDS 0x0008 /**< Show format stream IDs numbers. */
#define AVFMT_GLOBALHEADER 0x0040 /**< Format wants global header. */
#define AVFMT_NOTIMESTAMPS 0x0080 /**< Format does not need / have any timestamps. */
diff --git a/libavformat/format.c b/libavformat/format.c
index 387627009e..52b85c16a2 100644
--- a/libavformat/format.c
+++ b/libavformat/format.c
@@ -158,6 +158,8 @@ const AVInputFormat *av_probe_input_format3(const AVProbeData *pd,
}
while ((fmt1 = av_demuxer_iterate(&i))) {
+ if (fmt1->flags & AVFMT_EXPERIMENTAL)
+ continue;
if (!is_opened == !(fmt1->flags & AVFMT_NOFILE) && strcmp(fmt1->name, "image2"))
continue;
score = 0;
diff --git a/libavformat/version.h b/libavformat/version.h
index f372380dcf..79eb22c230 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 59
-#define LIBAVFORMAT_VERSION_MINOR 12
+#define LIBAVFORMAT_VERSION_MINOR 13
#define LIBAVFORMAT_VERSION_MICRO 100
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
More information about the ffmpeg-cvslog
mailing list