diff options
author | Jun Zhao <mypopydev@gmail.com> | 2018-03-08 08:50:31 +0300 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2018-03-16 04:09:59 +0300 |
commit | a675eed17538708a4efb90946b83161ec788b36a (patch) | |
tree | 00961c1697b7aff90e4f4dbea53ac91b5ca356e8 | |
parent | 7b5cf0a410760bbd516d5c72cbb867c45017f9a7 (diff) |
ffmpeg: support dump bit stream filter options.
Support dump bit stream filter option in ffmpeg -h full and
ffmpeg -h bsf=FooBar.
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | fftools/cmdutils.c | 17 | ||||
-rw-r--r-- | fftools/ffmpeg_opt.c | 3 |
2 files changed, 19 insertions, 1 deletions
diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c index 0c7d13c27a..f9d87f6724 100644 --- a/fftools/cmdutils.c +++ b/fftools/cmdutils.c @@ -1897,6 +1897,21 @@ static void show_help_filter(const char *name) } #endif +static void show_help_bsf(const char *name) +{ + const AVBitStreamFilter *bsf = av_bsf_get_by_name(name); + + if (!bsf) { + av_log(NULL, AV_LOG_ERROR, "Unknown bit stream filter '%s'.\n", name); + return; + } + + printf("Bit stream filter %s\n", bsf->name); + if (bsf->priv_class) + show_help_children(bsf->priv_class, AV_OPT_FLAG_BSF_PARAM); + printf("\n"); +} + int show_help(void *optctx, const char *opt, const char *arg) { char *topic, *par; @@ -1923,6 +1938,8 @@ int show_help(void *optctx, const char *opt, const char *arg) } else if (!strcmp(topic, "filter")) { show_help_filter(par); #endif + } else if (!strcmp(topic, "bsf")) { + show_help_bsf(par); } else { show_help_default(topic, par); } diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index 1b591d9695..d7a7eb0662 100644 --- a/fftools/ffmpeg_opt.c +++ b/fftools/ffmpeg_opt.c @@ -3114,7 +3114,7 @@ void show_help_default(const char *opt, const char *arg) " -h -- print basic options\n" " -h long -- print more options\n" " -h full -- print all options (including all format and codec specific options, very long)\n" - " -h type=name -- print all options for the named decoder/encoder/demuxer/muxer/filter\n" + " -h type=name -- print all options for the named decoder/encoder/demuxer/muxer/filter/bsf\n" " See man %s for detailed description of the options.\n" "\n", program_name); @@ -3159,6 +3159,7 @@ void show_help_default(const char *opt, const char *arg) #endif show_help_children(swr_get_class(), AV_OPT_FLAG_AUDIO_PARAM); show_help_children(avfilter_get_class(), AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_FILTERING_PARAM); + show_help_children(av_bsf_get_class(), AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_BSF_PARAM); } } |