> 在 2019年11月27日,12:52,Limin Wang <[email protected]> 写道: > > On Wed, Nov 27, 2019 at 11:11:58AM +0800, Steven Liu wrote: >> Signed-off-by: Steven Liu <[email protected]> >> --- >> fftools/cmdutils.c | 18 ++++++++++++++++++ >> fftools/ffmpeg_opt.c | 2 +- >> 2 files changed, 19 insertions(+), 1 deletion(-) >> >> diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c >> index 84f98b7c04..96b823f74a 100644 >> --- a/fftools/cmdutils.c >> +++ b/fftools/cmdutils.c >> @@ -1870,6 +1870,22 @@ static void show_help_demuxer(const char *name) >> show_help_children(fmt->priv_class, AV_OPT_FLAG_DECODING_PARAM); >> } >> >> +static void show_help_protocol(const char *name) >> +{ >> + const AVClass *proto_class = avio_protocol_get_class(name); >> + >> + printf("Protocol [%s]:\n" >> + " D. = Input supported\n" >> + " .E = Output supported\n" >> + " --\n", name); > > It's better to move the print message after the next NULL pointer checking. I think i should remove it, because the encoder/muxer/decoder/demuxer have no this message too. > >> + if (!proto_class) { >> + av_log(NULL, AV_LOG_ERROR, "Unknown protocol '%s'.\n", name); >> + return; >> + } >> + >> + show_help_children(proto_class, AV_OPT_FLAG_DECODING_PARAM | >> AV_OPT_FLAG_ENCODING_PARAM); >> +} >> + >> static void show_help_muxer(const char *name) >> { >> const AVCodecDescriptor *desc; >> @@ -2000,6 +2016,8 @@ int show_help(void *optctx, const char *opt, const >> char *arg) >> show_help_demuxer(par); >> } else if (!strcmp(topic, "muxer")) { >> show_help_muxer(par); >> + } else if (!strcmp(topic, "protocol")) { >> + show_help_protocol(par); >> #if CONFIG_AVFILTER >> } else if (!strcmp(topic, "filter")) { >> show_help_filter(par); >> diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c >> index 71063cc443..8d73fa8a78 100644 >> --- a/fftools/ffmpeg_opt.c >> +++ b/fftools/ffmpeg_opt.c >> @@ -3194,7 +3194,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/bsf\n" >> + " -h type=name -- print all options for the named >> decoder/encoder/demuxer/muxer/filter/bsf/protocol\n" >> " See man %s for detailed description of the options.\n" >> "\n", program_name); >> >> -- >> 2.15.1 >> >> >> >> _______________________________________________ >> ffmpeg-devel mailing list >> [email protected] >> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel >> >> To unsubscribe, visit link above, or email >> [email protected] with subject "unsubscribe". > _______________________________________________ > ffmpeg-devel mailing list > [email protected] > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > [email protected] with subject "unsubscribe".
Thanks Steven _______________________________________________ ffmpeg-devel mailing list [email protected] https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
