Анимированный GIF для AVI на Linux - PullRequest
25 голосов
/ 09 июля 2010

Есть ли способ конвертировать анимированный GIF-файл в видеоформат (например, .avi) в Linux?

Я уже пробовал

ffmpeg -i thegif.gif thevideo.avi

но все, что я получаю, это первое изображение видео.

Ответы [ 5 ]

45 голосов
/ 09 июля 2010

GIF-ввод ffmpeg работает не слишком хорошо.Обычно проще распаковать gif-кадры с помощью convert (из ImageMagick) и обработать их с помощью ffmpeg:

convert some.gif some%05d.png  
ffmpeg -i some%05d.png some.avi  
rm some*.png
13 голосов
/ 09 июля 2010

Я могу предложить комбинацию 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/

9 голосов
/ 08 октября 2013

Если вы хотите иметь определенную частоту кадров в качестве входного, потому что результирующее видео должно быть быстрым или медленным

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

где xx - частота входного кадра.

0 голосов
/ 10 июля 2017

Если вам не нужны временные файлы, вы можете попробовать mencoder:

mencoder myfile.gif -mf fps=25 -o myfile.avi -ovc lavc -lavcopts vcodec=mpeg4
0 голосов
/ 03 апреля 2015

Если вы хотите иметь цикл в качестве вывода

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

где x - время показа видео в секундах.

Источник

...