2 Jan 2022, 18:46 by an...@khirnov.net: > --- > 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 917b9ffa5d..29dcce352b 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, \ >
You should add it in libavformat/options_table.h too. Apart from that, it looks fine. Should we move muxers previously behind strict_std_compliance > experimental like scd behind this flag or would that be an API breakage? _______________________________________________ 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".