AVCaptureStillImageOutput连接withType返回nil连接

时间:2017-07-27 16:38:30

标签: ios swift ipad

我使用AVCaptureStillImageOutput在iOS上捕捉照片。 为了拍摄照片,我打电话给captureStillImageAsynchronously。 这需要连接,所以我使用:

let connection = stillImageOutput.connection(withMediaType: AVMediaTypeVideo)

然而,在 iOS 9.3.5 的某些设备 iPad 2 上,我看到返回的连接为nil。

我还尝试使用以下方法迭代所有连接:

stillImageOutput.connections

这表明没有可用的连接。

还有其他人遇到过这个问题吗?还有另一种更好的方法来获得连接吗?我意识到我使用了一个已弃用的类但是新方法在iOS 9上不可用,我们仍然需要支持这个平台。顺便说一句,相机应用程序本身似乎在这个设备上工作正常。

还注意到canAddInput上的AVCaptureSession返回false。

输入如下:

guard let captureDevices = AVCaptureDevice.devices(withMediaType: AVMediaTypeVideo) as? [AVCaptureDevice],
      let captureDevice = captureDevices.first(where: { $0.position == .back }),
      let captureDeviceInput = try? AVCaptureDeviceInput(device: captureDevice) else {
                return
        }

0 个答案:

没有答案