Преобразование файла AVI в анимированный GIF с прозрачным фоном


2

У меня есть несколько файлов AVI, которые я хочу преобразовать в анимированные GIF-файлы с прозрачным фоном для размещения в форме .net Windows. Я могу конвертировать из AVI в анимированные GIF-изображения, но по какой-то причине фон анимированного GIF является розовым, а не прозрачным. Есть ли какой-нибудь простой способ избавиться от розовых цветов из получившегося анимированного GIF-файла? Я пробовал ffmpeg, но он также давал розовый цвет. Я попытался ffmpeg -i FINDFILE.avi FINDFILE.gif. Это произвело анимированный GIF, но цвет фона - розовый. Спасибо, что прочитали это.

Ответы:


0

Попробуйте отредактировать палитру с помощью IrfanView или любой сложной программы для редактирования изображений. Где-то должен быть флажок для «прозрачного фона».

Если вы не можете найти какой-либо инструмент, который работает, вам, возможно, придется копать глубже и редактировать двоичный файл. http://www.u229.no/stuff/gifformat/ объясняет формат данных: Интересная часть - это Расширения управления графикой, которые содержат индекс прозрачного цвета и флаг прозрачного цвета в упакованном поле.

Осторожно: каждый кадр может иметь свой собственный GCE. Но каждый блок начинается с сигнатуры из трех байтов \x21\xf9\x04, поэтому их легко отследить.

Следующий байт после подписи является упакованным полем; бит 0 - флаг прозрачного цвета. Поэтому ищите \x00\x21\xf9\x04, если значение следующего байта четное: добавьте единицу (установите бит 0 в этом байте).

Сохраните файл, и фон должен быть прозрачным на всех кадрах.

Или ... только что нашел ... взгляните на эту тему: Как сделать прозрачный фон для анимации GIF?


Пожалуйста, включите список в свой ответ, а не полагайтесь на сторонний ресурс.
Ник Хартли

Это также работает :)
Ник Хартли
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.