In diesem Artikel erfährst du mehr über die Grundlagen von Mediendateien, z. B. die Konzepte eines Containers, und einige der vielen verfügbaren Codec-Formate, die du in einem Stream verwenden kannst. Außerdem werden Themen wie adaptives Streaming, Bitrate und Auflösung kurz erwähnt. In späteren Abschnitten gehen wir jedoch ausführlicher darauf ein.
Videodateien bereitstellen
Sie könnten meinen, dass Sie eine Rohdatei von einer Videokamera einfach so ins Web hochladen können. Tatsächlich ist das auf Videostreaming-Websites wie YouTube oder Vimeo möglich. Dort können Sie sogar Live-Streams übertragen – in der Regel über eine Verbindung zum HDMI-Port Ihrer Kamera und anschließende Verarbeitung über eine Capture-Karte. Diese Dienste vereinfachen die Videoverarbeitung und den Upload erheblich. Dazu gehört auch die Generierung der vielen Dateien und Manifeste, die für adaptives Streaming und verschiedene Auflösungen erforderlich sind. Hinzu kommen viele andere komplizierte und nuancierte Anforderungen, die das Self-Hosting zu einer ziemlichen Herausforderung machen. Das Bereitstellen eines Videos über deine eigene Website und wahrscheinlich einen separaten Medienserver ist etwas komplizierter als das einfache Hochladen einer Rohkameradatei, wenn du Wert auf die Nutzerfreundlichkeit deiner Website legst.
Videodateien gibt es in verschiedenen Formaten. Die von Ihrer Kamera stammenden Dateien sind in der Regel .mov
-Dateien oder .mp4
-Dateien, wenn Sie eine gute moderne spiegellose Kamera haben.
.mov
-Dateien eignen sich zwar gut für die Aufnahme, die Bearbeitung und andere frühe Postproduktionsprozesse, aufgrund ihrer Größe sind sie jedoch nicht für das Streaming über das Internet geeignet. Außerdem ist die Dateigröße einer 4K-Raw-.mp4
so groß, dass die Wiedergabe auf Mobilgeräten sehr aufwendig ist. Da Browser unterschiedliche Dateiformate unterstützen, musst du mehrere optimierte Dateien und gegebenenfalls ein Manifest erstellen, wenn du adaptives Streaming unterstützen möchtest. Bevor Sie Dateien konvertieren, sollten Sie einige grundlegende Informationen zu ihnen und ihren Eigenschaften kennen.
Container, Codecs und Streams?
Die Datei, die Sie in der Shell Ihres Betriebssystems sehen, ist ein Container, der durch eine Dateiendung (.mp4
, .webm
, .ogg
usw.) gekennzeichnet ist. Der Container enthält einen oder mehrere Streams. Eine Mediendatei kann beliebig viele Streams in vielen mehr Formaten haben, als hier beschrieben werden.
Die Beispieldateien, die später in diesem Abschnitt verwendet werden, enthalten höchstens zwei Streams: einen Audiostream und einen Videostream. Unter anderem können Sie Untertitel und Daten sehen. Diese werden in diesem Artikel jedoch nicht behandelt. Es gibt Fälle, in denen Audio- und Videostreams separat behandelt werden. Die meisten Dateien enthalten nur einen Audio- und einen Videostream.
Innerhalb der Audio- und Videostreams werden die eigentlichen Daten mit einem Codec komprimiert. Ein Codec (Coder/Decoder) ist ein Komprimierungsformat für Video- oder Audiodaten. Der Unterschied zwischen einem Container und einem Codec ist wichtig, da der Inhalt von Dateien mit demselben Container mit verschiedenen Codecs codiert werden kann.
Das folgende Bild veranschaulicht diese Struktur. Links ist die grundlegende Containerstruktur mit zwei Streams zu sehen. Rechts sind die Details dieser Struktur für eine einzelne WebM-Datei zu sehen.

Dateien in WebM-Containern können um Größenordnungen kleiner als andere Formate sein. Sie eignen sich daher gut für das Streaming auf Mobilwebsites. Leider unterstützen nicht alle Browser aktuelle Container und Codecs. WebM wurde beispielsweise speziell für das Web als hochwertige Open-Source-Option entwickelt, wird aber noch nicht überall unterstützt. Insbesondere Safari unterstützt laut Can I use zum Zeitpunkt der Erstellung dieses Artikels kein WebM für eingebettete Videos. WebM wird jedoch teilweise mit dem in WebRTC verwendeten VP8- und VP9-Codec unterstützt. Daher empfehlen wir Ihnen, ein Fallback-Video bereitzustellen.
Codec-Formate
Viele Dateitypen unterstützen mehrere Codecs im selben Container. Eine vollständige Liste der verfügbaren Video-Codecs und Audio-Codecs würde eine ganze Website füllen. Die eben genannten Links führen zu praktischen Listen der MDN, in denen aufgeführt ist, was im Web verwendet werden kann. Unten sind die derzeit bevorzugten Dateitypen und die Codecs aufgeführt, die dafür verwendet werden können. Klicken Sie auf die Links zu den Dateitypen, um die entsprechenden Browser aufzurufen.
Dateityp | Video-Codec | Audio-Codec |
---|---|---|
MP4 | AV1, AVC (H.264)*, VP9 | AAC |
WebM | AV1, VP9* | Vorbis, Opus |
* Der bevorzugte Video-Codec.
Bitrate und Auflösung
Die Bitrate ist die maximale Anzahl von Bits, die zum Codieren einer Sekunde eines Streams verwendet werden. Je mehr Bits zum Codieren einer Sekunde des Streams verwendet werden, desto höher sind die möglichen Details und die Wiedergabetreue. Weitere Informationen zu diesem Konzept findest du unter Bitrate.
Die Auflösung ist die Menge an Informationen in einem einzelnen Videoframe, angegeben als Anzahl der logischen Pixel in jeder Dimension. Weitere Informationen zu diesem Konzept finden Sie unter Auflösung.
Im nächsten Abschnitt Grundlagen von Medienanwendungen zeigen wir dir, wie du diese Eigenschaften mit zwei Befehlszeilentools untersuchen kannst: Shaka Packager und FFmpeg.