ref: df7be4385dc2c85d14e8c8c168c782e6b60eedb6
parent: 340cb937f86df50f6630f90ecc9d0c252007fbb8
author: Paul Brossier <piem@piem.org>
date: Wed Aug 12 12:31:40 EDT 2015
examples/parse_args.h: only parse time format string once, warn if unknown
--- a/examples/aubioonset.c
+++ b/examples/aubioonset.c
@@ -49,13 +49,8 @@
void process_print (void)
{ if ( is_onset ) {- if (strcmp (time_format, "samples") == 0) {- outmsg ("%d\n", aubio_onset_get_last (o) );- } else if (strcmp (time_format, "ms") == 0) {- outmsg ("%f\n", aubio_onset_get_last_ms (o) );- } else {- outmsg ("%f\n", aubio_onset_get_last_s (o) );- }
+ print_time(aubio_onset_get_last (o));
+ outmsg ("\n");}
}
--- a/examples/parse_args.h
+++ b/examples/parse_args.h
@@ -35,7 +35,7 @@
extern char_t * pitch_unit;
extern smpl_t pitch_tolerance;
// time stuff
-extern char_t * time_format;
+extern uint_t time_format;
// tempo stuff
extern char_t * tempo_method;
// more general stuff
@@ -208,7 +208,15 @@
pitch_tolerance = (smpl_t) atof (optarg);
break;
case 'T':
- time_format = optarg;
+ if (strcmp (optarg, "samples") == 0) {+ time_format = 2;
+ } else if (strcmp (optarg, "ms") == 0) {+ time_format = 1;
+ } else if (strcmp (optarg, "seconds") == 0) {+ time_format = 0;
+ } else {+ errmsg ("Warning: did not get '%s' time-format string\n", optarg);+ }
break;
case 's': /* silence threshold */
silence_threshold = (smpl_t) atof (optarg);
--- a/examples/utils.c
+++ b/examples/utils.c
@@ -48,7 +48,7 @@
char_t * pitch_method = "default";
smpl_t pitch_tolerance = 0.0; // will be set if != 0.
// time stuff
-char_t * time_format = "seconds";
+uint_t time_format = 0; // for "seconds", 1 for "ms", 2 for "samples"
// tempo stuff
char_t * tempo_method = "default";
// more general stuff
@@ -209,9 +209,9 @@
void print_time (uint_t time_in_samples) {/* output times in selected format */
- if (strcmp (time_format, "samples") == 0) {+ if (time_format == 2) { outmsg ("%d", time_in_samples);- } else if (strcmp (time_format, "ms") == 0) {+ } else if (time_format == 1) { outmsg ("%f", 1000. * time_in_samples / (float) samplerate); } else { outmsg ("%f", time_in_samples / (float) samplerate);--
⑨