Introduction
WebM is an open, royalty-free media file format for the web, launched by Google in 2010 and maintained by the WebM Project. It plays in all the major web browsers and is widely used for short clips and video on web pages.
A WebM file is a Matroska file restricted to a few open codecs: VP8, VP9 or AV1 for video, and Vorbis or Opus for audio. Audio-only WebM files also exist.
Structure
WebM uses the same EBML element tree as Matroska. The file starts with the EBML header,
ID 1A 45 DF A3, whose DocType is webm. Then comes one Segment
holding the Info, Tracks, Clusters of frames and Cues for seeking. Only the elements
and codecs allowed by the WebM specification may be used.
0EBML header, DocTypewebmvaries…Segment Info, Tracks, Clusters and Cuesvaries
Links
Software
- Firefox, Chrome and other web browsers
- VLC media player (Windows, macOS, Linux, mobile)
- mpv (Windows, macOS, Linux)
- MKVToolNix (Windows, macOS, Linux)
- HandBrake (Windows, macOS, Linux)
- FFmpeg (Windows, macOS, Linux)
Developers
- libavformat, C, FFmpeg’s container library
- libwebm, C++, the WebM Project’s reader and writer
Reference
- WebM container guidelines, WebM Project
- Matroska element specification, matroska.org