ffmpeg将三个图像组合成一个循环的视频

时间:2018-06-27 11:02:01

标签: ffmpeg

因此,我需要将三张图像组合成一个10秒钟的视频,我进行了搜索,最后我想到了以下命令,它生成的是视频,但不是我期望的。

ffmpeg.exe -loop 1 -framerate 1 -i 20180627124135055101050.JPG -i 20180627124135056101051.JPG -i 20180627124135057101052.JPG -i 20180627124135056101051.JPG -vf framestep=4,setpts=N/FRAME_RATE/TB -c:v mpeg4 -t 10 video.mp4

它当前正在生成一个长度为12秒的视频,但它也仅显示第一张图像,我使用过framerate选项和framestep选项值,但我能看到的所有变化都是在视频中,它实际上从未按照我需要它们显示的顺序显示图像。因此,我基本上需要的是顺序为图像1,图像2,图像3,图像2的3张图像。但是mp4的长度为10秒。

任何帮助将不胜感激

编辑1

所以我已经取得了一些进展,我现在使用以下命令来获取正确的视频输出,但是现在我需要将其循环播放,以便总视频长度可以为10秒

ffmpeg -loop 1 -framerate 25 -t 0.25 -i 20180627124135055101050.JPG  -loop 1 -framerate 24 -t 0.25 -i 20180627124135056101051.JPG -loop 1 -framerate 24 -t 0.25 -i 20180627124135057101052.JPG -loop 1 -framerate 24 -t 0.25 -i 20180627124135056101051.JPG -filter_complex "[0][1][2][3]concat=n=4:v=1:a=0"  video.mp4

1 个答案:

答案 0 :(得分:0)

好,所以我终于弄清楚了,我必须使用的命令才能使它工作:

ffmpeg -loop 1 -framerate 30 -t 0.16 -i 20180627124135055101050.JPG  -loop 1 -framerate 30 -t 0.16 -i 20180627124135056101051.JPG -loop 1 -framerate 30 -t 0.16 -i 20180627124135057101052.JPG -loop 1 -framerate 30 -t 0.16 -i 20180627124135056101051.JPG -filter_complex "[0][1][2][3]concat=n=4:v=1:a=0[v1],[v1]loop=20:32767:0"  video.mp4