3

我正在寻找一种在运行 iOS 9 的 iPhone 上创建长时间流逝视频的方法,并希望获得一些关于如何开始的指示。理想情况下,我会将 1 小时的素材压缩为 1 分钟,因此比例因子为 60。我从 60 帧中取出一帧并将它们拼接在一起,对吗?

我有一个使用 AVFoundation 捕获图像的项目captureOutput:idOutputSampleBuffer:fromConnection:

但是,我不确定是否有更好的方法来创建几个小时的时间间隔

  • 拍摄单张照片并将它们拼接在一起(每隔几秒钟激活一次相机)是否有意义?

  • 或者只是从 CMSampleBufferRef 中取出帧?

  • 我可以使用其他 API 来捕获相机图像吗?

    我希望了解哪种方法会带来最高的质量和电池寿命。

我正在查看这个问题,它似乎有拼接图像的代码,但我不确定我的项目是否需要其他任何东西。

4

2 回答 2

1

完成延时的一种方法是,您可以使用从样本缓冲区获取图像,而不是使用AVCaptureVideoDataOutput 处理视频帧。AVCapturePhotoOutput

然后将计时器设置为每秒钟左右捕获一次采样缓冲区,最后将帧拼接在一起AVAssetWriter以获得视频。

查看 Apple 的 StopNGo 示例应用程序。

于 2017-01-14T19:07:38.473 回答
0

如果您考虑 dslr 如何捕获它,您将掌握它。

相机基本上每 n 秒点击 1 张图片。

假设您将值设置为 60。这将导致每分钟点击 1 次。您离开相机 8 小时 -> 480 分钟 -> 480 张照片。

现在是时候将这些框架缝合在一起了。假设您以 10 fps 添加它们,这意味着 1 秒内有 10 张照片。这将产生 48 秒的总镜头。我为此写了一篇短文。如果需要我可以提供链接。

于 2019-01-10T02:25:24.130 回答