Commit 4d5fdb06 authored by Stefan Westerfeld's avatar Stefan Westerfeld

More ArgParser related cleanups.

Signed-off-by: Stefan Westerfeld's avatarStefan Westerfeld <stefan@space.twc.de>
parent 89269de9
...@@ -163,38 +163,10 @@ parse_options (int *argc_p, ...@@ -163,38 +163,10 @@ parse_options (int *argc_p,
for (i = 1; i < argc; i++) for (i = 1; i < argc; i++)
{ {
const char *opt_arg; const char *opt_arg;
if (strcmp (argv[i], "--help") == 0 || if (check_arg (argc, argv, &i, "--hard"))
strcmp (argv[i], "-h") == 0)
{
print_usage();
exit (0);
}
else if (strcmp (argv[i], "--version") == 0 || strcmp (argv[i], "-v") == 0)
{
printf ("audiowmark %s\n", VERSION);
exit (0);
}
else if (check_arg (argc, argv, &i, "--frames-per-bit", &opt_arg))
{
Params::frames_per_bit = atoi (opt_arg);
}
else if (check_arg (argc, argv, &i, "--linear"))
{
Params::mix = false;
}
else if (check_arg (argc, argv, &i, "--hard"))
{ {
Params::hard = true; Params::hard = true;
} }
else if (check_arg (argc, argv, &i, "--snr"))
{
Params::snr = true;
}
else if (check_arg (argc, argv, &i, "--key", &opt_arg))
{
Params::have_key++;
Random::load_global_key (opt_arg);
}
else if (check_arg (argc, argv, &i, "--test-cut", &opt_arg)) else if (check_arg (argc, argv, &i, "--test-cut", &opt_arg))
{ {
Params::test_cut = atoi (opt_arg); Params::test_cut = atoi (opt_arg);
...@@ -283,14 +255,6 @@ parse_options (int *argc_p, ...@@ -283,14 +255,6 @@ parse_options (int *argc_p,
Params::raw_input_format.set_sample_rate (r); Params::raw_input_format.set_sample_rate (r);
Params::raw_output_format.set_sample_rate (r); Params::raw_output_format.set_sample_rate (r);
} }
else if (check_arg (argc, argv, &i, "--set-input-label", &opt_arg))
{
Params::input_label = opt_arg;
}
else if (check_arg (argc, argv, &i, "--set-output-label", &opt_arg))
{
Params::output_label = opt_arg;
}
} }
/* resort argc/argv */ /* resort argc/argv */
...@@ -618,10 +582,16 @@ parse_shared_options (ArgParser& ap) ...@@ -618,10 +582,16 @@ parse_shared_options (ArgParser& ap)
{ {
int i; int i;
float f; float f;
string s;
if (ap.parse_opt ("--strength", f)) if (ap.parse_opt ("--strength", f))
{ {
Params::water_delta = f / 1000; Params::water_delta = f / 1000;
} }
if (ap.parse_opt ("--key", s))
{
Params::have_key++;
Random::load_global_key (s);
}
if (ap.parse_opt ("--test-key", i)) if (ap.parse_opt ("--test-key", i))
{ {
Params::have_key++; Params::have_key++;
...@@ -637,6 +607,11 @@ parse_shared_options (ArgParser& ap) ...@@ -637,6 +607,11 @@ parse_shared_options (ArgParser& ap)
} }
Params::payload_short = true; Params::payload_short = true;
} }
ap.parse_opt ("--frames-per-bit", Params::frames_per_bit);
if (ap.parse_opt ("--linear"))
{
Params::mix = false;
}
if (ap.parse_opt ("--quiet") || ap.parse_opt ("-q")) if (ap.parse_opt ("--quiet") || ap.parse_opt ("-q"))
{ {
set_log_level (Log::WARNING); set_log_level (Log::WARNING);
...@@ -649,6 +624,16 @@ main (int argc, char **argv) ...@@ -649,6 +624,16 @@ main (int argc, char **argv)
ArgParser ap (argc, argv); ArgParser ap (argc, argv);
vector<string> args; vector<string> args;
if (ap.parse_opt ("--help") || ap.parse_opt ("-h"))
{
print_usage();
return 0;
}
if (ap.parse_opt ("--version") || ap.parse_opt ("-v"))
{
printf ("audiowmark %s\n", VERSION);
return 0;
}
if (ap.parse_cmd ("hls-add")) if (ap.parse_cmd ("hls-add"))
{ {
parse_shared_options (ap); parse_shared_options (ap);
...@@ -662,6 +647,13 @@ main (int argc, char **argv) ...@@ -662,6 +647,13 @@ main (int argc, char **argv)
{ {
parse_shared_options (ap); parse_shared_options (ap);
ap.parse_opt ("--set-input-label", Params::input_label);
ap.parse_opt ("--set-output-label", Params::output_label);
if (ap.parse_opt ("--snr"))
{
Params::snr = true;
}
if (ap.parse_args (3, args)) if (ap.parse_args (3, args))
return add_watermark (args[0], args[1], args[2]); return add_watermark (args[0], args[1], args[2]);
} }
...@@ -679,6 +671,11 @@ main (int argc, char **argv) ...@@ -679,6 +671,11 @@ main (int argc, char **argv)
if (ap.parse_args (2, args)) if (ap.parse_args (2, args))
return get_watermark (args[0], args[1]); return get_watermark (args[0], args[1]);
} }
else if (ap.parse_cmd ("gen-key"))
{
if (ap.parse_args (1, args))
return gen_key (args[0]);
}
for (int i = 0; i < argc; i++) for (int i = 0; i < argc; i++)
{ {
error ("%d %s\n", i, argv[i]); error ("%d %s\n", i, argv[i]);
...@@ -715,10 +712,6 @@ main (int argc, char **argv) ...@@ -715,10 +712,6 @@ main (int argc, char **argv)
{ {
test_clip (argv[2], argv[3], atoi (argv[4]), atoi (argv[5])); test_clip (argv[2], argv[3], atoi (argv[4]), atoi (argv[5]));
} }
else if (op == "gen-key" && argc == 3)
{
return gen_key (argv[2]);
}
else else
{ {
error ("audiowmark: error parsing commandline args (use audiowmark -h)\n"); error ("audiowmark: error parsing commandline args (use audiowmark -h)\n");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment