From patchwork Wed Nov 27 05:57:02 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liu Steven X-Patchwork-Id: 16435 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 243F6447307 for ; Wed, 27 Nov 2019 07:57:34 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0C7A068B07B; Wed, 27 Nov 2019 07:57:34 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtpproxy21.qq.com (unknown [203.205.195.102]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7390668B07B for ; Wed, 27 Nov 2019 07:57:27 +0200 (EET) X-QQ-mid: bizesmtp17t1574834232to5s3oay Received: from localhost (unknown [47.90.47.25]) by esmtp6.qq.com (ESMTP) with id ; Wed, 27 Nov 2019 13:57:12 +0800 (CST) X-QQ-SSF: 01100000002000K0ZSF1000A0000000 X-QQ-FEAT: PML9g4LxpBq2PB0Ro/Yh8+smNS5RJufDlN4jOsiaIpkwckG2EpsKKaCvLx/AT bhtp/qOvmENh6CY9Z5wdc2jyl4S3SuzWuxaHvHTXvFQ8lY9opOpf4TxraDwyBZrPxoCACPd MRO7Op+ELCNB+z3ndnkYttVS6WO8QCabZLHm5KsUK/3HC6PoJAyFY5NkJJJexFr/CK4aeoF mFRpvAxgtwbXkNX6pJIKYvrtTH24RKOoa+M8ydCmsKZNR+3fItoxVbNn7aHs1A3B0EooRqq ZVlujmnLJBKdrc30Ns4YHKMHL5FYY2taM3TvGGEY6S37RTD1OI0Z/BrFMOWYmEWVJVmuQCw P59/Cim X-QQ-GoodBg: 0 From: Steven Liu To: ffmpeg-devel@ffmpeg.org Date: Wed, 27 Nov 2019 13:57:02 +0800 Message-Id: <20191127055702.20238-1-lq@chinaffmpeg.org> X-Mailer: git-send-email 2.10.1.382.ga23ca1b.dirty X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:chinaffmpeg.org:qybgforeign:qybgforeign6 X-QQ-Bgrelay: 1 Subject: [FFmpeg-devel] [PATCH v3 2/2] cmdutils: add show_help_protocol for get protocol options X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Steven Liu MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Steven Liu --- fftools/cmdutils.c | 14 ++++++++++++++ fftools/ffmpeg_opt.c | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c index 84f98b7c04..0e1bb4dbb6 100644 --- a/fftools/cmdutils.c +++ b/fftools/cmdutils.c @@ -1870,6 +1870,18 @@ 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); + + 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 +2012,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);