Convertendo o arquivo AVI para um gif animado com fundo transparente

2

Eu tenho alguns arquivos AVI que eu quero converter em gifs animados com fundos transparentes para colocar em um formulário Windows .net. Eu sou capaz de converter de AVI para gifs animados, mas por algum motivo o plano de fundo do gif animado é rosa em vez de transparente. Existe alguma maneira simples de se livrar das cores rosa do arquivo gif resultante? Eu tentei ffmpeg mas também produziu a cor rosa. Eu tentei ffmpeg -i FINDFILE.avi FINDFILE.gif. Produziu o gif animado, mas a cor de fundo é rosa. Obrigado por ler isto.

    
por Gregory Williams 20.02.2014 / 00:31

1 resposta

0

Tente editar a paleta com o IrfanView ou qualquer programa sofisticado de edição de imagens. Deve haver uma caixa de seleção para "plano de fundo transparente" em algum lugar.

Se você não encontrar nenhuma ferramenta que funcione, talvez seja necessário aprofundar e editar o binário. O link explica o formato dos dados: A parte interessante são as Extensões de Controle Gráfico, que contêm o Transparent Color Index e o Transparent Color Flag em um campo cheio.

Cuidado: Cada quadro pode ter seu próprio GCE. Mas cada bloco começa com uma assinatura de três bytes \x21\xf9\x04 , então eles são fáceis de rastrear.

O próximo byte após a assinatura é o campo compactado; bit 0 é o sinalizador de cores transparentes. Portanto, procure por \x00\x21\xf9\x04 , se o valor do próximo byte for par: adicione um (configure o bit 0 nesse byte).

Armazene o arquivo e o plano de fundo deve ficar transparente em todos os quadros.

Ou ... acabou de encontrar ... dê uma olhada neste tópico: Como fazer um fundo transparente de uma animação gif?

    
por 29.06.2016 / 22:44