使用ffmpeg
,我使用下面的多幅图像制作了一个视频,这是可行的,但我不想使用文件夹中的所有 200 张图像,而是希望视频只包含从 1 到 100 的图像:
ffmpeg -start_number n -i test_%d.jpg -vcodec mpeg4 test.avi
我如何指定视频中包含的帧数或结束帧的数量?
答案1
您可以通过以下方式声明所需的帧数-vframes 100
:
ffmpeg -start_number 1 -i test_%d.jpg -vframes 100 -vcodec mpeg4 test.avi
- 您可能需要根据其他因素指定其他参数,例如
pix_fmt
等,通常使用类似于test_%05d.jpg
带有前导零的五位数字的编号序列;如果您没有这种格式,您可能需要使用通配符模式。
答案2
这对我来说总是很有效:
ffmpeg -i yourfile.mp4 -r 1 -ss 15 -t 16 -f image2 snapshot.jpg
^ ^
^ ^
start end
time time
yourfile.mp4
:影片剪辑snapshot.jpg
:新图像文件- 重要提示:
image2
别管它,因为这是得到我想要的东西的唯一方法
时间仅以秒为单位;如果比卷轴快 2 分钟,则为120
。
一个图像文件始终为一秒,因此请通过该方法计算所需的图像。