summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2015-07-24 01:33:49 +0200
committerRobin Gareus <robin@gareus.org>2015-07-24 01:34:57 +0200
commit64baed2b979b72637f9aed1f8a16250d409f190f (patch)
treeaab2339b5d42266c55aa569ab80ebe1f3a1b39c4 /libs
parent52ef02b387d8267315547129f7f100048a5c1166 (diff)
coreaudio aggregate device fix for 10.5
Diffstat (limited to 'libs')
-rw-r--r--libs/backends/coreaudio/coreaudio_pcmio.cc9
-rw-r--r--libs/backends/coreaudio/wscript2
2 files changed, 10 insertions, 1 deletions
diff --git a/libs/backends/coreaudio/coreaudio_pcmio.cc b/libs/backends/coreaudio/coreaudio_pcmio.cc
index acf7afaa0c..5be717b1f3 100644
--- a/libs/backends/coreaudio/coreaudio_pcmio.cc
+++ b/libs/backends/coreaudio/coreaudio_pcmio.cc
@@ -822,12 +822,21 @@ CoreAudioPCM::pcm_start (
AudioDeviceID device_id;
AudioStreamBasicDescription srcFormat, dstFormat;
+#ifndef COREAUDIO_108
+ ComponentDescription cd = {kAudioUnitType_Output, kAudioUnitSubType_HALOutput, kAudioUnitManufacturer_Apple, 0, 0};
+ Component HALOutput = FindNextComponent(NULL, &cd);
+ if (!HALOutput) { errorMsg="FindNextComponent"; goto error; }
+
+ err = OpenAComponent(HALOutput, &_auhal);
+ if (err != noErr) { errorMsg="OpenAComponent"; goto error; }
+#else
AudioComponentDescription cd = {kAudioUnitType_Output, kAudioUnitSubType_HALOutput, kAudioUnitManufacturer_Apple, 0, 0};
AudioComponent HALOutput = AudioComponentFindNext(NULL, &cd);
if (!HALOutput) { errorMsg="AudioComponentFindNext"; goto error; }
err = AudioComponentInstanceNew(HALOutput, &_auhal);
if (err != noErr) { errorMsg="AudioComponentInstanceNew"; goto error; }
+#endif
err = AudioUnitInitialize(_auhal);
if (err != noErr) { errorMsg="AudioUnitInitialize"; goto error; }
diff --git a/libs/backends/coreaudio/wscript b/libs/backends/coreaudio/wscript
index 75bed910df..9aad9cde4f 100644
--- a/libs/backends/coreaudio/wscript
+++ b/libs/backends/coreaudio/wscript
@@ -30,7 +30,7 @@ def build(bld):
obj.target = 'coreaudio_backend'
obj.use = 'libardour libpbd'
obj.framework = [ 'CoreAudio', 'AudioToolbox', 'CoreServices' ]
- if bld.env['build_target'] not in [ 'lion' ]:
+ if bld.env['build_target'] not in [ 'lion' ] and (not bld.env['build_arch'] == "ppc"):
obj.framework += [ 'CoreMidi' ]
else:
obj.framework += [ 'CoreMIDI' ]