From b4c89c90ffc723c38282fbf061bf65da67e011b2 Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos Date: Sat, 28 Dec 2013 05:18:39 +0100 Subject: [PATCH 1/2] Allow hiding the banner. Fixes ticket #3246. --- cmdutils.c | 6 +++++- cmdutils.h | 1 + cmdutils_common_opts.h | 1 + doc/fftools-common-opts.texi | 7 +++++++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/cmdutils.c b/cmdutils.c index fc4b42440e..dc9bd2cc00 100644 --- a/cmdutils.c +++ b/cmdutils.c @@ -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); diff --git a/cmdutils.h b/cmdutils.h index f4f23ef835..d1e1ecbe7e 100644 --- a/cmdutils.h +++ b/cmdutils.h @@ -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. diff --git a/cmdutils_common_opts.h b/cmdutils_common_opts.h index 685163e7d1..190dba674f 100644 --- a/cmdutils_common_opts.h +++ b/cmdutils_common_opts.h @@ -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" }, diff --git a/doc/fftools-common-opts.texi b/doc/fftools-common-opts.texi index ff6478a1de..dcfe9b5a35 100644 --- a/doc/fftools-common-opts.texi +++ b/doc/fftools-common-opts.texi @@ -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. From de40905f55cdd668b50a143f8e30936d22a09a37 Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos Date: Sun, 29 Dec 2013 23:18:10 +0100 Subject: [PATCH 2/2] Fix condition for transparency warning in xsub encoder. --- libavcodec/xsubenc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/xsubenc.c b/libavcodec/xsubenc.c index 53f4d6c3a9..707085488c 100644 --- a/libavcodec/xsubenc.c +++ b/libavcodec/xsubenc.c @@ -142,7 +142,7 @@ static int xsub_encode(AVCodecContext *avctx, unsigned char *buf, av_log(avctx, AV_LOG_WARNING, "No more than 4 subtitle colors supported (%d found.)\n", h->rects[0]->nb_colors); // TODO: Palette swapping if color zero is not transparent - if (((uint32_t *)h->rects[0]->pict.data[1])[0] & 0xff) + if (((uint32_t *)h->rects[0]->pict.data[1])[0] & 0xff000000) av_log(avctx, AV_LOG_WARNING, "Color index 0 is not transparent. Transparency will be messed up.\n"); if (make_tc(startTime, start_tc) || make_tc(endTime, end_tc)) {