[FFmpeg-devel] [PATCH 2/2] cmdutils: support filters in the help topic system.

Stefano Sabatini stefasab at gmail.com
Sun Mar 31 18:30:03 CEST 2013


On date Sunday 2013-03-31 15:06:00 +0200, Clément Bœsch encoded:
> ---
>  cmdutils.c | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
> 
> diff --git a/cmdutils.c b/cmdutils.c
> index ca1c965..22f7590 100644
> --- a/cmdutils.c
> +++ b/cmdutils.c
> @@ -1606,6 +1606,28 @@ static void show_help_muxer(const char *name)
>          show_help_children(fmt->priv_class, AV_OPT_FLAG_ENCODING_PARAM);
>  }
>  
> +static void show_help_filter(const char *name)
> +{
> +    const AVFilter *filter;
> +
> +    if (!name) {
> +        av_log(NULL, AV_LOG_ERROR, "No filter name specified.\n");
> +        return;
> +    }
> +    filter = avfilter_get_by_name(name);
> +    if (!filter) {
> +        av_log(NULL, AV_LOG_ERROR, "Filter '%s' not found.\n", name);

Note: incomplete sentence are usually not terminated by ".", keep it
for consistency with the other functions though.

> +        return;
> +    }
> +    printf("Filter %s\n", filter->name);
> +    if (filter->description)
> +        printf("  %s\n", filter->description);
> +    if (filter->priv_class)
> +        show_help_children(filter->priv_class, AV_OPT_FLAG_FILTERING_PARAM);
> +    else
> +        printf("No AVOption available\n");

To use "AVOption" doesn't seem like a great idea (or we should start
to fill user-documentatio with silly API jargon), but keep it again
for consistency.

> +}
> +
>  int show_help(void *optctx, const char *opt, const char *arg)
>  {
>      char *topic, *par;
> @@ -1626,6 +1648,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, "filter")) {
> +        show_help_filter(par);
>      } else {
>          show_help_default(topic, par);
>      }

Should be probably advertised in the documentation.

LGTM, thanks.
-- 
FFmpeg = Forgiving & Friendly Most Programmable Ecletic Gadget


More information about the ffmpeg-devel mailing list