mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-02-28 17:51:05 +00:00
cmdutils: remove unnecessary OPT_DUMMY implementation
The -i INPUT option can be implemented more cleanly by using a function option, which can easily be done now that the parse_arg_function passed to parse_options has a standard signature.
This commit is contained in:
parent
96f931adf7
commit
b4af3cf347
@ -273,8 +273,6 @@ unknown_opt:
|
|||||||
*po->u.int64_arg = parse_number_or_die(opt, arg, OPT_INT64, INT64_MIN, INT64_MAX);
|
*po->u.int64_arg = parse_number_or_die(opt, arg, OPT_INT64, INT64_MIN, INT64_MAX);
|
||||||
} else if (po->flags & OPT_FLOAT) {
|
} else if (po->flags & OPT_FLOAT) {
|
||||||
*po->u.float_arg = parse_number_or_die(opt, arg, OPT_FLOAT, -INFINITY, INFINITY);
|
*po->u.float_arg = parse_number_or_die(opt, arg, OPT_FLOAT, -INFINITY, INFINITY);
|
||||||
} else if (po->flags & OPT_DUMMY) {
|
|
||||||
/* Do nothing for this option */
|
|
||||||
} else {
|
} else {
|
||||||
if (po->u.func_arg(opt, arg) < 0) {
|
if (po->u.func_arg(opt, arg) < 0) {
|
||||||
fprintf(stderr, "%s: failed to set value '%s' for option '%s'\n", argv[0], arg, opt);
|
fprintf(stderr, "%s: failed to set value '%s' for option '%s'\n", argv[0], arg, opt);
|
||||||
|
@ -128,7 +128,6 @@ typedef struct {
|
|||||||
#define OPT_INT64 0x0400
|
#define OPT_INT64 0x0400
|
||||||
#define OPT_EXIT 0x0800
|
#define OPT_EXIT 0x0800
|
||||||
#define OPT_DATA 0x1000
|
#define OPT_DATA 0x1000
|
||||||
#define OPT_DUMMY 0x2000
|
|
||||||
union {
|
union {
|
||||||
int *int_arg;
|
int *int_arg;
|
||||||
char **str_arg;
|
char **str_arg;
|
||||||
|
28
ffplay.c
28
ffplay.c
@ -2916,6 +2916,19 @@ static int opt_show_mode(const char *opt, const char *arg)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int opt_input_file(const char *opt, const char *filename)
|
||||||
|
{
|
||||||
|
if (input_filename) {
|
||||||
|
fprintf(stderr, "Argument '%s' provided as input filename, but '%s' was already specified.\n",
|
||||||
|
filename, input_filename);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
if (!strcmp(filename, "-"))
|
||||||
|
filename = "pipe:";
|
||||||
|
input_filename = filename;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static const OptionDef options[] = {
|
static const OptionDef options[] = {
|
||||||
#include "cmdutils_common_opts.h"
|
#include "cmdutils_common_opts.h"
|
||||||
{ "x", HAS_ARG, {(void*)opt_width}, "force displayed width", "width" },
|
{ "x", HAS_ARG, {(void*)opt_width}, "force displayed width", "width" },
|
||||||
@ -2961,7 +2974,7 @@ static const OptionDef options[] = {
|
|||||||
{ "rdftspeed", OPT_INT | HAS_ARG| OPT_AUDIO | OPT_EXPERT, {(void*)&rdftspeed}, "rdft speed", "msecs" },
|
{ "rdftspeed", OPT_INT | HAS_ARG| OPT_AUDIO | OPT_EXPERT, {(void*)&rdftspeed}, "rdft speed", "msecs" },
|
||||||
{ "showmode", HAS_ARG, {(void*)opt_show_mode}, "select show mode (0 = video, 1 = waves, 2 = RDFT)", "mode" },
|
{ "showmode", HAS_ARG, {(void*)opt_show_mode}, "select show mode (0 = video, 1 = waves, 2 = RDFT)", "mode" },
|
||||||
{ "default", HAS_ARG | OPT_AUDIO | OPT_VIDEO | OPT_EXPERT, {(void*)opt_default}, "generic catch all option", "" },
|
{ "default", HAS_ARG | OPT_AUDIO | OPT_VIDEO | OPT_EXPERT, {(void*)opt_default}, "generic catch all option", "" },
|
||||||
{ "i", OPT_DUMMY, {NULL}, "ffmpeg compatibility dummy option", ""},
|
{ "i", HAS_ARG, {(void *)opt_input_file}, "read specified file", "input_file"},
|
||||||
{ NULL, },
|
{ NULL, },
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -3006,19 +3019,6 @@ static void show_help(void)
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int opt_input_file(const char *opt, const char *filename)
|
|
||||||
{
|
|
||||||
if (input_filename) {
|
|
||||||
fprintf(stderr, "Argument '%s' provided as input filename, but '%s' was already specified.\n",
|
|
||||||
filename, input_filename);
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
if (!strcmp(filename, "-"))
|
|
||||||
filename = "pipe:";
|
|
||||||
input_filename = filename;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Called from the main */
|
/* Called from the main */
|
||||||
int main(int argc, char **argv)
|
int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user