AVCaptureViewModel

AVCaptureViewModel 是一个 ObservableObject,它暴露了 @Published 属性,可与提供的 CameraPreview (SwiftUI) 或 CameraPreviewView (UIKit) 配合使用。 它允许您围绕它们构建自定义界面,作为更大的 ViewUIViewController(分别是)的一部分,用于捕获照片和视频。

它可以用于捕获照片和视频,并立即发送到设备的照片库,或者您可以订阅提供的 @Published 属性,以便在捕获发生时获取它们。

未来和下一步计划

为了提供更精细的控制,还有更多工作要做,但它现在已经可以正常工作了。

需要添加的功能

如何使用 AVCaptureViewModel

敬请期待

其他说明

鸣谢

大部分幕后代码直接源自 Apple 的 AVCam 教程。 我从当前的(需要 iOS 17/Xcode 15 的部分)版本开始,并使其向后兼容到 iOS 13。我还重写了部分代码以使用 AVCaptureViewModel 的属性,以及替换 @IBAction@IBOutlets。 此外,我将他们的 PreviewView 变成了 CameraPreviewView 并用 CameraPreview 包装了它。