Боюсь, нет, потому что AQ жестко запрограммирован на использование ввода по умолчанию (насколько мне известно).AQ довольно ограничен, и только iOS дает больше контроля через AutoSessions.Однако вы можете использовать AUHAL для записи с произвольного устройства:
http://developer.apple.com/library/mac/#technotes/tn2091/_index.html
Вам не понадобится перечислять 4 сверху, потому что вы будете использовать AudioDeviceID
для устройства, которое вывыбрали (предположительно, получив список устройств с помощью AudioObjectGetPropertyDataSize
и выбрав нужное вам устройство).
FWIW: если вы решите, что это слишком много, вы, вероятно, по-прежнему можете использовать AudioHardwareSetProperty
для установки kAudioHardwarePropertyDefaultInputDevice
из вашего кода - не то, что вы хотели, но, конечно, меньше работы ...