webm-gif.de

Ratgeber · grundlagen

Das WebM-Format: Matroska, VP9 und warum Google ein royalty-freies Web-Video baute

Wie Google 2010 mit WebM ein freies Video-Format für das offene Web vorstellte, wie der Matroska-Container aufgebaut ist, welche Codecs (VP8 / VP9 / AV1, Opus) drin sind und wo WebM heute steckt.

Mateusz Viola
Mateusz ViolaBetreiber & Tool-Entwickler
Veröffentlicht am ·Zuletzt geprüft am

WebM ist ein offenes Video-Format, das Google 2010 vorstellte. Anders als die meisten Container-Formate hat WebM ein konkretes politisches Motiv: ein patent-freies, royalty-freies Format, das jeder Browser-Hersteller, jeder Encoder-Entwickler und jeder Streaming-Dienst ohne Lizenzgebühren nutzen darf. Ein Konter zur damals dominierenden H.264-Patentpoolm-Welt.

Geschichte: On2, VP8 und Googles Schenkung

2010 kaufte Google die Codec-Firma On2 Technologies. On2 hatte VP3 entwickelt, das später zu Theora wurde, und arbeitete an VP8 als Nachfolger. Im Mai 2010 stellte Google WebM vor: ein neues Container-Format mit VP8 als Video-Codec und Vorbis als Audio-Codec, beides patent-frei lizenziert.

Die Idee war strategisch. H.264 dominierte das Web, war aber durch den MPEG-LA-Patentpool kostenpflichtig. Firefox und Opera weigerten sich, H.264 als Default zu unterstützen. Apple und Microsoft setzten dagegen voll auf H.264. WebM sollte den Patt auflösen, indem es ein technisch konkurrenzfähiges Format ohne Lizenzfalle bot. Mozilla, Opera, Chrome, Adobe und Android implementierten WebM sofort.

2013 erschien VP9, ebenfalls patent-frei, mit etwa der Qualität von H.265 bei deutlich freierer Lizenz. 2018 folgte AV1, entwickelt von der Alliance for Open Media (Google, Mozilla, Microsoft, Amazon, Netflix, Cisco und andere), als nächster Sprung. AV1 ist offiziell kein WebM-spezifischer Codec, wird aber in WebM-Containern häufig ausgeliefert.

Container: Matroska als Basis

Der WebM-Container ist eine Untermenge von Matroska. Matroska (MKV) ist seit 2002 ein offenes, sehr flexibles Container-Format. WebM nimmt davon die wichtigsten Strukturen und beschränkt erlaubte Codecs auf VP8 / VP9 / AV1 plus Vorbis / Opus. Vorteil: WebM-Dateien sind auch von vielen MKV-Playern abspielbar.

Die wichtigsten Strukturen:

  • EBML-Header (Extensible Binary Meta Language), der Container-Typ definiert.
  • Segment, der große Block, in dem alle Mediendaten und Metadaten liegen.
  • Tracks, eine pro Stream (Video, Audio, optional Subtitles).
  • Cluster, zeitlich gruppierte Frames mit Timecode-Anker für Seeking.

Vergleich zu MP4-Boxen: Matroska speichert Daten in EBML-Elementen mit Variable-Length-Encoding für Header-Größen. Das macht das Format sehr kompakt, aber Parser müssen einen Streaming-fähigen EBML-Dekoder mitbringen. Für ffmpeg ist das kein Problem, für schlanke Embedded-Player schon.

Codecs in WebM

Ein WebM-Container kann diese Codecs enthalten:

  • VP8 (2010): erster freier WebM-Codec. Qualität etwa wie H.264 Baseline. Heute selten neu kodiert, aber von alten YouTube-Videos und WebRTC noch verbreitet.
  • VP9 (2013): Standard-Codec für YouTube ab 1080p. Qualität etwa wie H.265 / HEVC. Hardware-Beschleunigung in modernen GPUs und Mobil-Chips vorhanden.
  • AV1 (2018): nächste Generation, etwa 30 Prozent bessere Kompression als VP9. Hardware-Encoder kommen langsam, Software-Encoding ist CPU-intensiv. Netflix, YouTube und Twitch setzen AV1 für Premium-Streams ein.
  • Opus (2012): patent-freier Audio-Codec, optimiert für Sprache und Musik. Wird in WebRTC und Discord als Default genutzt, niedrige Latenz, sehr gute Qualität bei geringen Bitraten.
  • Vorbis (2002): älterer Open-Source-Audio-Codec. In neueren WebM-Dateien meist durch Opus ersetzt.

Eine WebM-Datei aus 2024 ist typisch VP9 + Opus. Eine aus 2010-2013 oft VP8 + Vorbis. ffmpeg.wasm im Browser unterstützt alle drei Video-Codecs als Eingang, die Konvertierung zu GIF läuft danach codec-unabhängig.

Wo WebM heute steckt

WebM ist allgegenwärtig, ohne dass viele Nutzer es merken:

  • YouTube liefert VP9 in WebM für alle Videos ab 1080p aus. Wer 4K oder 8K schaut, sieht meist AV1 oder VP9 in WebM.
  • HTML5-<video> im Browser: Chrome, Firefox, Edge und Opera unterstützen WebM nativ ohne Plugin.
  • WebRTC (Browser-Telefonie, Google Meet, Discord): VP8 ist Pflicht-Codec, Opus für Audio.
  • Twitch und Vimeo liefern alternative WebM-Streams für Browser, die VP9 effizienter dekodieren als H.264.
  • Stock-Footage-Anbieter wie Pexels und Mixkit bieten WebM-Downloads neben MP4 an.

Auf macOS und iOS gibt es eine Lücke: Safari unterstützt WebM erst seit Version 14.1 (2021), Safari auf iOS noch länger nicht durchgängig. Wer Videos universell ausliefern will, kombiniert WebM + MP4-Fallback.

Warum nicht direkt WebM ins Web?

WebM ist ein Video-Format, das per <video>-Tag eingebettet wird. GIFs spielen direkt als animiertes Bild, ohne Player, ohne Audio. Gründe für die Konvertierung:

  1. E-Mail-Clients (Outlook, Gmail-Web, Apple Mail) zeigen weder WebM noch MP4 inline. GIF schon.
  2. Slack, Discord, Notion: ein WebM-Link rendert als File-Anhang oder Player. Ein inline-GIF spielt sofort.
  3. Reddit, Twitter, alte Foren: GIF ist die Lingua franca für kurze Bewegung. WebM-Embeds funktionieren nur in modernen Clients.
  4. Loop-Verhalten: <video autoplay loop muted> braucht drei Attribute. GIF loopt von alleine.

Workflow: WebM zu GIF mit webm-gif.de

Der Konverter lädt ffmpeg.wasm einmal in den Browser (rund 32 MB, danach gecached). Die WebM-Datei bleibt im Browser-Speicher, kein Server-Upload. Drei Qualitäts-Modi:

  • Niedrig: Single-Pass mit Standard-Palette. Schnell, klein, leichtes Banding.
  • Mittel: Single-Pass mit eingebettetem palettegen + paletteuse via Bayer-Dither. Guter Default.
  • Hoch: Two-Pass mit Palette-Generierung bis 256 Farben und Sierra-Dither. Beste Qualität, doppelte Zeit.

Frame-Rate, Breite und Trim-Bereich beeinflussen die Endgröße linear. Eine 5-Sekunden-WebM-Aufnahme bei 12 FPS und 480 Pixel Breite landet bei 1-3 MB GIF, was für Newsletter und Slack-Posts gut funktioniert. Details zu dieser Mathematik stehen im Ratgeber Frame-Rate, Breite, Dither: die Mathematik hinter der GIF-Größe.

Bei Fragen oder Korrekturen zur WebM-Spezifikation, zu VP9 / AV1 oder zur Matroska-Struktur: info@akara-solutions.de.

Quellen

  • WebM Project: Container Specification (developers.google.com/webm)
  • Matroska Specification (matroska.org)
  • RFC 6386 (VP8 Data Format)
  • RFC 7741 (RTP Payload Format for VP8)
  • AOMedia: AV1 Bitstream Specification

Korrekturen oder bessere Quellen? Schreib an info@akara-solutions.de. Änderungen landen mit Datum auf /korrekturen.

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige