Eines der besten Werkzeuge, die ich benutze, ist ffmpeg
. Es kann die meisten Videos von einem Screencast-Tool wie beispielsweise aufnehmen kazam
und in ein anderes Format konvertieren.
Installieren Sie dies vom Software-Center - es wird automatisch installiert, wenn Sie das ausgezeichnete ubuntu-restricted-extras
Paket installieren .
Kazam kann in den Videoformaten mp4
oder ausgeben webm
. Im Allgemeinen erhalten Sie bessere Ergebnisse bei der Ausgabe im mp4
Format.
Beispiel für eine GIF-Syntax
Die grundlegende Syntax zum Konvertieren von Video in GIF lautet:
ffmpeg -i [inputvideo_filename] -pix_fmt rgb24 [output.gif]
GIFs konvertiert - insbesondere solche mit einer Standard-Bildrate von 25/29 Bildern pro Sekunde können sehr groß sein. Zum Beispiel - ein 15-Sekunden-Video mit 800 KBit / s und 25 fps kann auf 435 MBit / s ausgegeben werden!
Sie können dies durch eine Reihe von Methoden reduzieren:
Framerate
Verwenden Sie die Option -r [frame-per-second]
zum Beispiel ffmpeg -i Untitled_Screencast.webm -r 1 -pix_fmt rgb24 out.gif
Die Größe wurde von 435 MB auf 19 MB reduziert
Dateigrößenbeschränkung
Verwenden Sie die Option -fs [filesize]
zum Beispiel ffmpeg -i Untitled_Screencast.webm -fs 5000k -pix_fmt rgb24 out.gif
Hinweis - Dies ist eine ungefähre Größe der Ausgabedatei, daher kann die Größe etwas größer als angegeben sein.
Größe des Ausgabevideos
Verwenden Sie die Option -s [widthxheight]
zum Beispiel ffmpeg -i Untitled_Screencast.webm -s 320x200 -pix_fmt rgb24 out.gif
Dadurch wurde die Videogröße des Beispiels 1366 x 768 auf 26 MB reduziert
Schleife für immer
Manchmal möchten Sie vielleicht, dass das GIF für immer wiederholt wird.
Verwenden Sie die Option -loop_output 0
ffmpeg -i Untitled_Screencast.webm -loop_output 0 -pix_fmt rgb24 out.gif
weiter optimieren und schrumpfen
Wenn Sie imagemagick
convert
einen Unschärfefaktor zwischen 3% und 10% verwenden, können Sie die Bildgröße drastisch reduzieren
convert output.gif -fuzz 3% -layers Optimize finalgif.gif
schließlich
Kombinieren Sie einige dieser Optionen, um sie auf etwas zu reduzieren, das für Ask Ubuntu überschaubar ist.
ffmpeg -i Untitled_Screencast.webm -loop_output 0 -r 5 -s 320x200 -pix_fmt rgb24 out.gif
gefolgt von
convert output.gif -fuzz 8% -layers Optimize finalgif.gif
Beispiel