使用mencoder从照片中提取视频?

use*_*024 5 video mencoder

白天,我每分钟都会从相机中拍照。我想从图像中制作视频。1 天 -> 1 个视频

我在一天结束时使用 mencoder 这样做: mencoder "mf://*.jpg" -mf fps=25:type=jpg -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:vbitrate=7000 -vf scale=1024:768 -oac copy -o movie.avi 它工作正常,但是:

问题是我需要在 Raspberry Pi(700MHz ARM)上做这件事,他需要大约一个小时才能从白天拍摄的 1500 张照片中制作视频(它的工作速度约为 0.5 fps)。

有什么办法可以“连续”制作视频——如何在每张照片拍摄后立即将其传递给mencoder——并在每天午夜停止制作视频?然后它会拍一张照片,处理 2-3 秒,然后再等一分钟再做一次。

谢谢。

Jea*_*ean 1

这不提供 的答案mencoder,但提供ffmpeg评论中允许的答案。

要求:

  • 所有图片必须连续编号(即picName1.png、picName2.png等)
  • 所有图片必须位于同一文件夹中。
  • 您必须拥有最新版本的 ffmpeg,因为选项最近发生了更改

要创建您的视频,请使用:

ffmpeg -r fps -f image2 -i '/path/to/your/picName%d.png' -qscale 0 '/path/to/your/new/video.avi'
Run Code Online (Sandbox Code Playgroud)
  • 将fps替换为所需的帧速率(10、25、30 等)fps。
  • 将/path/to/your/picName替换为实际路径,但保留 %d,它告诉 ffmpeg 在此处放置一个数字。
  • 将/path/to/your/new/video.avi替换 为您选择的目的地。

以这种方式创建的视频将具有最高的质量。您可以使用该选项调整质量以满足您的视频大小要求-q

有关更多说明,请参阅ffmpeg 的手册页。

不幸的是,据我所知,没有办法每隔几分钟左右传递一张图片。我建议采用以下解决方案之一:

  • 每天午夜编译一次视频。凌晨 1 点你就收到了。
  • 如果您需要观看,每天将视频编译几次。这是大量的浪费处理,因为您每次都处理全部数据。
  • 按块编译视频(例如每 2 小时)并在一天结束时合并所有视频。

如果白天不需要看视频,那么第一个解决方案是最简单的。


以下是手册页的引用:

要从许多图像创建视频:

ffmpeg -f image2 -i foo-%03d.jpeg -r 12 -s WxH foo.avi 语法“foo-%03d.jpeg”指定使用三位补零组成的十进制数来表示序列号。它与 C printf 函数支持的语法相同,但只有接受普通整数的格式才适用。