有什麼辦法在Linux上將動畫GIF轉換爲視頻格式(例如.avi
)?在Linux上的動畫GIF到AVI
我已經嘗試
ffmpeg -i thegif.gif thevideo.avi
,但我得到的是視頻的第一張圖像。
有什麼辦法在Linux上將動畫GIF轉換爲視頻格式(例如.avi
)?在Linux上的動畫GIF到AVI
我已經嘗試
ffmpeg -i thegif.gif thevideo.avi
,但我得到的是視頻的第一張圖像。
我可以建議ImageMagick的和ffmpeg的
的組合,這樣做是爲了提取每個幀PNG/JPEG
$magick> convert 'images.gif[0]' image.png
難道這將圖像轉換爲影片序列
ffmpeg -f image2 -i image%d.jpg video.mpg
更多幫助on commands
http://www.imagemagick.org/script/command-line-processing.php
http://www.catswhocode.com/blog/19-ffmpeg-commands-for-all-needs
如果你的gif有轉移,你必須添加-coalesce像這樣:convert -coalesce download.gif some%05d.png – 2013-04-29 09:55:44
-1,因爲你的第一個命令不起作用。但是NordicMainframe的命令起作用。 – erik 2014-05-22 20:00:41
這會從輸入gif中丟失幀頻信息。目前的ffmpeg現在可以直接處理動畫gif輸入。 – 2014-11-12 14:00:11
FFmpeg的GIF輸入不工作也很好。它通常是更容易轉換(從ImageMagick的)來解壓縮GIF幀,並與ffmpeg的處理這些:
convert some.gif some%05d.png
ffmpeg -i some%05d.png some.avi
rm some*.png
如果你想有一定的幀率爲輸入,因爲所產生的視頻是快還是慢
ffmpeg -r 'xx' -i some%05d.png some.avi
其中xx是輸入幀率。
如果你不想臨時文件,你可以嘗試的mencoder:
mencoder myfile.gif -mf fps=25 -o myfile.avi -ovc lavc -lavcopts vcodec=mpeg4
的ffmpeg -i foo.gif foo.mkv工作與當前的ffmpeg的,甚至還可以直接用可變幀率GIF動畫作品。使用mkv輸出,您可以獲得可變的幀速率mkv。使用mp4輸出時,會根據需要將fps提高到最高,然後根據需要複製幀以在適當時顯示內容。例如一個25 fps和10 fps的gif製作了一個50fps的mp4,其中包括2x dups和5x dup幀,具體取決於哪一部分。存儲重複的幀根本不佔用太多空間,IDK如果它們甚至位於h.264流或只是mp4容器。 – 2014-11-12 13:58:36