swift AVCapturePhotoOutput capturePhoto 挂起预览

swift AVCapturePhotoOutput capturePhoto hangs preview

显示分辨率为 1080 x 1440 的预览;在 iPhone 8 Plus 上获取最大分辨率 (3024 x 4032) 和质量的照片,代码为:

capturePhotoOutput?.capturePhoto(with: configurePhotoSettings(), delegate: self)

照片设置:

private func configurePhotoSettings() -> AVCapturePhotoSettings {
    let photoSettings = AVCapturePhotoSettings()
    photoSettings.isHighResolutionPhotoEnabled = true
    photoSettings.isAutoStillImageStabilizationEnabled = (capturePhotoOutput?.isStillImageStabilizationSupported)!
    photoSettings.isAutoDualCameraFusionEnabled = (capturePhotoOutput?.isDualCameraFusionSupported)!

    return photoSettings
}

即使我在 didFinishProcessingPhoto.

中什么都不做,也每次都一张一张地做(像连拍模式)和短时间预览冻结

正在寻找使捕获顺利进行的解决方案,也许在后台线程中,但目前我被卡住了..

预览挂起的原因是称为光学稳定的功能。


您只需将其关闭即可在拍摄照片时进行流畅的预览:

photoSettings.isAutoStillImageStabilizationEnabled = false