mirror of https://github.com/xqemu/xqemu.git
audio/coreaudio.c: Use new-in-OSX-10.6 APIs when available
Use the new-in-OSX 10.6 API AudioObjectGetPropertyData() instead of the deprecated AudioDeviceGetProperty() and AudioDeviceSetProperty() functions when possible. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1448747724-15572-5-git-send-email-peter.maydell@linaro.org Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
95a860f62e
commit
2d99f6299b
|
@ -73,6 +73,111 @@ static OSStatus coreaudio_get_voice(AudioDeviceID *id)
|
||||||
&size,
|
&size,
|
||||||
id);
|
id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static OSStatus coreaudio_get_framesizerange(AudioDeviceID id,
|
||||||
|
AudioValueRange *framerange)
|
||||||
|
{
|
||||||
|
UInt32 size = sizeof(*framerange);
|
||||||
|
AudioObjectPropertyAddress addr = {
|
||||||
|
kAudioDevicePropertyBufferFrameSizeRange,
|
||||||
|
kAudioDevicePropertyScopeOutput,
|
||||||
|
kAudioObjectPropertyElementMaster
|
||||||
|
};
|
||||||
|
|
||||||
|
return AudioObjectGetPropertyData(id,
|
||||||
|
&addr,
|
||||||
|
0,
|
||||||
|
NULL,
|
||||||
|
&size,
|
||||||
|
framerange);
|
||||||
|
}
|
||||||
|
|
||||||
|
static OSStatus coreaudio_get_framesize(AudioDeviceID id, UInt32 *framesize)
|
||||||
|
{
|
||||||
|
UInt32 size = sizeof(*framesize);
|
||||||
|
AudioObjectPropertyAddress addr = {
|
||||||
|
kAudioDevicePropertyBufferFrameSize,
|
||||||
|
kAudioDevicePropertyScopeOutput,
|
||||||
|
kAudioObjectPropertyElementMaster
|
||||||
|
};
|
||||||
|
|
||||||
|
return AudioObjectGetPropertyData(id,
|
||||||
|
&addr,
|
||||||
|
0,
|
||||||
|
NULL,
|
||||||
|
&size,
|
||||||
|
framesize);
|
||||||
|
}
|
||||||
|
|
||||||
|
static OSStatus coreaudio_set_framesize(AudioDeviceID id, UInt32 *framesize)
|
||||||
|
{
|
||||||
|
UInt32 size = sizeof(*framesize);
|
||||||
|
AudioObjectPropertyAddress addr = {
|
||||||
|
kAudioDevicePropertyBufferFrameSize,
|
||||||
|
kAudioDevicePropertyScopeOutput,
|
||||||
|
kAudioObjectPropertyElementMaster
|
||||||
|
};
|
||||||
|
|
||||||
|
return AudioObjectSetPropertyData(id,
|
||||||
|
&addr,
|
||||||
|
0,
|
||||||
|
NULL,
|
||||||
|
size,
|
||||||
|
framesize);
|
||||||
|
}
|
||||||
|
|
||||||
|
static OSStatus coreaudio_get_streamformat(AudioDeviceID id,
|
||||||
|
AudioStreamBasicDescription *d)
|
||||||
|
{
|
||||||
|
UInt32 size = sizeof(*d);
|
||||||
|
AudioObjectPropertyAddress addr = {
|
||||||
|
kAudioDevicePropertyStreamFormat,
|
||||||
|
kAudioDevicePropertyScopeOutput,
|
||||||
|
kAudioObjectPropertyElementMaster
|
||||||
|
};
|
||||||
|
|
||||||
|
return AudioObjectGetPropertyData(id,
|
||||||
|
&addr,
|
||||||
|
0,
|
||||||
|
NULL,
|
||||||
|
&size,
|
||||||
|
d);
|
||||||
|
}
|
||||||
|
|
||||||
|
static OSStatus coreaudio_set_streamformat(AudioDeviceID id,
|
||||||
|
AudioStreamBasicDescription *d)
|
||||||
|
{
|
||||||
|
UInt32 size = sizeof(*d);
|
||||||
|
AudioObjectPropertyAddress addr = {
|
||||||
|
kAudioDevicePropertyStreamFormat,
|
||||||
|
kAudioDevicePropertyScopeOutput,
|
||||||
|
kAudioObjectPropertyElementMaster
|
||||||
|
};
|
||||||
|
|
||||||
|
return AudioObjectSetPropertyData(id,
|
||||||
|
&addr,
|
||||||
|
0,
|
||||||
|
NULL,
|
||||||
|
size,
|
||||||
|
d);
|
||||||
|
}
|
||||||
|
|
||||||
|
static OSStatus coreaudio_get_isrunning(AudioDeviceID id, UInt32 *result)
|
||||||
|
{
|
||||||
|
UInt32 size = sizeof(*result);
|
||||||
|
AudioObjectPropertyAddress addr = {
|
||||||
|
kAudioDevicePropertyDeviceIsRunning,
|
||||||
|
kAudioDevicePropertyScopeOutput,
|
||||||
|
kAudioObjectPropertyElementMaster
|
||||||
|
};
|
||||||
|
|
||||||
|
return AudioObjectGetPropertyData(id,
|
||||||
|
&addr,
|
||||||
|
0,
|
||||||
|
NULL,
|
||||||
|
&size,
|
||||||
|
result);
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
/* Legacy versions of functions using deprecated APIs */
|
/* Legacy versions of functions using deprecated APIs */
|
||||||
|
|
||||||
|
@ -85,7 +190,6 @@ static OSStatus coreaudio_get_voice(AudioDeviceID *id)
|
||||||
&size,
|
&size,
|
||||||
id);
|
id);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
static OSStatus coreaudio_get_framesizerange(AudioDeviceID id,
|
static OSStatus coreaudio_get_framesizerange(AudioDeviceID id,
|
||||||
AudioValueRange *framerange)
|
AudioValueRange *framerange)
|
||||||
|
@ -169,6 +273,7 @@ static OSStatus coreaudio_get_isrunning(AudioDeviceID id, UInt32 *result)
|
||||||
&size,
|
&size,
|
||||||
result);
|
result);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static void coreaudio_logstatus (OSStatus status)
|
static void coreaudio_logstatus (OSStatus status)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue