Hinweis: Diese Antwort wurde seit der ursprünglichen Veröffentlichung stark bearbeitet. Es ist jetzt 2017; Streaming funktioniert anders als früher. Dieses Handbuch setzt einen einfachen progressiven Download eines Videostreams mit einer bestimmten Auflösung voraus - kein adaptives Streaming.
Bedarf
Stellen Sie zunächst sicher, dass Sie eine aktuelle ffmpeg
Version herunterladen (statische Version herunterladen, nicht aufrufen apt-get install ffmpeg
oder ähnliches). Idealerweise 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 zwar kein einzelnes Codec / Format, das in jedem Browser funktioniert, aber wenn Sie in WebM H.264 in MP4 und VP9 mit dem entsprechenden Audio-Codec generieren, werden Sie Chrome, Firefox, Safari und einige IE-Versionen unterstützen.
WebM (VP9 / Vorbis)
Folgen Sie den Empfehlungen im FFmpeg VP9-Handbuch und verwenden Sie einen Codieransatz mit zwei Durchgängen und Ratenbeschränkungen:
ffmpeg -y -i input-c:v libvpx-vp9 -b:v 2000k -minrate 500k -maxrate 2500k -c:a libvorbis -pass 1 -f webm /dev/null && \ ffmpeg -i input-c:v libvpx-vp9 -b:v 2000k -minrate 500k -maxrate 2500k -c:a libvorbis -pass 2 output.webm
Die Ziel-Bitrate hängt von Ihrer Auflösung, Bildrate, Art des Inhalts und der gewünschten Qualität ab. 2,5 MBit / s sollten bei HD-Videos mit 30 Bildern pro Sekunde ein guter Kompromiss sein. In diesem Google-Handbuch finden Sie einige Empfehlungen.
MP4 (H.264 / AAC)
Folgen Sie den Empfehlungen im FFmpeg H.264-Handbuch und verwenden Sie einen Codieransatz mit zwei Durchgängen und Ratenbeschränkungen:
ffmpeg -y -i input -c:v libx264 -b:v 5000k -minrate 1000k -maxrate 8000k -pass 1 -c:a aac -f mp4 /dev/null && \ ffmpeg -i input -c:v libx264 -b:v 5000k -minrate 1000k -maxrate 8000k -pass 2 -c:a aac -movflags faststart output.mp4
Hier sollte die Zielbitrate etwa 50% höher sein als für VP9-Video, da H.264 nicht so effizient ist. Fügen Sie dem -movflags faststart
zweiten Durchlauf die Option hinzu, um das anfängliche Laden des Videos zu beschleunigen.
Informationen zum Einstellen von Audiooptionen finden Sie in der AAC-Codierungsanleitung .