Как мне преобразовать webm (видео) в (анимированный) gif в командной строке?

Ответы:

42

От сюда :

ffmpeg -i input.webm -pix_fmt rgb24 output.gif
Барафу Альбино
источник
3
Вот Это Да! Оно работает! И .. 2,6 МБ webm -> 48 МБ gif ^^ - есть мысли уменьшить это?
Brubaker
4
gifsicle - фантастический инструмент для уменьшения размера gifgifsicle -O2 input.gif -o output.gif
Кенн,
1
@BarafuAlbino Спасибо, приятель, но я получил ошибку: «Запрошен неизвестный формат пикселя: rgb16».
Brubaker
2
@brubaker Я думаю, я тебя побил: 120K .webm→ 2.7G .gif. Да, с G .
wchargin
3
rgb24не поддерживается для gif, ffmpeg будет использовать rgb8вместо этого автоматически.
KXXOLING
10

Ответ Барафу в порядке. Но у получающегося gif-файла может быть проблема с преобразованием цвета, на что жалуется ffmpeg Incompatible pixel format 'rgb24' for codec 'gif'. Вот что я нахожу работы:

Сначала создайте палитру PNG:

ffmpeg -y -i input.webm -vf palettegen palette.png

Затем используйте палитру для создания GIF:

ffmpeg -y -i input.webm -i palette.png -filter_complex paletteuse -r 10 output.gif

Источник:

Тайный MP4 / Webm - ubuntubuzz.com

Райнал Гобель
источник
дал гораздо лучший результат в моем случае, чем принятый ответ
Евгений