ffmpeg 学习12 -- 进阶高级四宫格的应用 用四个mp4生成一个四宫格的gif: 用以下ffmpeg命令将一个视频按不同时间点生成四宫格的GIF:

用四个mp4生成一个四宫格的gif:

以下是使用四个MP4视频生成四宫格GIF的ffmpeg命令:

ffmpeg -i input1.mp4 -i input2.mp4 -i input3.mp4 -i input4.mp4 \

-filter_complex \

"[0:v]trim=0:5,scale=320:-1,setsar=1/1[v1s]; \

[1:v]trim=0:5,scale=320:-1,setsar=1/1[v2s]; \

[2:v]trim=0:5,scale=320:-1,setsar=1/1[v3s]; \

[3:v]trim=0:5,scale=320:-1,setsar=1/1[v4s]; \

[v1s][v2s][v3s][v4s]hstack=4,scale=640:-1" \

output.gif

这个命令将四个MP4视频按以下步骤进行处理:

-i input1.mp4 -i input2.mp4 -i input3.mp4 -i input4.mp4:这个是指定要处理的四个MP4视频文件。

-filter_complex:这个是视频滤镜参数。

[0:v]trim=0:5,scale=320:-1,setsar=1/1[v1s]:这个是对第一个视频进行处理,截取0-5秒的时间段,将视频缩放到320宽度,高度按比例自动调整,设置像素宽高比为1:1,最后将结果保存为v1s。

[1:v]trim=0:5,scale=320:-1,setsar=1/1[v2s]:这个是对第二个视频进行处理,截取0-5秒的时间段,将视频缩放到320宽度,高度按比例自动调整,设置像素宽高比为1:1,最后将结果保存为v2s。

[2:v]trim=0:5,scale=320:-1,setsar=1/1[v3s]:这个是对第三个视频进行处理,截取0-5秒的时间段,将视频缩放到320宽度,高度按比例自动调整,设置像素宽高比为1:1,最后将结果保存为v3s。

[3:v]trim=0:5,scale=320:-1,setsar=1/1[v4s]:这个是对第四个视频进行处理,截取0-5秒的时间段,将视频缩放到320宽度,高度按比例自动调整,设置像素宽高比为1:1,最后将结果保存为v4s。

[v1s][v2s][v3s][v4s]hstack=4,scale=640:-1:这个是将四个视频合并成一个四宫格,将四个小视频水平合并成一个大视频,然后将大视频缩放到640宽度,高度按比例自动调整,最后将结果保存为output.gif。

您可以根据需要调整时间段、缩放比例等参数,以达到最佳的转换效果。


用以下ffmpeg命令将一个视频按不同时间点生成四宫格的GIF:

可以使用以下ffmpeg命令将一个视频按不同时间点生成四宫格的GIF:

ffmpeg -i input.mp4 -filter_complex \

"[0:v]split=4[v1][v2][v3][v4]; \

[v1]trim=0:5,scale=320:-1,setsar=1/1[v1s]; \

[v2]trim=5:10,scale=320:-1,setsar=1/1[v2s]; \

[v3]trim=10:15,scale=320:-1,setsar=1/1[v3s]; \

[v4]trim=15:20,scale=320:-1,setsar=1/1[v4s]; \

[v1s][v2s][v3s][v4s]hstack=4,scale=640:-1" output.gif

这个命令将MP4视频按以下步骤进行处理:

-filter_complex:这个是视频滤镜参数。

[0:v]split=4[v1][v2][v3][v4]:这个是将视频分成4个流。

[v1]trim=0:5,scale=320:-1,setsar=1/1[v1s]:这个是对第一个流进行处理,截取0-5秒的时间段,将视频缩放到320宽度,高度按比例自动调整,设置像素宽高比为1:1,最后将结果保存为v1s。

[v2]trim=5:10,scale=320:-1,setsar=1/1[v2s]:这个是对第二个流进行处理,截取5-10秒的时间段,将视频缩放到320宽度,高度按比例自动调整,设置像素宽高比为1:1,最后将结果保存为v2s。

[v3]trim=10:15,scale=320:-1,setsar=1/1[v3s]:这个是对第三个流进行处理,截取10-15秒的时间段,将视频缩放到320宽度,高度按比例自动调整,设置像素宽高比为1:1,最后将结果保存为v3s。

[v4]trim=15:20,scale=320:-1,setsar=1/1[v4s]:这个是对第四个流进行处理,截取15-20秒的时间段,将视频缩放到320宽度,高度按比例自动调整,设置像素宽高比为1:1,最后将结果保存为v4s。

[v1s][v2s][v3s][v4s]hstack=4,scale=640:-1:这个是将四个流合并成一个四宫格,将四个小视频水平合并成一个大视频,然后将大视频缩放到640宽度,高度按比例自动调整,最后将结果保存为output.gif。

您可以根据需要调整时间段、缩放比例等参数,以达到最佳的转换效果。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章