我所描述的基本上是幻灯片。
我希望能够创建一个由三个不同的帧 1、2 和 3 组成的视频,但每个帧都会显示一个小时。
假设我们有一个文件
inputs.txt
file 'img1.jpg'
duration 3600
file 'img2.jpg'
duration 3600
file 'img3.jpg'
duration 3600
我想像这样连接这些图像:
ffmpeg -f concat -i inputs.txt output.mp4 -y
然而,这已经给了我警告
超过1000帧重复
我在文档中看到了一些参数,例如
decimate
或 mpdecimate
,但它们在这里似乎不起作用。
是否有可能做我在这里尝试的事情?
在一段时间后显示特定图像似乎是“理所当然的”,但我不知道如何实现这一点。
顺便说一句,我在这里也尝试使用 MKV,但这会导致视频只有三帧,而不是三个小时的视频:
ffmpeg -f concat -i inputs.txt output.mkv -y
我得到的最接近的结果是像上面一样使用
concat
,并设置较低的帧速率。我不知道帧率可能会低于。
与
file 'image1.jpg'
duration 3600
file 'image2.jpg'
duration 3600
file 'image3.jpg'
duration 3600
file 'image3.jpg'
duration 0
我只是跑了
ffmpeg -f concat -i inputs.txt -vf "fps=0.1" output.mp4 -y
每张图像约为 20kB,生成的三个小时视频占用约 80kB 的存储空间。