Das sollte ziemlich trivial sein, aber ich kann keinen Weg finden, es zum Laufen zu bringen.
Ich möchte, dass FFmpeg ein JPEG-Bild und eine Audiodatei als Eingabe verwendet und eine Videodatei mit der gleichen Dauer wie die Audiodatei erstellt (indem das Standbild über die gesamte Dauer gedehnt wird).
Es ist mir egal, welcher Video-Codec für die Ausgabe verwendet wird, aber es ist wichtig, dass ich "copy" als Audio-Codec verwenden kann (dh den Audio-Stream kopieren, ohne ihn zu transkodieren).
Was ist die richtige Befehlszeile, die das tun würde?
Ich habe es versucht:
ffmpeg -i image8.jpg -i sound11.amr -acodec copy test.avi
und versuchte , eine Menge Kombinationen mit und ohne -s 640x360
, -loop_input
, -shortest
, -t xxx
, -r 0.1
(künstlich niedrige Framerate in der Hoffnung , dass das Video länger wäre) und-f image2
Entweder bekomme ich Fehler oder ich bekomme eine Videodatei von der Dauer eines Frames.
Ich habe herumgegoogelt und ein Dutzend Lösungsvorschläge gefunden (angeblich zu genau dieser Frage), von denen keiner funktioniert.
Kann jemand einen Arbeitsbefehl vorschlagen und die Gründe dafür erklären?
ffmpeg -y -i image.png -i audio.mp3 -c:a copy result.avi