summaryrefslogtreecommitdiffstats
path: root/audio
diff options
context:
space:
mode:
Diffstat (limited to 'audio')
-rw-r--r--audio/out/ao_coreaudio.c6
-rw-r--r--audio/out/ao_coreaudio_utils.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/audio/out/ao_coreaudio.c b/audio/out/ao_coreaudio.c
index 8a8a73f5ce..1e1ad8cb10 100644
--- a/audio/out/ao_coreaudio.c
+++ b/audio/out/ao_coreaudio.c
@@ -145,6 +145,12 @@ static bool init_audiounit(struct ao *ao, AudioStreamBasicDescription asbd);
static int init(struct ao *ao)
{
+ if (AF_FORMAT_IS_IEC61937(ao->format)) {
+ MP_WARN(ao, "detected IEC61937, redirecting to coreaudio_exclusive\n");
+ ao->redirect = "coreaudio_exclusive";
+ return CONTROL_ERROR;
+ }
+
struct priv *p = ao->priv;
OSStatus err = ca_select_device(ao, ao->device, &p->device);
diff --git a/audio/out/ao_coreaudio_utils.c b/audio/out/ao_coreaudio_utils.c
index cc08f4c6ab..b073cd6d8a 100644
--- a/audio/out/ao_coreaudio_utils.c
+++ b/audio/out/ao_coreaudio_utils.c
@@ -56,7 +56,7 @@ OSStatus ca_select_device(struct ao *ao, char* name, AudioDeviceID *device)
int selection = name ? strtol(name, (char **)NULL, 10) : -1;
if (errno == EINVAL || errno == ERANGE) {
selection = -1;
- MP_ERR(ao, "device identifier '%s' is invalid\n", name);
+ MP_WARN(ao, "device identifier '%s' is invalid\n", name);
}
*device = 0;
if (selection < 0) {