27

.avi有没有办法在 Linux 上将动画 gif 转换为视频格式(例如)?

我已经试过了

ffmpeg -i thegif.gif thevideo.avi

但我得到的只是视频的第一张图片。

4

5 回答 5

46

ffmpeg 的 gif 输入效果不太好。使用 convert(来自 ImageMagick)解压缩 gif 帧并使用 ffmpeg 处理它们通常更容易:

convert some.gif some%05d.png  
ffmpeg -i some%05d.png some.avi  
rm some*.png
于 2010-07-09T13:26:33.513 回答
13

我可以建议 imagemagick 和 ffmpeg 的组合

这样做以将每个帧提取为 png/jpeg

$magick> convert 'images.gif[0]' image.png

这样做可以将图像转换为电影序列

ffmpeg -f image2 -i image%d.jpg video.mpg

有关命令的更多帮助

http://www.imagemagick.org/script/command-line-processing.php

http://www.catswhocode.com/blog/19-ffmpeg-commands-for-all-needs

http://electron.mit.edu/~gsteele/ffmpeg/

于 2010-07-09T13:24:24.840 回答
9

如果您希望将某个帧速率作为输入,因为生成的视频是快还是慢

ffmpeg -r 'xx' -i some%05d.png some.avi  

其中 xx 是输入帧率。

于 2013-10-08T06:28:21.863 回答
3

如果你不想要临时文件,你可以试试 mencoder:

mencoder myfile.gif -mf fps=25 -o myfile.avi -ovc lavc -lavcopts vcodec=mpeg4
于 2017-07-10T09:42:03.250 回答
0

如果你想有一个循环作为输出

ffmpeg -loop 1 -t x -i some%05d.png some.avi

其中 x 是视频应该运行的时间(以秒为单位)。

来源

于 2015-04-03T16:15:09.377 回答