Okay, es arbeitet jetzt mit diesem Befehl aus einer anderen SuperUser-Antwort :
-vsync 2 -safe 0 -f concat -i "concat.txt" -lavfi palettegen=stats_mode=single[pal],[0:v][pal]paletteuse=new=1 -y "example.gif"
Ich versuche FFmpeg
, eine Reihe von Png-Werten in ein GIF umzuwandeln, während Sie die Dauer jedes Frames festlegen und eine optimale Palette (und andere Parameter, wie z. B. dither
) für einen einzelnen Befehl verwenden.
Ich habe die Seite von FFmpeg gelesen, aber die Beispiele verwenden zwei Befehle und eine temporäre palette.png
Datei.
Hier ist was ich habe, ohne zu benutzen palettegen
und paletteuse
:
-vsync 2 -safe 0 -f concat -i "concat.txt" -y "example.gif"
Die concat.txt
Datei enthält jeden Frame-Pfad und die Dauer, wie zum Beispiel:
file 'C:\0.png' duration 0.066
Es gibt wie erwartet ein GIF mit einer Standardpalette aus.
Also, meine Frage ist, wie kann ich verwenden palettegen
und paletteuse
auf dem gleichen Befehl, ohne eine temporäre Datei?
Okay, es arbeitet jetzt mit diesem Befehl aus einer anderen SuperUser-Antwort :
-vsync 2 -safe 0 -f concat -i "concat.txt" -lavfi palettegen=stats_mode=single[pal],[0:v][pal]paletteuse=new=1 -y "example.gif"