ffmpeg: Erstellen Sie ein Video mit schwarzem Hintergrund aus Audio für den Youtube-Upload

Ich habe MP3-Audio, das ich in Video umwandeln möchte, indem ich das Audio mit einem durchgehend schwarzen Hintergrund verbinde. Ich möchte das Video dann auf Youtube hochladen.

Mit ffmpeg habe ich diesen Befehl und einige angrenzende Varianten ausprobiert:

ffmpeg -i 'black.png' -i 'input.mp3' -c:v libx264 -tune stillimage -c:a copy 'output.mp4'

(wo black.pngist eine PNG-Datei, die 640 × 480 Pixel groß ist).

output.mp4Beim Hochladen des Videos auf YouTube über Creator's Studio erhalte ich jedoch die Fehlermeldung:

Verarbeitung abgebrochen. Das Video konnte nicht verarbeitet werden.

Was könnte der Grund sein?

Antworten (3)

Youtube erfordert einen Videostream , aber Ihr Bild ist ein Einzelbild. Schleifen Sie es, um einen Stream zu erstellen, und beenden Sie die Ausgabe, wenn das Audio endet, indem Sie -shortest hinzufügen.

ffmpeg -loop 1 -i black.png -i 'input.mp3' -c:v libx264 -tune stillimage -shortest 'output.mp4'

Ich kann mich nicht erinnern, ob YT MP3 in MP4 akzeptiert. Wenn ja, kannst du behalten -c:a copy. -pix_fmt yuv420pist normalerweise erforderlich, aber YT wird trotzdem in dieses Pixelformat neu kodieren.

Mit -pix_fmt yuv420pder folgenden Antwort wird das resultierende Video auch auf macOS abgespielt.

Alternativ können Sie ffmpegdas schwarze Video mit dem Farbquellenfilter erzeugen , anstatt ein Bild zu erstellen:

ffmpeg -f lavfi -i color=c=black:s=1280x720:r=5 -i audio.mp3 -crf 0 -c:a copy -shortest output.mp4
  • Da es sich nur um schwarzes Video handelt, ist dies ein Fall mit verlustfreiem Modus ( -crf 0) und hat eine kleinere Dateigröße als der standardmäßige verlustbehaftete Modus.

  • Die resultierende Datei wird möglicherweise nicht auf Ihrem Player oder Gerät abgespielt, aber auf YouTube.

Wahrscheinlich, weil das Pixelformat falsch ist, fügen Sie dem Befehl hinzu: -pix_fmt yuv420p

Ich werde das dem Befehl hinzufügen, danke. Aber leider hat es beim Hochladen nicht geholfen.