将一系列jpg转换为Ruby中的mov文件(或使用任何语言)

Convert a series of jpg into an mov file in Ruby (or using any language)

我正在用Ruby制作一个站点,其中有一系列的图片(几乎像PowerPoint),我需要自动将这些图片转换成一个连续的视频文件(mov,mpeg),显示每个图片5秒钟左右。任何人都有从哪里开始的线索。

如果有工具完成工作,我也愿意使用其他语言。


您可以使用ffmpeg来完成此操作。下面是ffmpeg wiki中关于这个主题的一个例子:

ffmpeg -framerate 1/5 -i img%03d.jpg -c:v libx264 -r 30 -pix_fmt yuv420p -movflags +faststart out.mp4

这样做的目的是…

  • -i img%03d.jpg读取名为img001.jpg、img002.jpg等一系列jpeg文件的输入
  • -framerate 1/5…每5秒一帧…
  • -c:v libx264…然后将其转换为H.264/MPEG-4 AVC…
  • -r 30…每秒30帧…
  • -pix_fmt yuv420p…使用yuv420像素格式(实际上,所有的ffmpeg标志都在这里工作)。
  • -movflags +faststart…编码完成后,将一些数据重新定位到文件的开头,以便在文件完全下载之前开始播放…
  • out.mp4…并将其存储到out.mp4中。

如果您在Ruby中使用它,那么您可能会启动一个子进程。如果您真的想要一个(quicktime).mov文件而不是H.264 MPEG-4,那么这些标志就类似了。