3
Я тестирую запись звука на Mac, используя следующий кодAudioHardwareServiceGetPropertyData осуждается
OSStatus error;
AudioDeviceID deviceID = 0;
AudioObjectPropertyAddress propertyAddress;
UInt32 propertySize;
propertyAddress.mSelector = kAudioHardwarePropertyDefaultInputDevice;
propertyAddress.mScope = kAudioObjectPropertyScopeGlobal;
propertyAddress.mElement = 0;
propertySize = sizeof(AudioDeviceID);
error = AudioHardwareServiceGetPropertyData(kAudioObjectSystemObject,
&propertyAddress,
0,
NULL,
&propertySize,
&deviceID);
if(error)
return error;
propertyAddress.mSelector = kAudioDevicePropertyNominalSampleRate;
propertyAddress.mScope = kAudioObjectPropertyScopeGlobal;
propertyAddress.mElement = 0;
propertySize = sizeof(Float64);
error = AudioHardwareServiceGetPropertyData(deviceID,
&propertyAddress,
0,
NULL,
&propertySize,
outSampleRate);
Но Xcode дал мне, что AudioHardwareService *** осуждаются из OS X 10.11.
Я проверил руководство API Apple, но я не могу найти замену для этих API.
Я знаю, что это работает, но все эти предупреждения настолько раздражают. Что мне делать?
Что касается молчания компилятора, я не знаю - устаревший не вышел на пенсию. Else, можете ли вы попробовать использовать 'AudioHardwareGetProperty()'? Это хорошо документировано. Вы даже можете получить диапазон доступных номинальных частот дискретизации. – user3078414