【问题标题】:How to create a time lapse video like the photos app?如何创建像照片应用一样的延时视频?
【发布时间】:2023-04-09 10:16:01
【问题描述】:

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

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

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

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

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

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

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

I'm looking at this question which appears to have code for stitching images,但我不确定我的项目是否需要其他任何东西。

【问题讨论】:

标签: ios photo video-capture cmsamplebufferref timelapse


【解决方案1】:

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

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

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

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

【讨论】:

    【解决方案2】:

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

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

    查看 Apple 的 StopNGo 示例应用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-25
      • 1970-01-01
      • 1970-01-01
      • 2019-11-08
      • 1970-01-01
      相关资源
      最近更新 更多