Один из лучших инструментов, которые я использую, это ffmpeg
. Он может взять большую часть видео из инструмента скринкаста, например, kazam
и конвертировать его в другой формат.
Установите его из софт-центра - он устанавливается автоматически, если вы устанавливаете отличный ubuntu-restricted-extras
пакет.
Kazam может выводить видео в форматах mp4
или webm
. Как правило, вы получаете лучшие результаты в mp4
формате.
пример GIF создания синтаксиса
Основной синтаксис для преобразования видео в GIF:
ffmpeg -i [inputvideo_filename] -pix_fmt rgb24 [output.gif]
Конвертированные GIF-изображения - особенно те, у которых стандартный кадр 25/29 кадров в секунду, могут быть очень большими. Например, 15-секундное видео с разрешением 800 КБ и скоростью 25 кадров в секунду может выводить до 435 МБ!
Вы можете уменьшить это несколькими способами:
частота кадров
Используйте опцию -r [frame-per-second]
например ffmpeg -i Untitled_Screencast.webm -r 1 -pix_fmt rgb24 out.gif
Размер уменьшен с 435 Мб до 19 Мб
ограничение размера файла
Используйте опцию -fs [filesize]
например ffmpeg -i Untitled_Screencast.webm -fs 5000k -pix_fmt rgb24 out.gif
Примечание. Это приблизительный размер выходного файла, поэтому его размер может быть немного больше указанного.
размер выходного видео
Используйте опцию -s [widthxheight]
например ffmpeg -i Untitled_Screencast.webm -s 320x200 -pix_fmt rgb24 out.gif
Это уменьшило размер видео примера 1366x768 до 26 МБ
цикл навсегда
Иногда вы можете захотеть, чтобы GIF зациклился навсегда.
Используйте опцию -loop_output 0
ffmpeg -i Untitled_Screencast.webm -loop_output 0 -pix_fmt rgb24 out.gif
далее оптимизировать и уменьшить
если вы используете imagemagick
convert
коэффициент размытия от 3% до 10%, то вы можете значительно уменьшить размер изображения
convert output.gif -fuzz 3% -layers Optimize finalgif.gif
наконец-то
объедините некоторые из этих опций, чтобы уменьшить их до Ask Ubuntu.
ffmpeg -i Untitled_Screencast.webm -loop_output 0 -r 5 -s 320x200 -pix_fmt rgb24 out.gif
с последующим
convert output.gif -fuzz 8% -layers Optimize finalgif.gif
пример