AVAudioSession:麦克风耳机作为输入,iphone扬声器作为输出

时间:2017-01-05 14:47:43

标签: swift ios10 microphone avaudiosession speaker

使用iOS10可以更多地管理AUdioSession,但是当音频通过iphone扬声器输出时,我无法将耳机麦克风作为输入。

下面的'overrideOutputAudioPort'方法也会将输入音频端口覆盖为iphone麦克风

let session = AVAudioSession.sharedInstance()
do {
  try session.setCategory(AVAudioSessionCategoryPlayAndRecord)
  try! session.overrideOutputAudioPort(.speaker)  
} catch {
}

是否有任何解决方案可以将耳机作为输入?

1 个答案:

答案 0 :(得分:1)

我如何解析this Apple documentation,使用AVAudioSession无法做到这一点:

  

如果在将此属性的值设置为kAudioSessionOverrideAudioRoute_Speaker时插入了耳机,则系统会更改输入和输出的音频路由:输入来自内置麦克风;输出到内置扬声器。