audio/coreaudio.c: Factor out use of AudioHardwareGetProperty
authorPeter Maydell <peter.maydell@linaro.org>
Sat, 28 Nov 2015 21:55:20 +0000 (21:55 +0000)
committerGerd Hoffmann <kraxel@redhat.com>
Tue, 15 Dec 2015 10:08:11 +0000 (11:08 +0100)
The CoreAudio function AudioHardwareGetProperty has been deprecated
starting with OSX 10.6, so factor out our call to it so we can
provide an equivalent with the new APIs when they exist.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1448747724-15572-2-git-send-email-peter.maydell@linaro.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
audio/coreaudio.c

index 6dfd63eb4299d8a0897c7af4228b6d6155229b67..433e009db5e983b868b52ee52da955b81d2d181a 100644 (file)
@@ -50,6 +50,16 @@ typedef struct coreaudioVoiceOut {
     int rpos;
 } coreaudioVoiceOut;
 
+static OSStatus coreaudio_get_voice(AudioDeviceID *id)
+{
+    UInt32 size = sizeof(*id);
+
+    return AudioHardwareGetProperty(
+        kAudioHardwarePropertyDefaultOutputDevice,
+        &size,
+        id);
+}
+
 static void coreaudio_logstatus (OSStatus status)
 {
     const char *str = "BUG";
@@ -303,12 +313,7 @@ static int coreaudio_init_out(HWVoiceOut *hw, struct audsettings *as,
 
     audio_pcm_init_info (&hw->info, as);
 
-    /* open default output device */
-    propertySize = sizeof(core->outputDeviceID);
-    status = AudioHardwareGetProperty(
-        kAudioHardwarePropertyDefaultOutputDevice,
-        &propertySize,
-        &core->outputDeviceID);
+    status = coreaudio_get_voice(&core->outputDeviceID);
     if (status != kAudioHardwareNoError) {
         coreaudio_logerr2 (status, typ,
                            "Could not get default output Device\n");