我已经在iOS 12设备中同时播放和录制音频,但它从扬声器播放音频,从麦克风录制音频,
所以我需要通过麦克风进行音频播放和录制,这在iOS 9或更少的设备上工作正常。
如何在iOS 12设备中通过麦克风同时播放和录制?
我得到了答案。 请检查下面的代码以更好地理解:
do {
if #available(iOS 10.0, *){
try recordingSession.setCategory(.playAndRecord, mode: .default, options: .defaultToSpeaker)
} else {
AVAudioSession.sharedInstance().perform(NSSelectorFromString("setCategory:error:"), with: AVAudioSession.Category.playAndRecord)
}
try recordingSession.setActive(true)
} catch {
print("failed to record!")
}
如果我们想一次同时使用它们,我们需要将AVAudioSession
的类别设置为 AVAudioSessionCategoryPlayAndRecord
。
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayAndRecord)
} catch let error as NSError {
print(error)
}
do {
try AVAudioSession.sharedInstance().setActive(true)
} catch let error as NSError {
print(error)
}