X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=cmdutils.c;h=eb60ac487ec070b58df2ef90f248caf0fa8a7a52;hb=c89be82c986f02c504a45d1dfcb4ea5be644fb8e;hp=63d64320ebabffb2867d16ecc6123438a3e9916d;hpb=d35899ccce39e77a3f7fb667bdfc710c605d03a4;p=ffmpeg diff --git a/cmdutils.c b/cmdutils.c index 63d64320eba..eb60ac487ec 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; +static int report_file_level = AV_LOG_DEBUG; int hide_banner = 0; void init_opts(void) @@ -104,8 +105,10 @@ static void log_callback_report(void *ptr, int level, const char *fmt, va_list v av_log_default_callback(ptr, level, fmt, vl); av_log_format_line(ptr, level, fmt, vl2, line, sizeof(line), &print_prefix); va_end(vl2); - fputs(line, report_file); - fflush(report_file); + if (report_file_level >= level) { + fputs(line, report_file); + fflush(report_file); + } } static void (*program_exit)(int ret); @@ -926,6 +929,13 @@ static int init_report(const char *env) av_free(filename_template); filename_template = val; val = NULL; + } else if (!strcmp(key, "level")) { + char *tail; + report_file_level = strtol(val, &tail, 10); + if (*tail) { + av_log(NULL, AV_LOG_FATAL, "Invalid report file level\n"); + exit_program(1); + } } else { av_log(NULL, AV_LOG_ERROR, "Unknown key '%s' in FFREPORT\n", key); } @@ -1105,7 +1115,7 @@ void show_banner(int argc, char **argv, const OptionDef *options) int show_version(void *optctx, const char *opt, const char *arg) { av_log_set_callback(log_callback_help); - print_program_info (0 , AV_LOG_INFO); + print_program_info (SHOW_COPYRIGHT, AV_LOG_INFO); print_all_libs_info(SHOW_VERSION, AV_LOG_INFO); return 0;