aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuca Barbato <lu_zero@gentoo.org>2013-10-14 05:41:45 +0200
committerLuca Barbato <lu_zero@gentoo.org>2013-10-22 10:49:31 +0200
commitf825d42bccdb9f89669a586951de7f66a81e80a5 (patch)
treec03aa603a824edff05928d81cb0406b45e97a0ae
parentea71aafd6881d7ce5cffec56feb45488e3ac5221 (diff)
downloadffmpeg-f825d42bccdb9f89669a586951de7f66a81e80a5.tar.gz
avplay: Accept cpuflags option
Quite useful for debugging. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
-rw-r--r--avconv.h2
-rw-r--r--avconv_opt.c13
-rw-r--r--cmdutils.c12
-rw-r--r--cmdutils.h5
-rw-r--r--cmdutils_common_opts.h1
-rw-r--r--doc/avconv.texi4
-rw-r--r--doc/avtools-common-opts.texi4
7 files changed, 22 insertions, 19 deletions
diff --git a/avconv.h b/avconv.h
index 56876ec066..eb7e37f875 100644
--- a/avconv.h
+++ b/avconv.h
@@ -356,8 +356,6 @@ extern const OptionDef options[];
void reset_options(OptionsContext *o);
void show_usage(void);
-int opt_cpuflags(void *optctx, const char *opt, const char *arg);
-
void opt_output_file(void *optctx, const char *filename);
void assert_avoptions(AVDictionary *m);
diff --git a/avconv_opt.c b/avconv_opt.c
index bd8e7e5a79..70cbd719cd 100644
--- a/avconv_opt.c
+++ b/avconv_opt.c
@@ -1876,17 +1876,6 @@ static int opt_vsync(void *optctx, const char *opt, const char *arg)
return 0;
}
-int opt_cpuflags(void *optctx, const char *opt, const char *arg)
-{
- int flags = av_parse_cpu_flags(arg);
-
- if (flags < 0)
- return flags;
-
- av_set_cpu_flags_mask(flags);
- return 0;
-}
-
static int opt_channel_layout(void *optctx, const char *opt, const char *arg)
{
OptionsContext *o = optctx;
@@ -2231,8 +2220,6 @@ const OptionDef options[] = {
{ "dump_attachment", HAS_ARG | OPT_STRING | OPT_SPEC |
OPT_EXPERT | OPT_INPUT, { .off = OFFSET(dump_attachment) },
"extract an attachment into a file", "filename" },
- { "cpuflags", HAS_ARG | OPT_EXPERT, { .func_arg = opt_cpuflags },
- "set CPU flags mask", "mask" },
/* video options */
{ "vframes", OPT_VIDEO | HAS_ARG | OPT_PERFILE | OPT_OUTPUT, { .func_arg = opt_video_frames },
diff --git a/cmdutils.c b/cmdutils.c
index 062d7ec2f8..d6eb981205 100644
--- a/cmdutils.c
+++ b/cmdutils.c
@@ -43,6 +43,7 @@
#include "libavutil/eval.h"
#include "libavutil/dict.h"
#include "libavutil/opt.h"
+#include "libavutil/cpu.h"
#include "cmdutils.h"
#include "version.h"
#if CONFIG_NETWORK
@@ -694,6 +695,17 @@ do { \
return 0;
}
+int opt_cpuflags(void *optctx, const char *opt, const char *arg)
+{
+ int flags = av_parse_cpu_flags(arg);
+
+ if (flags < 0)
+ return flags;
+
+ av_set_cpu_flags_mask(flags);
+ return 0;
+}
+
int opt_loglevel(void *optctx, const char *opt, const char *arg)
{
const struct { const char *name; int level; } log_levels[] = {
diff --git a/cmdutils.h b/cmdutils.h
index 997ba1c750..f1b69f95b7 100644
--- a/cmdutils.h
+++ b/cmdutils.h
@@ -72,6 +72,11 @@ void uninit_opts(void);
void log_callback_help(void* ptr, int level, const char* fmt, va_list vl);
/**
+ * Override the cpuflags mask.
+ */
+int opt_cpuflags(void *optctx, const char *opt, const char *arg);
+
+/**
* Fallback for options that are not explicitly handled, these will be
* parsed through AVOptions.
*/
diff --git a/cmdutils_common_opts.h b/cmdutils_common_opts.h
index 619cd896ce..8693f59c56 100644
--- a/cmdutils_common_opts.h
+++ b/cmdutils_common_opts.h
@@ -15,3 +15,4 @@
{ "sample_fmts", OPT_EXIT, {.func_arg = show_sample_fmts }, "show available audio sample formats" },
{ "loglevel" , HAS_ARG, {.func_arg = opt_loglevel}, "set libav* logging level", "loglevel" },
{ "v", HAS_ARG, {.func_arg = opt_loglevel}, "set libav* logging level", "loglevel" },
+ { "cpuflags", HAS_ARG | OPT_EXPERT, { .func_arg = opt_cpuflags }, "set CPU flags mask", "mask" },
diff --git a/doc/avconv.texi b/doc/avconv.texi
index d137fe2738..714b0e7ab3 100644
--- a/doc/avconv.texi
+++ b/doc/avconv.texi
@@ -788,10 +788,6 @@ avconv -i file.mov -an -vn -bsf:s mov2textsub -c:s copy -f rawvideo sub.txt
@item -tag[:@var{stream_specifier}] @var{codec_tag} (@emph{output,per-stream})
Force a tag/fourcc for matching streams.
-@item -cpuflags mask (@emph{global})
-Set a mask that's applied to autodetected CPU flags. This option is intended
-for testing. Do not use it unless you know what you're doing.
-
@item -filter_complex @var{filtergraph} (@emph{global})
Define a complex filter graph, i.e. one with arbitrary number of inputs and/or
outputs. For simple graphs -- those with one input and one output of the same
diff --git a/doc/avtools-common-opts.texi b/doc/avtools-common-opts.texi
index 4be54125de..156319ec4a 100644
--- a/doc/avtools-common-opts.texi
+++ b/doc/avtools-common-opts.texi
@@ -143,6 +143,10 @@ the environment variable @env{AV_LOG_FORCE_COLOR}.
The use of the environment variable @env{NO_COLOR} is deprecated and
will be dropped in a following Libav version.
+@item -cpuflags mask (@emph{global})
+Set a mask that's applied to autodetected CPU flags. This option is intended
+for testing. Do not use it unless you know what you're doing.
+
@end table
@section AVOptions