-1

我的应用程序只想访问 Airpod 的麦克风(而不是扬声器),但是当我尝试从我的应用程序开始录制时,如果它正在播放,它会关闭音乐。我怎样才能只使用 Airpod 的麦克风。我不想停止其他应用程序正在播放的任何音乐。

我尝试执行以下操作。此代码片段实际上可以从 Airpod 的麦克风获取输入,但会停止播放任何其他歌曲。

try recordingSession.setCategory(.playAndRecord, mode: .measurement, options: .allowBluetooth)
try recordingSession.setActive(true)


audioRecorder = try AVAudioRecorder(url: audioFilename, settings: settings)
audioRecorder.delegate = self
audioRecorder.isMeteringEnabled = true
audioRecorder.prepareToRecord()
audioRecorder.record() 

我不想停止其他应用程序正在播放的任何音乐。我只想用 Airpod 的麦克风

4

1 回答 1

0

尝试这个

try recordingSession.setCategory(.playAndRecord, mode: .measurement, options: [.allowBluetoothA2DP, .mixWithOthers])

并在您AppDelegate添加此代码剪切到didFinishLaunchingWithOptions

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {

    try! AVAudioSession.sharedInstance().setCategory(AVAudioSession.Category.ambient, mode: AVAudioSession.Mode.default, options: AVAudioSession.CategoryOptions.mixWithOthers)

    return true
}
于 2019-01-18T11:25:53.973 回答