[FFmpeg-devel] [PATCH v2] avformat/format: make experimental flag works for muxer

Zhao Zhili quinkblack at foxmail.com
Fri Jun 6 07:44:39 EEST 2025


From: Zhao Zhili <zhilizhao at tencent.com>

---
 libavformat/avformat.h | 3 +--
 libavformat/format.c   | 2 ++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 2034d2aecc..441e31bc2f 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -470,8 +470,7 @@ typedef struct AVProbeData {
 /**
  * The muxer/demuxer is experimental and should be used with caution.
  *
- * - demuxers: will not be selected automatically by probing, must be specified
- *             explicitly.
+ * It will not be selected automatically, and must be specified explicitly.
  */
 #define AVFMT_EXPERIMENTAL  0x0004
 #define AVFMT_SHOW_IDS      0x0008 /**< Show format stream IDs numbers. */
diff --git a/libavformat/format.c b/libavformat/format.c
index 71018ea6ab..516925e7e4 100644
--- a/libavformat/format.c
+++ b/libavformat/format.c
@@ -95,6 +95,8 @@ const AVOutputFormat *av_guess_format(const char *short_name, const char *filena
     /* Find the proper file type. */
     score_max = 0;
     while ((fmt = av_muxer_iterate(&i))) {
+        if (fmt->flags & AVFMT_EXPERIMENTAL && !short_name)
+            continue;
         score = 0;
         if (fmt->name && short_name && av_match_name(short_name, fmt->name))
             score += 100;
-- 
2.46.0



More information about the ffmpeg-devel mailing list