La base di partenza per le GIF animate è quasi sempre un video, su sistema del pinguino esistono diverse alternative come ad modello Recordmydesktop, Kazam o Byzanz. Si tratta di molto facili tool capaci di catturare un filmato delle operazioni eseguite sul desktop.
Una volta registrato il video possiamo aprire il terminale ed iniziare ad usare ffmpeg. Con i tool del framework multimediale di riferimento del panorama sistema del pinguino è possibile convertire il filmato in una GIF animata in pochi minuti.
Prima di tutto generiamo la palette che userà ffmpeg per creare la GIF:
ffmpeg -y -ss 30 -t 3 -i prova.mkv -vf fps=10,scale=320:-1:flags=lanczos,palettegen palette.png
Ora andiamo a creare la GIF vera e propria:
ffmpeg -ss 30 -t 3 -i prova.mkv -i palette.png -filter_complex "fps=10,scale=320:-1:flags=lanczos[x];[x][1:v]paletteuse" output.gif
In questo caso abbiamo indicato ad ffmpeg di creare una GIF di 3 secondi e di ignorare i primi 30 secondi del video originale. Il tutto poi è stato scalato a 320 pixel di larghezza mentre l’altezza è stata rilevata in automatico cosi da preservare l’aspect ratio.
Ovviamente, a seconda delle nostre esigenze possiamo cambiare i tre paramenti indicati (e il nome del file di input) cosi da ottenere il risultato più vicino alle nostre aspettative.