Konvertieren von AVI-Dateien in ein animiertes GIF mit transparentem Hintergrund

1243
Gregory Williams

Ich habe einige AVI-Dateien, die ich in animierte GIFs mit transparentem Hintergrund konvertieren möchte, um sie auf einem .net-Windows-Formular zu platzieren. Ich bin in der Lage, von AVI in animierte GIFs umzuwandeln, aber aus irgendeinem Grund ist der Hintergrund des animierten Gifs rosa anstatt transparent. Gibt es eine einfache Möglichkeit, die rosa Farben aus der resultierenden animierten GIF-Datei zu entfernen? Ich habe es mit ffmpeg versucht, aber es hat auch die rosa Farbe erzeugt. Ich habe versucht, ffmpeg -i FINDFILE.avi FINDFILE.gif. Es wurde das animierte GIF erzeugt, die Hintergrundfarbe ist jedoch Rosa. Danke fürs Lesen.

2

1 Antwort auf die Frage

0
Titus

Versuchen Sie, die Palette mit IrfanView oder einem hoch entwickelten Bildbearbeitungsprogramm zu bearbeiten. Es sollte irgendwo eine Checkbox für "transparenten Hintergrund" geben.

Wenn Sie kein Werkzeug finden, das funktioniert, müssen Sie möglicherweise die Binärdatei weiter bearbeiten. http://www.u229.no/stuff/gifformat/ erklärt das Datenformat: Der interessante Teil sind die Graphics Control Extensions, die den Transparent Color Index und das Transparent Color Flag in einem gepackten Feld enthalten.

Achtung: Jeder Frame kann eine eigene GCE haben. Jeder Block beginnt jedoch mit einer Signatur von drei Bytes \x21\xf9\x04, so dass sie leicht zu finden sind.

Das nächste Byte nach der Signatur ist das gepackte Feld. Bit 0 ist das Transparent Color Flag. Suchen Sie also nach \x00\x21\xf9\x04, wenn der Wert des nächsten Bytes gerade ist: Addieren Sie eins (setzen Sie Bit 0 in diesem Byte).

Speichern Sie die Datei, und der Hintergrund sollte für alle Bilder transparent sein.

Oder ... habe es gerade gefunden ... werfen Sie einen Blick auf diesen Thread: Wie macht man einen transparenten Hintergrund einer GIF-Animation?

Bitte fügen Sie die Liste in Ihre Antwort ein, anstatt sich auf eine externe Ressource zu verlassen. Nic Hartley vor 7 Jahren 0
Das funktioniert auch :) Nic Hartley vor 7 Jahren 0