AVCaptureSession commitConfiguration() 耗时太长

AVCaptureSession commitConfiguration() takes too long

下面是我的 Swift 前后摄像头切换代码。第一次切换时提交配置需要 9 秒,有人知道为什么吗?

        captureSession!.beginConfiguration()
        captureSession!.removeInput(activeVideoInput)
        if captureSession!.canAddInput(videoInput) {
            captureSession!.addInput(videoInput)
            activeVideoInput = videoInput
        }
        captureSession!.commitConfiguration()

我遇到了类似的问题,而且我有时会出现黑屏,而且只有在我更新 xCode.

后才在 ios 8.4 上出现

问题是这样的:

_captureSession.automaticallyConfiguresApplicationAudioSession = NO;
_captureSession.usesApplicationAudioSession=YES;

我在

之前调用了这两行
[self.captureSession startRunning];

只要在 startRunning 之后移动它们就可以使一切正常,如果这不是您的情况,请尝试在 startRunning 之前找到您正在做的特别的事情并将其放在它之后。

祝你好运。