ffmpeg
agora pode gerar GIF de maior qualidade. Se você estiver usando uma versão mais antiga, considere baixar o download de uma versão estática recente ou compilando ffmpeg
.
ffmpeg
example
Esteexemplopulaosprimeiros30segundosdaentradaecriaumasaídade3segundos.Eledimensionaráasaídapara320pixelsdelarguraedeterminaráautomaticamenteaaltura,preservandoaproporção.Ospalettegen
e paletteuse
geram e usam uma paleta personalizada gerada a partir de sua origem.
-
Gerar uma paleta:
ffmpeg -y -ss 30 -t 3 -i input.flv \ -vf fps=10,scale=320:-1:flags=lanczos,palettegen palette.png
-
Saída do GIF usando a paleta:
ffmpeg -ss 30 -t 3 -i input.flv -i palette.png -filter_complex \ "fps=10,scale=320:-1:flags=lanczos[x];[x][1:v]paletteuse" output.gif
Veja GIF de alta qualidade com FFmpeg para muitos mais exemplos e opções.
convert
example
Outro método de linha de comando seria exportar o filme para quadros usando ffmpeg
e, em seguida, criar o GIF com convert
do ImageMagick (ou GraphicsMagick).
246k
-
Exportar quadros:
mkdir frames ffmpeg -i input -vf scale=320:-1:flags=lanczos,fps=10 frames/ffout%03d.png
-
Em seguida, use
convert
(ougm convert
, se você preferir GraphicsMagick) para criar seu GIF animado:convert -loop 0 frames/ffout*.png output.gif
Com convert
, você pode controlar o atraso entre os quadros com -delay
, se desejado.