diff --git a/src/hostapi/coreaudio/pa_mac_core.c b/src/hostapi/coreaudio/pa_mac_core.c index 257e9de..a0eb6fd 100644 --- a/src/hostapi/coreaudio/pa_mac_core.c +++ b/src/hostapi/coreaudio/pa_mac_core.c @@ -1173,8 +1173,13 @@ static PaError OpenAndSetupOneAudioUnit( const double sampleRate, void *refCon ) { +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 + AudioComponentDescription desc; + AudioComponent comp; +#else ComponentDescription desc; Component comp; +#endif /*An Apple TN suggests using CAStreamBasicDescription, but that is C++*/ AudioStreamBasicDescription desiredFormat; OSStatus result = noErr; @@ -1245,7 +1250,11 @@ static PaError OpenAndSetupOneAudioUnit( desc.componentFlags = 0; desc.componentFlagsMask = 0; /* -- find the component -- */ +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 + comp = AudioComponentFindNext( NULL, &desc ); +#else comp = FindNextComponent( NULL, &desc ); +#endif if( !comp ) { DBUG( ( "AUHAL component not found." ) ); @@ -1254,7 +1263,11 @@ static PaError OpenAndSetupOneAudioUnit( return paUnanticipatedHostError; } /* -- open it -- */ +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 + result = AudioComponentInstanceNew( comp, audioUnit ); +#else result = OpenAComponent( comp, audioUnit ); +#endif if( result ) { DBUG( ( "Failed to open AUHAL component." ) ); @@ -1607,7 +1620,12 @@ static PaError OpenAndSetupOneAudioUnit( #undef ERR_WRAP error: + +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 + AudioComponentInstanceDispose( *audioUnit ); +#else CloseComponent( *audioUnit ); +#endif *audioUnit = NULL; if( result ) return PaMacCore_SetError( result, line, 1 ); @@ -2645,13 +2663,21 @@ static PaError CloseStream( PaStream* s ) } if( stream->outputUnit && stream->outputUnit != stream->inputUnit ) { AudioUnitUninitialize( stream->outputUnit ); +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 + AudioComponentInstanceDispose( stream->outputUnit ); +#else CloseComponent( stream->outputUnit ); +#endif } stream->outputUnit = NULL; if( stream->inputUnit ) { AudioUnitUninitialize( stream->inputUnit ); +#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6 + AudioComponentInstanceDispose( stream->inputUnit ); +#else CloseComponent( stream->inputUnit ); +#endif stream->inputUnit = NULL; } if( stream->inputRingBuffer.buffer )