X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/4f8132b3d83dc46d4ab2321ef5b838da406bd100..fb4c61dadb5bc3f21ff6f9488eaf7019b28a3f8a:/lib/uaudio-coreaudio.c diff --git a/lib/uaudio-coreaudio.c b/lib/uaudio-coreaudio.c index 8cde8c3..5f28e67 100644 --- a/lib/uaudio-coreaudio.c +++ b/lib/uaudio-coreaudio.c @@ -26,6 +26,7 @@ #include "mem.h" #include "log.h" #include "syscalls.h" +#include "configuration.h" /** @brief Callback to request sample data */ static uaudio_callback *coreaudio_callback; @@ -127,7 +128,7 @@ static void coreaudio_start(uaudio_callback *callback, uaudio_bits); coreaudio_callback = callback; coreaudio_userdata = userdata; - device = uaudio_get("device"); + device = uaudio_get("device", "default"); coreaudio_adid = coreaudio_getdevice(device); /* Get the device properties */ propertySize = sizeof asbd; @@ -182,13 +183,18 @@ static void coreaudio_deactivate(void) { coreaudio_fatal(status, "AudioDeviceStop"); } +static void coreaudio_configure(void) { + uaudio_set("device", config->device); +} + const struct uaudio uaudio_coreaudio = { .name = "coreaudio", .options = coreaudio_options, .start = coreaudio_start, .stop = coreaudio_stop, .activate = coreaudio_activate, - .deactivate = coreaudio_deactivate + .deactivate = coreaudio_deactivate, + .configure = coreaudio_configure, }; #endif