Jak przekonwertować webm (wideo) na (animowany) gif w linii poleceń?

Odpowiedzi:

42

Od tutaj :

ffmpeg -i input.webm -pix_fmt rgb24 output.gif
Barafu Albino
źródło
3
Łał! To działa! I .. 2,6 MB webm -> 48 MB gif ^^ - ktoś myśli, aby to zmniejszyć?
Brubaker
4
gifsicle to fantastyczne narzędzie do zmniejszania rozmiaru gifgifsicle -O2 input.gif -o output.gif
kenn
1
@BarafuAlbino Dzięki kolego, ale dostałem błąd: „Zażądano nieznanego formatu pikseli: rgb16.”
Brubaker
2
@brubaker Myślę, że udało mi się pokonać: .webm120K → 2.7G .gif. Tak, to z G .
wchargin
3
rgb24nie jest obsługiwany przez gif, ffmpeg użyłby go rgb8automatycznie.
kxxoling
10

Odpowiedź Barafu jest w porządku. Ale wynikowy gif może mieć problem z konwersją kolorów, na co narzeka ffmpeg Incompatible pixel format 'rgb24' for codec 'gif'. Oto, co według mnie działa:

Najpierw utwórz paletę PNG:

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

Następnie użyj palety, aby utworzyć gif:

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

Źródło:

Covert MP4 / Webm - ubuntubuzz.com

Raynal Gobel
źródło
dało w moim przypadku znacznie lepszy wynik niż zaakceptowana odpowiedź
Eugene