[FFmpeg-devel] [PATCH v2] ffprobe: Allow unknown format private AVOptions
Derek Buitenhuis
derek.buitenhuis at gmail.com
Sun Jun 28 23:58:09 EEST 2020
This useful, because by ffprobe's very nature, you use it to probe
a file and find out what it is. Requiring every format private option
to be known to the demuxer forces one to run ffprobe twice, if one
wants to use ffprobe in a generic way.
For example, say one wants to probe all user-uploaded files, while
also ignoring edit lists for any MP4s that are uploaded. Currently,
you'd have to run ffprobe twice: once to identify the format, and
once again to actually probe the metadata you want. After this
patch, you could set -ignore_editlist 1 on every call and only
probe once.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis at gmail.com>
---
Changed to just be the main behavior instead of behind an option,
as Michael suggested.
Didn't really know what would be added to ffprobe.texi, though, since
this is no longer an option.
---
fftools/ffprobe.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c
index 5515e1b31b..61191add6b 100644
--- a/fftools/ffprobe.c
+++ b/fftools/ffprobe.c
@@ -2879,10 +2879,8 @@ static int open_input_file(InputFile *ifile, const char *filename,
ifile->fmt_ctx = fmt_ctx;
if (scan_all_pmts_set)
av_dict_set(&format_opts, "scan_all_pmts", NULL, AV_DICT_MATCH_CASE);
- if ((t = av_dict_get(format_opts, "", NULL, AV_DICT_IGNORE_SUFFIX))) {
- av_log(NULL, AV_LOG_ERROR, "Option %s not found.\n", t->key);
- return AVERROR_OPTION_NOT_FOUND;
- }
+ if ((t = av_dict_get(format_opts, "", NULL, AV_DICT_IGNORE_SUFFIX)))
+ av_log(NULL, AV_LOG_WARNING, "Option %s skipped - not known to demuxer.\n", t->key);
if (find_stream_info) {
AVDictionary **opts = setup_find_stream_info_opts(fmt_ctx, codec_opts);
--
2.27.0.rc2
More information about the ffmpeg-devel
mailing list