如何在 AVAudioSession 内使用 iPhone XS 中内置的立体声(2 通道)麦克风?

jam*_*rtt 5 iphone ios avaudiosession

AVAudioSession我试图从 iPhone XS 的所谓立体声后置麦克风中获取两个通道,但在与AVAudioSessionPortDescription后置摄像头相关的不同点上只能看到一个通道。

我尝试过使用AVAudioSession如下 API setPreferredInputNumberOfChannels

do {
    try session.setPreferredInputNumberOfChannels(2)
} catch let error {
    debugPrint("\(error)")
}
Run Code Online (Sandbox Code Playgroud)

但得到一个错误:

Error Domain=NSOSStatusErrorDomain Code=-50
Run Code Online (Sandbox Code Playgroud)

有人有过让 2 通道内置麦克风线路正常工作的经验吗?

小智 3

iPhone XS 上的立体声麦克风位于闪电连接器左侧的底部。闪电连接器右侧的那个是降噪麦克风。另外 2 个麦克风位于前置摄像头和后置摄像头旁边。但这些只是单声道麦克风。但当谈到底部立体声麦克风时,有一个很大的问题。当使用内置相机应用程序时,它仅以立体声录制。仅语音备忘录应用程序中的语音仅以单声道录制。而且,立体声麦克风与任何第三方应用程序不兼容。它仅在本机相机应用程序中拍摄视频时有效。