HMCameraSnapshot 到 UIImage

HMCameraSnapshot to UIImage

我正在玩 homekit 相机设备,我可以在其中获取流视频并将其显示在 HMCameraView 中。我需要拍摄这个视频流的快照,这可以使用 cameraSnapshotControl 函数来完成。效果很好我可以看到使用委托函数:HMCameraSnapshotControlDelegate 拍摄快照。然而,我花了几个小时寻找如何将这个快照转换为像 UIImage 这样的基本图像......我不需要显示这个图像但分析它(CoreML)。有人已经尝试过了吗?似乎没有人使用 Homekit Apple 框架编写代码...

我只是 运行 遇到了同样的问题,但我在 Apple 的官方文档中找不到任何解释如何操作的内容。在玩了一些东西之后,我最终发现你可以通过在 HMCameraView 上设置 cameraSource 属性 来做到这一点,它接受视频流和快照。

@IBOutlet weak var cameraLiveStreamView: HMCameraView!
...

func cameraSnapshotControl(_ cameraSnapshotControl: HMCameraSnapshotControl, didTake snapshot: HMCameraSnapshot?, error: Error?) {
   cameraLiveStreamView?.cameraSource = cameraSnapshotControl.mostRecentSnapshot
}

希望对您有所帮助!