ffmpeg -i input.flv -vf scale=320:-1 -r 10 -f image2pipe -vcodec ppm - | convert -delay 5 -loop 0 - output.gif
Команда ffmpeg -i input.flv -vf scale=320:-1 -r 10 -f image2pipe -vcodec ppm - | convert -delay 5 -loop 0 - output.gif
выполняет конвертацию видео файла формата FLV в анимированный файл формата GIF.
Вначале, с помощью ffmpeg
, видео файл с именем «input.flv» обрабатывается следующим образом:
— -i input.flv
указывает на входной видео файл;
— -vf scale=320:-1
изменят размер видео, приводя его длину к 320 пикселей, и сохраняя оригинальное соотношение сторон;
— -r 10
устанавливает частоту кадров в 10 кадров в секунду;
— -f image2pipe -vcodec ppm -
выводит каждый кадр в формате PPM в конвейер (pipe).
Затем, полученные кадры передаются команде convert
из пакета imagemagick
, которая выполняет следующие действия:
— -delay 5
задает задержку между кадрами в 5 сотых секунды;
— -loop 0
устанавливает бесконечное повторение анимации;
— output.gif
указывает на выходной GIF файл.
Альтернативно, для конвертации видео в GIF файл, можно использовать другие инструменты, такие как gifsicle
или ImageMagick's
convert
. Однако, комбинация ffmpeg
и imagemagick
часто предоставляет более всесторонние возможности и более качественный результат.