ffmpeg generiert und verwendet für jeden Frame eine andere Palette


1

Nach diesem Tutorial habe ich es geschafft, qualitativ hochwertige Gifs in angemessener Speichergröße zu erstellen.

Was ich derzeit mit Piping mache, ist dies

# Generate palette
ffmpeg -y -i - -vf fps=15,scale=600:-1:flags=lanczos,palettegen some_dir/palette.png

# Generate gif using palette
ffmpeg -y -i - -i some_dir/palette.png -filter_complex fps=15,scale=600:-1:flags=lanczos[x];[x][1:v]paletteuse output.gif 

Das funktioniert prima, aber ich habe im obigen Tutorial gelesen, dass es möglich ist, für JEDEN Frame eine andere Palette zu generieren. Wie kann ich das tun? (Generieren und verwenden Sie für jeden Frame eine andere Palette.)

Antworten:


8

Es ist möglich. Tutorial ist veraltet.

ffmpeg.exe -i Wildlife.wmv -lavfi palettegen=stats_mode=single[pal],[0:v][pal]paletteuse=new=1 out.mp4


Meinten Sie out.gif? Weil das Ausführen dieses Befehls mit out.gifzu folgendem Fehler führteError initializing filter 'palettegen' with args 'stats_mode=single' Error initializing complex filters. Invalid argument
Bluesummers

Dein ffmpeg ist prahistorisch.
Paul B. Mahol

ffmpeg version 2.8.11nicht gut genug?
Bluesummers

Das funktioniert eigentlich in ffmpeg 3.3.3 - akzeptiert. Wie würden Sie es auf einer Reihe von Bildern anstelle eines Videos ausführen?
Bluesummers

1
Durch die Verwendung von Image2 Muxer? ffmpeg.exe -i Wildlife.wmv -lavfi palettegen=stats_mode=single[pal],[0:v][pal]paletteuse=new=1 out%04d.png?
Paul B. Mahol
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.