AudioSession 移除蓝牙功能

AudioSession Removes the Bluetooth functionality

'我已经编写了一个摄像头来录制视频。并且,为了"capture"视频的数据输出有声音,我使用下面的代码来设置音频。

AVAudioSession.sharedInstance().requestRecordPermission { (granted: Bool) -> Void in
            if granted {
                let audioCaptureDevice = AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeAudio)
                do {
                    let audioInput = try AVCaptureDeviceInput(device: audioCaptureDevice)
                    self.session?.addInput(audioInput)
                } catch {
                }
            }
        }

问题是我想在录制视频的同时通过蓝牙扬声器播放音乐。我发现上面的代码导致音乐只能从设备的扬声器播放,而不是从连接的蓝牙设备播放。

我已经查看了很多关于这个主题的堆栈溢出帖子,但是我还没有找到一个令人满意的解决方案来解决我的问题。如何使用设备的摄像头和麦克风录制视频,同时允许使用 Swift 2 编程从连接的蓝牙扬声器播放音乐?

自 2014 年 5 月以来,我一直在处理同样的问题。

我在这里提出了这个问题:Keep bluetooth sound when initializing AVAudioSession 并且还尝试向 Apple 开具付费支持票,您可以看到他们的回复作为对该问题的答案。但这里也供参考:

There is no supported way to achieve the desired functionality given the currently shipping system configurations. If you would like for Apple to consider adding support for such features in the future, please submit an enhancement request via the Bug Reporter tool at http://bugreport.apple.com.

因此,由于没有支持的方式,我在他们的错误报告系统上提出了适当的功能请求,他们从未回复过我,直到本周,他们说:

This is an older report and much has changed since it was filed. We are closing it. If this is still an issue for you, or if you have questions regarding the resolution of this issue, please update your bug report with them.

所以,我检查了最新的 iOS 版本、测试版等。还是一样。

所以除非我遗漏了一些新的东西,不幸的是答案是:"We can't record and play through BlueTooth at the same time"

希望你会 post 如果你找到了一种方法,你会发现你的发现。