Текущие версии программ: After Effects CC 2017 v14.2.1  Premiere Pro CC 2017 v11.1.2

не стесняйтесь создавать новые темы для новых вопросов

Анимированная гифка (gif) из видеофайла с помощью программы FFMPEG

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
Ссылки, описания, дополнительная информация для моих уроков на YouTube
Canonical Link
Аватара пользователя

Автор темы
aeplug
Санта
Санта
Сообщения: 1242
Зарегистрирован: 18 мар 2016 23:20
Откуда: С Ютуба
Благодарил (а): 3 раза
Поблагодарили: 145 раз

Анимированная гифка (gif) из видеофайла с помощью программы FFMPEG


Теги:

Сообщение aeplug » 19 дек 2016 11:31

poster joker.jpg
poster joker.jpg (22.12 КБ) 500 просмотров
poster joker.jpg
poster joker.jpg (22.12 КБ) 500 просмотров

В какой-то момент передо мной встала задача создания небольших анимированных GIF файлов. Осмотревшись вокруг, остановил свой выбор на программе FFMPEG, все равно я активно ее использую для перекодирования видео файлов. Это консольная программа, для которой достаточно один раз составить команду с нужными параметрами. Кому-то это покажется слишком сложным, для меня же было плюсом. Новички же могут попробовать использовать для это обычный Photoshop, ведь теперь в нем можно открывать видео файлы. Еще одна программа способная помочь - Gifsicle. Её задача - оптимизация gif для уменьшения размеров файла.

Как создать GIF анимацию из видео с FFMPEG
https://www.youtube.com/watch?v=FGaA2n_Urx0
SS Joker WoW.gif
SS Joker WoW.gif (1.58 МБ) 518 просмотров
SS Joker WoW.gif
SS Joker WoW.gif (1.58 МБ) 518 просмотров

На последнем стриме меня попросили еще раз рассказать про создание гифок и я обещал выложить BAT файл, который использую последнее время. В нем вы обнаружите четыре команды, которые возможно захотите изменить:

Код: Выделить всё

SET param=fps=20,scale=480

Задает частоту кадров в готовом gif и его размер в пикселях по ширине. Высота подберется автоматически, сохраняя пропорции исходного файла. Чем больше эти параметры, тем приятнее глазу, но увеличит размер gif файла.

Код: Выделить всё

"e:\FFmpeg\bin\ffmpeg.exe" -i %1 -vf "%param%:-1:flags=lanczos, palettegen=stats_mode=diff:max_colors=64" -y "palette.png"

Создание палитры с используемыми цветами. Так как количество цветов в gif файлах ограничено 255 (+прозрачность), необходимо использовать параметр max_colors для более точно цветопередачи, но сохранения небольшого размера. Больше цветов - лучше картинка, больше размер.

Код: Выделить всё

"e:\FFmpeg\bin\ffmpeg.exe" -y -i %1 -i "palette.png" -lavfi "%param%:-1:flags=lanczos [x]; [x][1:v] paletteuse=dither=floyd_steinberg" %1.gif

Здесь задаются параметры дизеринга. Это позволяет в условиях фактически ограниченной палитры цветов сохранить их количество для восприятия человеком. Тут можно посмотреть примеры работы этих алгоритмов: http://blog.pkh.me/p/21-high-quality-gif-with-ffmpeg.html
дизеринг.gif
дизеринг.gif (56.56 КБ) 469 просмотров
дизеринг.gif
дизеринг.gif (56.56 КБ) 469 просмотров

Код: Выделить всё

"e:\gifsicle\gifsicle.exe" --careful -O3 %1.gif -o %1_cO3.gif

Финальный штрих - уменьшение размера новой гифки за счет оптимизации в программе Gifsicle. Вроде и так работает. Ничего менять не нужно. А вот и ссылка на сам готовый файл:
gif-all-last.zip
(386 байт) 64 скачивания
gif-all-last.zip
(386 байт) 64 скачивания

Конечно перед использованием надо заменить пути исполняемых файлов на свои и хоть немного понимать в работе пакетных файлов. Да-да, пора взрослеть 8-)
GIF creation example FFMPEG.gif
GIF creation example FFMPEG.gif (195.47 КБ) 475 просмотров
GIF creation example FFMPEG.gif
GIF creation example FFMPEG.gif (195.47 КБ) 475 просмотров


. :info: .
Полезные ссылки:



Видео уроки для After Effects http://www.youtube.com/AEPlug
Платные консультации по работе в программах

Теги:


Вернуться в «Мои уроки»

Кто сейчас на конференции

Сейчас этот форум просматривают: CommonCrawl [Bot]