Укажите цвет фона при конвертации GIF в MP4 с помощью ffmpeg

2061
okor

У меня есть анимированный GIF с прозрачностью. Я хочу конвертировать его в MP4. Когда я делаю это, прозрачные области заполняются полностью непрозрачным белым. Я хотел бы указать цвет, используемый для замены этих прозрачных пикселей. Как бы я это сделал?

  • Пожалуйста, не рекомендуется использовать convertиз gifsicleкоторых требует отдельной операции. Скорость является приоритетом. Решение нужно использовать только ffmpeg. Благодарю.
2

1 ответ на вопрос

2
Gyan

использование

ffmpeg -f lavfi -i color=RRGGBB -i in.gif -filter_complex "[0][1]scale2ref[bg][gif];[bg]setsar=1[bg];[bg][gif]overlay=shortest=1" out.mp4 

Создается холст черного цвета, если цвет (в шестнадцатеричном формате) не указан. В комплексе фильтров. его размер изменяется до того же размера, что и GIF, а затем на него накладывается GIF. В прозрачных областях GIF. фон просвечивает.

Похожие вопросы