From 62d75662391733cb97edfe1ed000afe2360bc0f3 Mon Sep 17 00:00:00 2001 From: Stefano Sabatini Date: Sat, 12 Dec 2009 16:18:11 +0000 Subject: Implement a -filters option, listing all the available libavfilter filters. Currently filters are not registered, so the option will show none. Originally committed as revision 20807 to svn://svn.ffmpeg.org/ffmpeg/trunk --- cmdutils.c | 9 +++++++++ cmdutils.h | 6 ++++++ cmdutils_common_opts.h | 1 + doc/ffmpeg-doc.texi | 3 +++ doc/ffplay-doc.texi | 2 ++ doc/ffserver-doc.texi | 2 ++ 6 files changed, 23 insertions(+) diff --git a/cmdutils.c b/cmdutils.c index 5ed70f07e4..b87eea363a 100644 --- a/cmdutils.c +++ b/cmdutils.c @@ -560,6 +560,15 @@ void show_protocols(void) printf("Frame size, frame rate abbreviations:\n ntsc pal qntsc qpal sntsc spal film ntsc-film sqcif qcif cif 4cif\n"); } +void show_filters(void) +{ + AVFilter **filter = NULL; + + printf("Filters:\n"); + while ((filter = av_filter_next(filter)) && *filter) + printf("%-16s %s\n", (*filter)->name, (*filter)->description); +} + int read_yesno(void) { int c = getchar(); diff --git a/cmdutils.h b/cmdutils.h index efc8d02602..c2734a1e31 100644 --- a/cmdutils.h +++ b/cmdutils.h @@ -163,6 +163,12 @@ void show_formats(void); */ void show_codecs(void); +/** + * Prints a listing containing all the filters supported by the + * program. + */ +void show_filters(void); + /** * Prints a listing containing all the bit stream filters supported by the * program. diff --git a/cmdutils_common_opts.h b/cmdutils_common_opts.h index af324e0b9d..1c89bba198 100644 --- a/cmdutils_common_opts.h +++ b/cmdutils_common_opts.h @@ -5,4 +5,5 @@ { "codecs" , OPT_EXIT, {(void*)show_codecs }, "show available codecs" }, { "bsfs" , OPT_EXIT, {(void*)show_bsfs }, "show available bit stream filters" }, { "protocols", OPT_EXIT, {(void*)show_protocols}, "show available protocols" }, + { "filters", OPT_EXIT, {(void*)show_filters }, "show available filters" }, { "loglevel", HAS_ARG | OPT_FUNC2, {(void*)opt_loglevel}, "set libav* logging level", "loglevel" }, diff --git a/doc/ffmpeg-doc.texi b/doc/ffmpeg-doc.texi index d6116167f3..f79b7497cd 100644 --- a/doc/ffmpeg-doc.texi +++ b/doc/ffmpeg-doc.texi @@ -270,6 +270,9 @@ Show available bitstream filters. @item -protocols Show available protocols. +@item -filters +Show available libavfilter filters. + @item -f @var{fmt} Force format. diff --git a/doc/ffplay-doc.texi b/doc/ffplay-doc.texi index 4e06a9c1e6..f7b8f87f33 100644 --- a/doc/ffplay-doc.texi +++ b/doc/ffplay-doc.texi @@ -43,6 +43,8 @@ Show available codecs. Show available bitstream filters. @item -protocols Show available protocols. +@item -filters +Show available libavfilter filters. @item -x @var{width} Force displayed width. @item -y @var{height} diff --git a/doc/ffserver-doc.texi b/doc/ffserver-doc.texi index 1a635daa31..aabf33050b 100644 --- a/doc/ffserver-doc.texi +++ b/doc/ffserver-doc.texi @@ -249,6 +249,8 @@ Show available codecs. Show available bitstream filters. @item -protocols Show available protocols. +@item -filters +Show available libavfilter filters. @item -h Show help. @item -loglevel @var{loglevel} -- cgit v1.2.3