Welche Befehlsliste sollte ich in ffmpeg / mencoder / some_other_CLI_app ausführen, um ein Video in den richtigen Formaten für die Verwendung von Video for Everybody zu erhalten ?
Gibt es eine Feinheit, die verhindert, dass es ein mechanisches Tutorial gibt, das sagt
VIDEO=video.mp4
TYPE=$(ffmpeg --find-information-about-the-video ... )
ffmpeg ... > video.mov
ffmpeg ... > video.flv
ffmpeg ... > video.webm
ffmpeg ... > video.h.264
...
Dann kopieren Sie den Code von Video for Everybody und fügen ihn auf Ihrer Seite ein.
Mein Ziel ist es, ein eingebettetes Video auf meiner von mir gehosteten persönlichen Webseite zu haben. HTML5 mit Flash-Fallback wird bevorzugt, daher scheint der einfachste Weg Video für jedermann zu sein. Diese Seite überlässt dem Leser jedoch den kompliziertesten Teil, nämlich das Kodieren des Videos in die verschiedenen Formate, indem er einen langen und vollständigen Artikel über Videoformate liest . Das ist doch nicht nötig. Ich könnte eine Liste von Befehlen für einen Benutzer bereitstellen, um eine Audiodatei blind in eine Reihe von verschiedenen Formaten zu konvertieren. Hoffentlich könnte ein ffmpeg-Guru dasselbe für Videos tun.
.mov
HTML5-Video und auch keineh.264
Erweiterung. Es gibt.264
, das ist der rohe Nebenstrom von Anhang B für NAL-Einheiten. Videocodierung ist keine Hexerei, aber Sie müssen ein wenig Zeit investieren, um die Konzepte kennenzulernen.Antworten:
Hinweis: Diese Antwort wurde seit ihrer ursprünglichen Veröffentlichung stark bearbeitet. Es ist jetzt 2017; Streaming funktioniert anders als früher. In diesem Handbuch wird davon ausgegangen, dass nur ein Videostream mit einer bestimmten Auflösung heruntergeladen wird - kein adaptives Streaming.
Bedarf
Stellen Sie zunächst sicher, dass Sie eine aktuelle
ffmpeg
Version herunterladen (statischen Build herunterladen; nicht aufrufenapt-get install ffmpeg
oder ähnliches). Im Idealfall kompilieren Sie es selbst . Es dauert nicht zu lange.Um Videos zu generieren, die von den meisten Browsern unterstützt werden, überprüfen Sie immer die neueste Kompatibilitätstabelle . Es gibt keinen einzigen Codec / Format, der in jedem Browser funktioniert. Wenn Sie jedoch H.264 in MP4 und VP9 in WebM mit dem entsprechenden Audio-Codec generieren, werden Chrome, Firefox, Safari und einige IE-Versionen unterstützt.
WebM (VP9 / Vorbis)
Befolgen Sie die Empfehlungen im FFmpeg VP9-Handbuch und verwenden Sie einen Codierungsansatz mit zwei Durchläufen und eingeschränkten Übertragungsraten:
Die Ziel-Bitrate hängt von Ihrer Auflösung, der Bildrate, der Art des Inhalts und der gewünschten Qualität ab. 2,5 MBit / s sollten bei HD-Videos mit 30 fps ein guter Kompromiss sein. In diesem Google-Handbuch finden Sie einige Empfehlungen.
MP4 (H.264 / AAC)
Befolgen Sie die Empfehlungen im FFmpeg H.264-Handbuch und verwenden Sie einen Codierungsansatz mit zwei Durchläufen und eingeschränkten Übertragungsraten:
Hier sollte die Ziel-Bitrate etwa 50% höher sein als bei VP9-Video, da H.264 nicht so effizient ist. Fügen Sie die
-movflags faststart
Option zum zweiten Durchgang hinzu, um das erstmalige Laden des Videos zu beschleunigen.Informationen zum Einstellen der Audiooptionen finden Sie in der AAC-Codierungsanleitung .
quelle