mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-24 16:22:37 +00:00
cmdutils: allow -h filter=<name> to print information about a filter.
This commit is contained in:
parent
e19e8aeeaa
commit
921046008f
40
cmdutils.c
40
cmdutils.c
@ -1268,6 +1268,44 @@ static void show_help_muxer(const char *name)
|
|||||||
show_help_children(fmt->priv_class, AV_OPT_FLAG_ENCODING_PARAM);
|
show_help_children(fmt->priv_class, AV_OPT_FLAG_ENCODING_PARAM);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void show_help_filter(const char *name)
|
||||||
|
{
|
||||||
|
const AVFilter *f = avfilter_get_by_name(name);
|
||||||
|
int i, count;
|
||||||
|
|
||||||
|
if (!name) {
|
||||||
|
av_log(NULL, AV_LOG_ERROR, "No filter name specified.\n");
|
||||||
|
return;
|
||||||
|
} else if (!f) {
|
||||||
|
av_log(NULL, AV_LOG_ERROR, "Unknown filter '%s'.\n", name);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("Filter %s [%s]:\n", f->name, f->description);
|
||||||
|
|
||||||
|
printf(" Inputs:\n");
|
||||||
|
count = avfilter_pad_count(f->inputs);
|
||||||
|
for (i = 0; i < count; i++) {
|
||||||
|
printf(" %d %s (%s)\n", i, avfilter_pad_get_name(f->inputs, i),
|
||||||
|
media_type_string(avfilter_pad_get_type(f->inputs, i)));
|
||||||
|
}
|
||||||
|
if (f->flags & AVFILTER_FLAG_DYNAMIC_INPUTS)
|
||||||
|
printf(" dynamic (depending on the options)\n");
|
||||||
|
|
||||||
|
printf(" Outputs:\n");
|
||||||
|
count = avfilter_pad_count(f->outputs);
|
||||||
|
for (i = 0; i < count; i++) {
|
||||||
|
printf(" %d %s (%s)\n", i, avfilter_pad_get_name(f->outputs, i),
|
||||||
|
media_type_string(avfilter_pad_get_type(f->outputs, i)));
|
||||||
|
}
|
||||||
|
if (f->flags & AVFILTER_FLAG_DYNAMIC_OUTPUTS)
|
||||||
|
printf(" dynamic (depending on the options)\n");
|
||||||
|
|
||||||
|
if (f->priv_class)
|
||||||
|
show_help_children(f->priv_class, AV_OPT_FLAG_VIDEO_PARAM |
|
||||||
|
AV_OPT_FLAG_AUDIO_PARAM);
|
||||||
|
}
|
||||||
|
|
||||||
int show_help(void *optctx, const char *opt, const char *arg)
|
int show_help(void *optctx, const char *opt, const char *arg)
|
||||||
{
|
{
|
||||||
char *topic, *par;
|
char *topic, *par;
|
||||||
@ -1288,6 +1326,8 @@ int show_help(void *optctx, const char *opt, const char *arg)
|
|||||||
show_help_demuxer(par);
|
show_help_demuxer(par);
|
||||||
} else if (!strcmp(topic, "muxer")) {
|
} else if (!strcmp(topic, "muxer")) {
|
||||||
show_help_muxer(par);
|
show_help_muxer(par);
|
||||||
|
} else if (!strcmp(topic, "filter")) {
|
||||||
|
show_help_filter(par);
|
||||||
} else {
|
} else {
|
||||||
show_help_default(topic, par);
|
show_help_default(topic, par);
|
||||||
}
|
}
|
||||||
|
@ -74,6 +74,10 @@ Print detailed information about the demuxer named @var{demuxer_name}. Use the
|
|||||||
Print detailed information about the muxer named @var{muxer_name}. Use the
|
Print detailed information about the muxer named @var{muxer_name}. Use the
|
||||||
@option{-formats} option to get a list of all muxers and demuxers.
|
@option{-formats} option to get a list of all muxers and demuxers.
|
||||||
|
|
||||||
|
@item filter=@var{filter_name}
|
||||||
|
Print detailed information about the filter name @var{filter_name}. Use the
|
||||||
|
@option{-filters} option to get a list of all filters.
|
||||||
|
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@item -version
|
@item -version
|
||||||
|
Loading…
Reference in New Issue
Block a user