summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosh de Kock <josh@itanimul.li>2016-04-16 15:33:36 +0100
committerJosh de Kock <josh@itanimul.li>2016-04-16 17:57:58 +0100
commit79478b79fa2b1612b23a1f7ca535e9675ce8fbff (patch)
tree78b051c8ab5926a093eb5286cac6363dd9149e68
parentadc645db169a0418d3b778bf63f4881c97f3ae17 (diff)
downloadjack1-79478b79fa2b1612b23a1f7ca535e9675ce8fbff.tar.gz
drivers/coreaudio: update audio components to use new API
-rw-r--r--drivers/coreaudio/coreaudio_driver.c20
-rw-r--r--drivers/coreaudio/coreaudio_driver.h3
2 files changed, 21 insertions, 2 deletions
diff --git a/drivers/coreaudio/coreaudio_driver.c b/drivers/coreaudio/coreaudio_driver.c
index 7f16304..72d875e 100644
--- a/drivers/coreaudio/coreaudio_driver.c
+++ b/drivers/coreaudio/coreaudio_driver.c
@@ -822,12 +822,22 @@ static jack_driver_t *coreaudio_driver_new (char* name,
}
// AUHAL
+#if defined(MAC_OS_X_VERSION_10_6) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+ AudioComponentDescription cd = { kAudioUnitType_Output, kAudioUnitSubType_HALOutput, kAudioUnitManufacturer_Apple, 0, 0 };
+ AudioComponent HALOutput = AudioComponentFindNext (NULL, &cd);
+ err1 = AudioComponentInstanceNew (HALOutput, &driver->au_hal);
+#else
ComponentDescription cd = { kAudioUnitType_Output, kAudioUnitSubType_HALOutput, kAudioUnitManufacturer_Apple, 0, 0 };
Component HALOutput = FindNextComponent (NULL, &cd);
-
err1 = OpenAComponent (HALOutput, &driver->au_hal);
+#endif
+
if (err1 != noErr) {
+#if defined(MAC_OS_X_VERSION_10_6) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+ jack_error ("Error calling AudioComponentInstanceNew");
+#else
jack_error ("Error calling OpenAComponent");
+#endif
printError (err1);
goto error;
}
@@ -1001,7 +1011,11 @@ static jack_driver_t *coreaudio_driver_new (char* name,
error:
AudioUnitUninitialize (driver->au_hal);
+#if defined(MAC_OS_X_VERSION_10_6) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+ AudioComponentInstanceDispose (driver->au_hal);
+#else
CloseComponent (driver->au_hal);
+#endif
jack_error ("Cannot open the coreaudio driver");
free (driver);
return NULL;
@@ -1014,7 +1028,11 @@ static void coreaudio_driver_delete (coreaudio_driver_t * driver)
AudioDeviceRemovePropertyListener (driver->device_id, 0, true, kAudioDeviceProcessorOverload, notification);
free (driver->input_list);
AudioUnitUninitialize (driver->au_hal);
+#if defined(MAC_OS_X_VERSION_10_6) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+ AudioComponentInstanceDispose (driver->au_hal);
+#else
CloseComponent (driver->au_hal);
+#endif
free (driver);
}
diff --git a/drivers/coreaudio/coreaudio_driver.h b/drivers/coreaudio/coreaudio_driver.h
index 211549e..d42598e 100644
--- a/drivers/coreaudio/coreaudio_driver.h
+++ b/drivers/coreaudio/coreaudio_driver.h
@@ -29,9 +29,10 @@
#define __jack_coreaudio_driver_h__
#include <CoreAudio/CoreAudio.h>
+#if !defined(MAC_OS_X_VERSION_10_6) || MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_6
#include <AudioToolbox/AudioConverter.h>
+#endif
#include <AudioUnit/AudioUnit.h>
-
#include <jack/jack.h>
#include <jack/types.h>