Module: wine Branch: master Commit: b149d7bc7bf28dc13919a2d6d2c4b79e519e7a58 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b149d7bc7bf28dc13919a2d6d2...
Author: Charles Davis cdavis@mymail.mines.edu Date: Sat Jan 29 16:45:54 2011 -0700
winecoreaudio: Fix deprecation warnings in audiounit.c.
---
configure | 14 ++++++++++++ configure.ac | 5 ++++ dlls/winecoreaudio.drv/audiounit.c | 40 +++++++++++++++++++++++++++-------- include/config.h.in | 3 ++ 4 files changed, 53 insertions(+), 9 deletions(-)
diff --git a/configure b/configure index 89bfefa..c178d92 100755 --- a/configure +++ b/configure @@ -6535,6 +6535,20 @@ fi COREAUDIO="-framework CoreAudio -framework AudioUnit -framework CoreServices -framework AudioToolbox -framework CoreMIDI"
fi + ac_save_LIBS="$LIBS" + LIBS="$LIBS $COREAUDIO" + for ac_func in AUGraphAddNode +do : + ac_fn_c_check_func "$LINENO" "AUGraphAddNode" "ac_cv_func_AUGraphAddNode" +if test "x$ac_cv_func_AUGraphAddNode" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_AUGRAPHADDNODE 1 +_ACEOF + +fi +done + + LIBS="$ac_save_LIBS" fi if test "$ac_cv_header_OpenAL_al_h" = "yes" then diff --git a/configure.ac b/configure.ac index c0a9d7f..b4be299 100644 --- a/configure.ac +++ b/configure.ac @@ -719,6 +719,11 @@ case $host_os in dnl CoreServices needed by AudioUnit AC_SUBST(COREAUDIO,"-framework CoreAudio -framework AudioUnit -framework CoreServices -framework AudioToolbox -framework CoreMIDI") fi + dnl Check for the AUGraphAddNode function + ac_save_LIBS="$LIBS" + LIBS="$LIBS $COREAUDIO" + AC_CHECK_FUNCS(AUGraphAddNode) + LIBS="$ac_save_LIBS" fi if test "$ac_cv_header_OpenAL_al_h" = "yes" then diff --git a/dlls/winecoreaudio.drv/audiounit.c b/dlls/winecoreaudio.drv/audiounit.c index 5191669..bd0ad17 100644 --- a/dlls/winecoreaudio.drv/audiounit.c +++ b/dlls/winecoreaudio.drv/audiounit.c @@ -59,6 +59,18 @@ static inline OSStatus AudioComponentInstanceDispose(AudioComponentInstance aci) } #endif
+#ifndef HAVE_AUGRAPHADDNODE +static inline OSStatus AUGraphAddNode(AUGraph graph, const AudioComponentDescription *desc, AUNode *node) +{ + return AUGraphNewNode(graph, desc, 0, NULL, node); +} + +static inline OSStatus AUGraphNodeInfo(AUGraph graph, AUNode node, AudioComponentDescription *desc, AudioUnit *au) +{ + return AUGraphGetNodeInfo(graph, node, desc, 0, NULL, au); +} +#endif + WINE_DEFAULT_DEBUG_CHANNEL(wave); WINE_DECLARE_DEBUG_CHANNEL(midi);
@@ -194,11 +206,15 @@ int AudioUnit_GetInputDeviceSampleRate(void) { AudioDeviceID defaultInputDevice; UInt32 param; + AudioObjectPropertyAddress propertyAddress; Float64 sampleRate; OSStatus err;
param = sizeof(defaultInputDevice); - err = AudioHardwareGetProperty(kAudioHardwarePropertyDefaultInputDevice, ¶m, &defaultInputDevice); + propertyAddress.mSelector = kAudioHardwarePropertyDefaultInputDevice; + propertyAddress.mScope = kAudioObjectPropertyScopeGlobal; + propertyAddress.mElement = kAudioObjectPropertyElementMaster; + err = AudioObjectGetPropertyData(kAudioObjectSystemObject, &propertyAddress, 0, NULL, ¶m, &defaultInputDevice); if (err != noErr || defaultInputDevice == kAudioDeviceUnknown) { ERR("Couldn't get the default audio input device ID: %08lx\n", err); @@ -206,7 +222,9 @@ int AudioUnit_GetInputDeviceSampleRate(void) }
param = sizeof(sampleRate); - err = AudioDeviceGetProperty(defaultInputDevice, 0, 1, kAudioDevicePropertyNominalSampleRate, ¶m, &sampleRate); + propertyAddress.mSelector = kAudioDevicePropertyNominalSampleRate; + propertyAddress.mScope = kAudioDevicePropertyScopeInput; + err = AudioObjectGetPropertyData(defaultInputDevice, &propertyAddress, 0, NULL, ¶m, &sampleRate); if (err != noErr) { ERR("Couldn't get the device sample rate: %08lx\n", err); @@ -226,6 +244,7 @@ int AudioUnit_CreateInputUnit(void* wwi, AudioUnit* out_au, AudioComponent component; AudioUnit au; UInt32 param; + AudioObjectPropertyAddress propertyAddress; AURenderCallbackStruct callback; AudioDeviceID defaultInputDevice; AudioStreamBasicDescription desiredFormat; @@ -291,7 +310,10 @@ int AudioUnit_CreateInputUnit(void* wwi, AudioUnit* out_au,
/* Find the default input device */ param = sizeof(defaultInputDevice); - err = AudioHardwareGetProperty(kAudioHardwarePropertyDefaultInputDevice, ¶m, &defaultInputDevice); + propertyAddress.mSelector = kAudioHardwarePropertyDefaultInputDevice; + propertyAddress.mScope = kAudioObjectPropertyScopeGlobal; + propertyAddress.mElement = kAudioObjectPropertyElementMaster; + err = AudioObjectGetPropertyData(kAudioObjectSystemObject, &propertyAddress, 0, NULL, ¶m, &defaultInputDevice); if (err != noErr || defaultInputDevice == kAudioDeviceUnknown) { ERR("Couldn't get the default audio device ID: %08lx\n", err); @@ -396,10 +418,10 @@ int SynthUnit_CreateDefaultSynthUnit(AUGraph *graph, AudioUnit *synth) desc.componentType = kAudioUnitType_MusicDevice; desc.componentSubType = kAudioUnitSubType_DLSSynth;
- err = AUGraphNewNode(*graph, &desc, 0, NULL, &synthNode); + err = AUGraphAddNode(*graph, &desc, &synthNode); if (err != noErr) { - ERR_(midi)("AUGraphNewNode cannot create synthNode : %s\n", wine_dbgstr_fourcc(err)); + ERR_(midi)("AUGraphAddNode cannot create synthNode : %s\n", wine_dbgstr_fourcc(err)); return 0; }
@@ -407,10 +429,10 @@ int SynthUnit_CreateDefaultSynthUnit(AUGraph *graph, AudioUnit *synth) desc.componentType = kAudioUnitType_Output; desc.componentSubType = kAudioUnitSubType_DefaultOutput;
- err = AUGraphNewNode(*graph, &desc, 0, NULL, &outNode); + err = AUGraphAddNode(*graph, &desc, &outNode); if (err != noErr) { - ERR_(midi)("AUGraphNewNode cannot create outNode %s\n", wine_dbgstr_fourcc(err)); + ERR_(midi)("AUGraphAddNode cannot create outNode %s\n", wine_dbgstr_fourcc(err)); return 0; }
@@ -430,10 +452,10 @@ int SynthUnit_CreateDefaultSynthUnit(AUGraph *graph, AudioUnit *synth) }
/* Get the synth unit */ - err = AUGraphGetNodeInfo(*graph, synthNode, 0, 0, 0, synth); + err = AUGraphNodeInfo(*graph, synthNode, 0, synth); if (err != noErr) { - ERR_(midi)("AUGraphGetNodeInfo return %s\n", wine_dbgstr_fourcc(err)); + ERR_(midi)("AUGraphNodeInfo return %s\n", wine_dbgstr_fourcc(err)); return 0; }
diff --git a/include/config.h.in b/include/config.h.in index 5cae81b..0b16b35 100644 --- a/include/config.h.in +++ b/include/config.h.in @@ -52,6 +52,9 @@ /* Define to 1 if you have the <audio/soundlib.h> header file. */ #undef HAVE_AUDIO_SOUNDLIB_H
+/* Define to 1 if you have the `AUGraphAddNode' function. */ +#undef HAVE_AUGRAPHADDNODE + /* Define to 1 if you have the <capi20.h> header file. */ #undef HAVE_CAPI20_H