Audio und Bild zusammenfügen -> Als Video ausgeben mit FFmpeg

Audio und Bild zusammenfügen -> Als Video ausgeben mit FFmpeg

Ich habe 1 Bild (jpg) und 1 Audiodatei (MP3) und möchte diese als Videodatei (z. B. AVI) ausgeben.

Weiß jemand, wie man die beiden mit FFMPEG verbindet? Ich möchte das Bild für die Dauer des Audios anzeigen.

Hat jemand eine Idee?

Antwort1

Wenn Sie Windows verwenden, können Sie dies auch mit Windows Movie Maker tun. Wenn Sie Anweisungen benötigen, hinterlassen Sie bitte einen Kommentar.

Für FFmpeg verwenden Sie dies

ffmpeg -loop_input -vframes 14490 -i imagine.jpg -i audio.mp3 -y -r 30 
    -b 2500k -acodec ac3 -ab 384k -vcodec mpeg4 result.mp4
  • vframes 14490 ist die Anzahl der Frames, die wiederholt werden sollen, um ein durchgehendes Bild für die gesamte audio.mp3-Datei zu erhalten.

    Beispiel: Für 8 Minuten und 3 Sekunden ((8 m x 60 s + 3 s) x 30 fps = 14490 vf)

Ressource vonHier

Antwort2

Es gibt eine viel einfachere Methode als die hier vorgeschlagenen, bei der weder die Anzahl der Frames berechnet noch die Länge einzelner Dateien eingegeben werden muss (besonders besser für die Stapelverarbeitung). Mit einer aktuellen Version von ffmpeg können Sie die -shortestOption verwenden, die die Kodierung stoppt, wenn der kürzeste Stream endet – in diesem Fall input.mp3 (da das Bild endlos wiederholt wird, hat es eine unendliche Länge):

ffmpeg -i input.mp3 -f image2 -loop 1 -r 2 -i input.jpg \
-shortest -c:a copy -c:v libx264 -crf 23 -preset veryfast output.mp4

Dabei werden 2 Bilder pro Sekunde für das Bild/Video verwendet, was in Ordnung sein sollte, Sie können es aber auch auf den standardmäßigeren Wert von 25 einstellen, wenn Sie möchten.

Antwort3

subanki hatte es fast richtig. Die funktionierende Befehlszeile lautet wie folgt:

ffmpeg -y -loop 1 -i image.jpg -i audio.mp3 -r 30 -b:v 2500k -vframes 14490 -acodec libvo_aacenc -ab 160k result.mp4
-y

Ausgabedateien ohne Nachfrage überschreiben

-Schleife 1

Die Option '-loop_input' ist veraltet. Verwenden Sie -loop 1. Sieheffmpeg-Dokumentation.

-ich

Eingabedatei(en)

-R

Bilder pro Sekunde
könnten auch wie folgt ausgedrückt werden: -r 30000/1001 ergibt eine fps von 29,97nnn

-b:v

Video-Bitrate; je höher die Zahl, desto besser die Qualität und desto größer die Dateigröße.

-vRahmen

Wie oben erklärt, nehmen Sie die Gesamtzeit Ihrer Audiodatei in Sekunden (z. B. 00:02:41 (2 Minuten 41 Sekunden) entspricht 161 Gesamtsekunden (2 x 60) + 41). Dann multiplizieren Sie die Gesamtsekunden mit den Bildern pro Sekunde, die Sie mit -r angegeben haben (z. B. 161 x 30 = 4830).

-vframes kann durch -t 161 ersetzt werden (-t Dauer zum Aufzeichnen oder Transkodieren der „Dauer“ von Audio-/Video-Sekunden)

-acodec

Verwenden Sie den richtigen Audio-Codec für den Dateityp, den Sie erstellen. Für .mp4 sollte es ein AAC-Format sein. Der Codec libvo_aacenc war der richtige Kodierungscodec für mein Windows 7-System.

-ab

Audio Bitrate

Ergebnis.mp4

Dies ist der Name der Ausgabedatei. Es kann jeder für Ihr System zulässige Dateiname sein. Die Erweiterung hilft ffmpeg, den richtigen Videocodec zu bestimmen, wenn Sie keinen mit -vcodec angeben.

Antwort4

HerunterladenVirtualDub, dann gehen Sie wie folgt vor:

  1. Öffnen Sie das Bild wie eine normale Videodatei.

  2. Berechnen Sie die Dauer des Audios in Sekunden und runden Sie diese auf die nächste ganze Sekunde auf (z. B. werden 78,34 Sekunden zu 79 Sekunden). Dieser Wert wird von nun an x ​​genannt.

  3. Gehen Sie zu „Video > Bildrate“, wählen Sie „In Bildrate ändern (fps)“ und geben Sie „1/x“ als Wert ein. Wenn Sie in der resultierenden Datei außerdem eine normale Bildrate wie 25 fps haben möchten, wählen Sie „In fps konvertieren“ und geben Sie dort die gewünschte Bildrate ein.

  4. Wählen Sie „Video > Komprimierung“ und wählen Sie die gewünschte Komprimierung aus. Möglicherweise müssen Sie die Bildgröße mit dem Größenänderungsfilter anpassen.

  5. Gehen Sie zu „Audio > Audio aus anderer Datei“ und wählen Sie dort Ihr Audio aus. Wählen Sie bei Bedarf eine Komprimierung für das Audio aus.

  6. Speicher die Datei.

Quelle:stephanV

verwandte Informationen