Praktyczny przewodnik po konwersji plików wideo do wysokiej jakości animowanych GIF-ów z poziomu terminala.
Nowoczesne podejście z FFmpeg (Zalecane)
Generowanie zoptymalizowanych animowanych GIF-ów z paletą barw w jednym poleceniu:
ffmpeg -ss 00:00:02 -to 00:00:08 -i input.mp4 \
-vf "fps=15,scale=480:-1:flags=lanczos,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" \
-loop 0 output.gif
Klasyczny potok ImageMagick i Gifsicle
Konwersja MP4 do GIF za pomocą mplayer i gifsicle
mkdir -p gif
mplayer -ao null -vo gif89a:outdir=gif "$INPUT"
mogrify -format gif *.png
gifsicle --colors=256 --delay=4 --loopcount=0 --dither -O3 gif/*.gif > "${INPUT%.*}.gif"
rm -rf gif
Wymaga narzędzi mplayer, imagemagick i gifsicle. Wyodrębnia klatki wideo i łączy je w zoptymalizowany plik GIF.
Przycinanie zakresu czasu
Wyodrębnianie określonego fragmentu wideo na podstawie znaczników czasu:
mplayer -ao null -ss 0:02:06 -endpos 0:00:15 -vo gif89a:outdir=gif videofile.mp4
-ss [time]: Początkowy znacznik czasu.-endpos [duration]: Długość trwania przetwarzanego fragmentu.
Optymalizacja za pomocą Gifsicle
Kompresja stratna i redukcja kolorów w celu drastycznego zmniejszenia rozmiaru pliku GIF:
# Redukcja kolorów i optymalizacja kompresji
gifsicle -O3 --colors 128 input.gif -o output.gif
# Kompresja stratna (znaczne zmniejszenie rozmiaru)
gifsicle -O3 --lossy=80 input.gif -o output.gif