Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmdutils.c11
-rw-r--r--cmdutils.h2
-rw-r--r--cmdutils_common_opts.h1
3 files changed, 14 insertions, 0 deletions
diff --git a/cmdutils.c b/cmdutils.c
index f696700142..248462fd80 100644
--- a/cmdutils.c
+++ b/cmdutils.c
@@ -528,6 +528,17 @@ int opt_loglevel(void *optctx, const char *opt, const char *arg)
return 0;
}
+int opt_report_file(void *optctx, const char *opt, const char *arg)
+{
+ report_file = fopen(arg, "w");
+ if (!report_file) {
+ av_log(NULL, AV_LOG_ERROR, "Failed to open report \"%s\": %s\n",
+ arg, strerror(errno));
+ return AVERROR(errno);
+ }
+ return 0;
+}
+
int opt_report(const char *opt)
{
char filename[64];
diff --git a/cmdutils.h b/cmdutils.h
index 3885d9412c..4624f195e1 100644
--- a/cmdutils.h
+++ b/cmdutils.h
@@ -84,6 +84,8 @@ int opt_loglevel(void *optctx, const char *opt, const char *arg);
int opt_report(const char *opt);
+int opt_report_file(void *optctx, const char *opt, const char *arg);
+
int opt_max_alloc(void *optctx, const char *opt, const char *arg);
int opt_cpuflags(void *optctx, const char *opt, const char *arg);
diff --git a/cmdutils_common_opts.h b/cmdutils_common_opts.h
index bfd71feb7d..2e1cf7db03 100644
--- a/cmdutils_common_opts.h
+++ b/cmdutils_common_opts.h
@@ -19,5 +19,6 @@
{ "debug" , HAS_ARG, {.func_arg = opt_codec_debug}, "set debug flags", "flags" },
{ "fdebug" , HAS_ARG, {.func_arg = opt_codec_debug}, "set debug flags", "flags" },
{ "report" , 0, {(void*)opt_report}, "generate a report" },
+ { "report_file", HAS_ARG, {.func_arg = opt_report_file}, "filename for storing the 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" },