Как получить аудио с аудио входа устройства с помощью аудиоустройства osx - PullRequest
0 голосов
/ 08 мая 2018

Я потратил довольно много времени, пытаясь понять, как я могу получить голос от микрофона пользователя с помощью аудиоустройства, чтобы я мог использовать его при обратном вызове записи аудиоустройства, но я все еще в стеке.

- (OSStatus) setupMicInput {
AudioObjectPropertyAddress addr;
UInt32 size = sizeof(AudioDeviceID);
AudioDeviceID deviceID = 0;

addr.mSelector = kAudioHardwarePropertyDefaultInputDevice;
addr.mScope = kAudioObjectPropertyScopeGlobal;
addr.mElement = kAudioObjectPropertyElementMaster;

OSStatus err = AudioObjectGetPropertyData(kAudioObjectSystemObject, &addr, 0, NULL, &size, &deviceID);
checkStatus(err);

if (err == noErr) {
    err = AudioUnitSetProperty(audioUnit, kAudioOutputUnitProperty_CurrentDevice, kAudioUnitScope_Global, 0, &deviceID, size);
}

checkStatus(err);

return err;
}

Я получаю эту ошибку

2018-05-08 10:07:29.454485+0300 OsxSocketSound[1414:20839] [AudioHAL_Client] AudioHardware.cpp:578:AudioObjectGetPropertyDataSize:  AudioObjectGetPropertyDataSize: no object with given ID 0
2018-05-08 10:07:29.454517+0300 OsxSocketSound[1414:20839] 

[AudioHAL_Client] AudioHardware.cpp:666:AudioObjectGetPropertyData:  AudioObjectGetPropertyData: no object with given ID 0
2018-05-08 10:07:29.454715+0300 OsxSocketSound[1414:20839] 

[AudioHAL_Client] AudioHardware.cpp:3446:AudioDeviceSetProperty:  AudioDeviceSetProperty: no device with given ID
2018-05-08 10:07:29.454738+0300 OsxSocketSound[1414:20839] 1610:  ca_verify_noerr: [AudioDeviceSetProperty(mDeviceID, NULL, 0, isInput, kAudioDevicePropertyIOProcStreamUsage, theSize, theStreamUsage), 560227702].

Хотелось бы, чтобы кто-нибудь помог мне с примером аудиоустройства и захвата микрофонного входа. Спасибо

1 Ответ

0 голосов
/ 29 июля 2018

Кажется, ваши права на приложение установлены неправильно. На вкладке возможностей, вы должны проверить микрофон. Пожалуйста, проверьте один раз.

...