Allow hiding the banner.
authorCarl Eugen Hoyos <cehoyos@minerva.hye>
Sat, 28 Dec 2013 04:18:39 +0000 (05:18 +0100)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Sun, 29 Dec 2013 21:57:20 +0000 (22:57 +0100)
Fixes ticket #3246.

cmdutils.c
cmdutils.h
cmdutils_common_opts.h
doc/fftools-common-opts.texi

index fc4b424..dc9bd2c 100644 (file)
@@ -66,6 +66,7 @@ AVDictionary *swr_opts;
 AVDictionary *format_opts, *codec_opts, *resample_opts;
 
 static FILE *report_file;
+int hide_banner = 0;
 
 void init_opts(void)
 {
@@ -491,6 +492,9 @@ void parse_loglevel(int argc, char **argv, const OptionDef *options)
             fflush(report_file);
         }
     }
+    idx = locate_option(argc, argv, options, "hide_banner");
+    if (idx)
+        hide_banner = 1;
 }
 
 static const AVOption *opt_find(void *obj, const char *name, const char *unit,
@@ -1083,7 +1087,7 @@ static void print_buildconf(int flags, int level)
 void show_banner(int argc, char **argv, const OptionDef *options)
 {
     int idx = locate_option(argc, argv, options, "version");
-    if (idx)
+    if (hide_banner || idx)
         return;
 
     print_program_info (INDENT|SHOW_COPYRIGHT, AV_LOG_INFO);
index f4f23ef..d1e1ecb 100644 (file)
@@ -48,6 +48,7 @@ extern AVFormatContext *avformat_opts;
 extern struct SwsContext *sws_opts;
 extern AVDictionary *swr_opts;
 extern AVDictionary *format_opts, *codec_opts, *resample_opts;
+extern int hide_banner;
 
 /**
  * Register a program-specific cleanup routine.
index 685163e..190dba6 100644 (file)
@@ -21,6 +21,7 @@
     { "report"     , 0,        {(void*)opt_report}, "generate a report" },
     { "max_alloc"  , HAS_ARG,  {.func_arg = opt_max_alloc},     "set maximum size of a single allocated block", "bytes" },
     { "cpuflags"   , HAS_ARG | OPT_EXPERT, { .func_arg = opt_cpuflags }, "force specific cpu flags", "flags" },
+    { "hide_banner", OPT_BOOL | OPT_EXPERT, {&hide_banner},     "do not show program banner", "hide_banner" },
 #if CONFIG_OPENCL
     { "opencl_bench", OPT_EXIT, {.func_arg = opt_opencl_bench}, "run benchmark on all OpenCL devices and show results" },
     { "opencl_options", HAS_ARG, {.func_arg = opt_opencl},      "set OpenCL environment options" },
index ff6478a..dcfe9b5 100644 (file)
@@ -194,6 +194,13 @@ to a plain @code{%}
 Errors in parsing the environment variable are not fatal, and will not
 appear in the report.
 
+@item -hide_banner
+Suppress printing banner.
+
+All FFmpeg tools will normally show a copyright notice, build options
+and library versions. This option can be used to suppress printing
+this information.
+
 @item -cpuflags flags (@emph{global})
 Allows setting and clearing cpu flags. This option is intended
 for testing. Do not use it unless you know what you're doing.