从Swift 3中的视频中提取框架



嘿,我正在尝试在设备上运行实时供稿。现在,我想每3秒捕获每张照片,但是每次都可以捕获照片。它发出快门的声音。这是不好的ux。

因此,我想从前置摄像头运行活摄像头流,并在某些持续时间(〜3秒)捕获框架。

如何从实时相机供稿中提取框架并将其存储在UIIMAGE变量中?

谢谢!

我完全了解您的问题。几天前,我也面临着这个问题,这就是为什么我开发了一个完整的解决方案,可以通过显示实时相机预览,将其正确布置在视图上,以连续获取摄像头,并有效地将框架转换为UIIMAGE,而无需内存泄漏以相应地利用它。请根据您的需要利用解决方案。该解决方案针对Swift 4.2进行了优化,并在Xcode 10.0上开发。

这是GitHub Repo的链接: - https://github.com/anand2nigam/cameraframeextractor

请使用您的iPhone或iPad测试应用程序,因为它在模拟器上无法使用。请让我知道应用程序功能及其工作,如果需要任何帮助,请与我联系。希望它可以解决您的问题。快乐学习。

当您编写自己的自定义相机时,您将使用AvassetReader和AvassetWriter与AvCaptureVideDataOdataUtputsamplesBlupperDelegate结合使用来播放和处理CMSampleBuffers。

使用这种方法,您可以轻松获得使用过滤器等的ciimage和处理。

您基本上想要一个计时器一次触发每三秒钟一次,让代表块知道捕获和处理框架,做您想做的事情,然后继续丢弃其余的框架(或在视频上写下它们,如果是这样,则将它们写入视频你想要)。

此处的这个问题在Swift中使用实时过滤器录制视频包含您要寻找的示例代码。而不是写出缓冲区,而是将其捕获为图像。

祝你好运!

最新更新