Erster Teil meiner Frage:
Ich habe in der ffmpeg-Dokumentation ( section 3.2 How do I encode single pictures into movies?
) Folgendes gelesen :
Führen Sie den folgenden Befehl aus, um einzelne Bilder in Filme zu codieren:
ffmpeg -f image2 -i img%d.jpg movie.mpg
Beachten Sie, dass "% d" durch die Bildnummer ersetzt wird: img% 03d.jpg bedeutet die Sequenz img001.jpg, img002.jpg usw.
Meine Frage ist: Wer macht die Übersetzung zwischen img%03d.jpg
und img001.jpg, img002.jpg, etc
? Ist es die Shell oder ffmpeg?
Zweiter Teil:
Ich möchte ffmpeg bitten, eine Folge von Bildern in ein Video zu kodieren. Meine Sequenzen beginnen jedoch häufig mit einem anderen Index als 1 (z. B. können wir ihn aufrufen start_index
) und enden mit einem Index, den wir aufrufen können end_index
. Darüber hinaus verwendet die Sequenz Wertinkremente increment
, z.
img_0025.png, img_0030.png, img_0035.png, ... img_0100.png
wo start_index
war 25, end_index
war 100 und increment
war 5.
Ich möchte ffmpeg eine Bildsequenz wie oben zuführen, ohne die Sequenz zuerst umbenennen zu müssen. In der Dokumentation wird erklärt, wie dies mit symbolischen Links gemacht wird, aber ich habe mich gefragt, ob es eine Möglichkeit gibt, sie insgesamt zu vermeiden, möglicherweise mithilfe von Advanced Globbing auf zsh.
while IFS= read -d $'\0' -r file ;do pnmcomp -align=center -valign=middle <(anytopnm "$file" 2>/devnull) done
funktioniert das Skript nicht mehr (dh ich bekommepipe: could not find codec parameters
). Wissen Sie, warum? Musspnmscale
oder muss ich unbedingt mit Bildernppmmake
füttern ?ffmpeg
pnm