summaryrefslogtreecommitdiff
path: root/audio_ao.c
diff options
context:
space:
mode:
authorMike Brady <mikebrady@eircom.net>2016-09-04 19:37:22 +0100
committerMike Brady <mikebrady@eircom.net>2016-09-04 19:37:22 +0100
commitae84366e8d6f5f6aaa9ab60821f8e73e74f4c85b (patch)
treefd3d70ac0d6c1ec7b01237a79a816063a1af2456 /audio_ao.c
parent0db88e9029259c2121daaab688e9ca202c1127d7 (diff)
Change over to times as opposed to frames for setting timing options
Diffstat (limited to 'audio_ao.c')
-rw-r--r--audio_ao.c31
1 files changed, 17 insertions, 14 deletions
diff --git a/audio_ao.c b/audio_ao.c
index b6a09a0..51cf333 100644
--- a/audio_ao.c
+++ b/audio_ao.c
@@ -47,34 +47,37 @@ static int init(int argc, char **argv) {
int driver = ao_default_driver_id();
ao_option *ao_opts = NULL;
- config.audio_backend_buffer_desired_length = 44100; // one second.
+ config.audio_backend_buffer_desired_length = 1.0;
config.audio_backend_latency_offset = 0;
// get settings from settings file first, allow them to be overridden by command line options
if (config.cfg != NULL) {
/* Get the desired buffer size setting. */
- if (config_lookup_int(config.cfg, "ao.audio_backend_buffer_desired_length", &value)) {
- if ((value < 0) || (value > 66150))
- die("Invalid a0 audio backend buffer desired length \"%d\". It should be between 0 and "
- "66150, default is 44100",
- value);
+ if (config_lookup_float(config.cfg,
+ "ao.audio_backend_buffer_desired_length", &dvalue)) {
+ if ((dvalue < 0) || (value > 1.5))
+ die("Invalid ao audio backend buffer desired length \"%f\". It "
+ "should be between 0 and "
+ "1.5, default is 1.0 second",
+ dvalue);
else {
- config.audio_backend_buffer_desired_length = value;
+ config.audio_backend_buffer_desired_length = dvalue;
}
}
-
+
/* Get the latency offset. */
- if (config_lookup_int(config.cfg, "ao.audio_backend_latency_offset", &value)) {
- if ((value < -66150) || (value > 66150))
- die("Invalid ao audio backend buffer latency offset \"%d\". It should be between -66150 and +66150, default is 0",
- value);
+ if (config_lookup_float(config.cfg, "ao.audio_backend_latency_offset",
+ &dvalue)) {
+ if ((dvalue < -1.0) || (value > 1.5))
+ die("Invalid ao audio backend buffer latency offset \"%f\". It "
+ "should be between -1.0 and +1.5, default is 0 seconds",
+ dvalue);
else
- config.audio_backend_latency_offset = value;
+ config.audio_backend_latency_offset = dvalue;
}
}
-
optind = 1; // optind=0 is equivalent to optind=1 plus special behaviour
argv--; // so we shift the arguments to satisfy getopt()
argc++;