我正在使用ffmpeg从一组png图像开始制作视频。但是,我的图像编号如下:
image_D5_C0_F4.png
image_D10_C0_F4.png
image_D15_C0_F4.png
image_D20_C0_F4.png
等等。基本上,一切都保持不变,但内在部分会发生变化。我的ffmpeg命令如下所示:
ffmpeg -framerate 8 -start_number 5 -i img/image_%02d_C0_F4.png -c:v libx264 -r 30 -s 1200x900 -pix_fmt yuv420p out.mp4
但显然它不起作用。我查看手册找到一个选项,允许我指定一个起始编号(在这种情况下为5)和一个标准增量(再次为5),所以要抓住5,10,15,20等。
关于如何解决这个问题的任何想法?我知道我可以使用脚本来处理所有文件,但我想先检查ffmpeg是否具有所需的选项。
由于
答案 0 :(得分:1)
您可以使用glob模式类型:
ffmpeg -framerate 8 -pattern_type glob -i "*.png" -c:v libx264 -r 30 \
-vf "scale=1200:-2,format=yuv420p" -movflags +faststart out.mp4
注意:
scale video filter比-s
更通用。您只需选择一维值,它将自动计算另一个值。
-movflags +faststart
将moov原子从文件的末尾重定位到文件的开头。如果客户端将通过渐进式下载(例如在浏览器中)查看视频,这将非常有用。
我不确定glob模式是否适用于Windows,或者至少使用Zeranoe's FFmpeg Builds(我需要对其进行测试)。
另见: