Stapelkonvertierung von 50 Bildern (mit derselben Audiodatei) in 50 Videos mit FFmpeg

Stapelkonvertierung von 50 Bildern (mit derselben Audiodatei) in 50 Videos mit FFmpeg

Ich habe 50 Bilder mit unterschiedlichen Namen.

Im selben Ordner habe ichNamen.txtDatei, die die Namen aller Bilder in diesem Ordner enthält, etwa so:

apples.jpg
oranges.jpg
blackberries.jpg
etc.

Und ich habe eine Audiodatei,Ton.wav

Ich möchte jedes Bild mit der Datei sound.wav mischen, um 50 Videos zu generieren:

apples.mp4
oranges.mp4
blackberries.mp4
etc.

Irgendwelche Ideen?

Dies ist das Skript, mit dem ich jedes Bild manuell konvertieren konnte:

ffmpeg -loop 1 -y -i oranges.jpg -i sound.wav -shortest oranges.mp4

Aber ich möchte das skalieren, vielleicht ein Skript haben, das jede Zeile imNamen.txtDatei, um den Namen des Bildes zu erhalten, konvertiert dieses Bild in ein Video und fährt dann mit dem nächsten Bild fort.

Danke

Antwort1

Du kannstdurch die Zeilen einer Datei iterierenin einer Windows-Batchdatei:

for /F "tokens=*" %%A in (names.txt) do [process]

Ersetzen Sie hier [process]durch:

ffmpeg -loop 1 -y -i %%A -i intro5.wav -shortest %%~nA_movie.mp4

Wobei %Ain der Zeile der Dateiname steht und %%~nAder Name ohne Erweiterung ist.

verwandte Informationen