我目前正在使用以下命令从视频创建图像 gif
ffmpeg -i '/home/video/test.mp4' -vf fps=1/180 '/home/video/test.mp4%03d.jpg' && ffmpeg -framerate 1 -i '/home/video/test.mp4%03d.jpg' -vf scale=160x110 -r 30 '/home/video/test.mp4.gif'
我想修改此命令,以便它可以用于文件夹中的每个 .mp4 文件,而不是像test.mp4
上面所示的那样。
答案1
在您的情况下使用 shell 脚本的 for 循环
for i in *.mp4 ;
do
ffmpeg -i "$i" -vf fps=1/180 "/home/video/$i%03d.jpg" && ffmpeg -framerate 1 -i "/home/video/$i%03d.jpg" -vf scale=160x110 -r 30 "/home/video/$i.gif";
done;
直接运行它或将其存储在 xyz.txt 文件中并运行source xyz.txt