Hier sind zwei weitere beantwortete Fragen, die Ihnen helfen sollen, Ihr Ziel zu erreichen.
"Kombinieren Sie ein Bild + eine Audiodatei, um ein Video mit FFmpeg zu erstellen". Quelle: Kombinieren Sie ein Bild + eine Audiodatei, um ein Video mit FFmpeg zu erstellen
Die Reihenfolge der Optionen in der Befehlszeile ist wichtig. Folgendes funktioniert für meinen Fall:
ffmpeg -loop 1 -shortest -y -i image8.jpg -i sound11.amr -acodec copy -vcodec mjpeg result.avi
In einem allgemeineren Fall, wo image.jpg
und audio.wav
sind Ihre Eingabe, können Sie den folgenden Befehl verwenden, der aus dem FFmpeg-Wiki angepasst wurde :
ffmpeg -loop 1 -i image.jpg -i audio.wav -c:v libx264 -tune stillimage -c:a aac -strict experimental -b:a 192k -pix_fmt yuv420p -shortest out.mp4
Dies würde den libx264
Encoder verwenden und eine bessere Komprimierung bieten als der oben verwendete MJPEG-Codec. Das Audio ist AAC mit dem eingebauten ffmpeg
AAC-Encoder.
"Wie mache ich eine for-Schleife in der Windows-Befehlszeile?" Quelle: https://stackoverflow.com/questions/11192039/wie-nach-do-a-für-loop-in-windows-command-line
Der Befehlszeileninterpreter verfügt zwar über ein FOR-Konstrukt, das Sie an der Eingabeaufforderung oder aus einer Batchdatei verwenden können.
Für Ihren Zweck möchten Sie wahrscheinlich etwas wie:
FOR %i IN (*.ext) DO my-function %i
Dies führt dazu, dass der Name jeder Datei mit der Erweiterung * .ext im aktuellen Verzeichnis an my-function übergeben wird (dies kann beispielsweise eine andere .bat-Datei sein).
Der (* .ext) -Teil ist die "Dateispezifikation" und ist ziemlich flexibel bei der Angabe von Dateisätzen. Zum Beispiel könnten Sie Folgendes tun:
FOR %i IN (C:\Some\Other\Dir\*.ext) DO my-function %i
So führen Sie eine Operation in einem anderen Verzeichnis durch.
Es gibt zahlreiche Optionen für die Dateispezifikation und für FOR im Allgemeinen. Sehen
HELP FOR
Weitere Informationen erhalten Sie an der Eingabeaufforderung.
Okay, der Inhalt ist jetzt in der Post selbst enthalten, dank einer Nachricht von Donald Duck: D