What is the maximum framerate of WebM?
The WebM container format does not hardcode a specific, standardized limit on video framerate, meaning its maximum framerate is fundamentally determined by the underlying math of its timestamp system. Because WebM is based on a profile of the Matroska (MKV) container, it measures time using a nanosecond-based scale factor. With its default configuration, the absolute theoretical maximum framerate supported by the WebM architecture is 1,000 frames per second (FPS).
The Architecture of WebM Timestamps
To understand why the maximum frame rate sits at 1,000 FPS, you have
to look at how the container structures its media blocks. WebM inherits
the Matroska framework, which defaults to a TimecodeScale
of 1,000,000 nanoseconds per unit.
- The Millisecond Precision: A timecode scale of 1,000,000 nanoseconds translates exactly to 1 millisecond.
- The Frame Limit: Because every individual frame block must be assigned a unique integer timestamp in milliseconds, the video cannot exceed one frame per millisecond.
- The Equation: \[\text{Maximum Framerate} = \frac{1000 \text{ milliseconds}}{1 \text{ millisecond per frame}} = 1000 \text{ FPS}\]
If a creator attempts to multiplex a video stream exceeding 1,000 FPS into a standard WebM container, the container lacks the native timestamp precision to separate the frames accurately, causing them to collapse into the same millisecond block.
Variable Framerate and Codec Limitations
WebM natively supports Variable Framerate (VFR). Instead of declaring a rigid playback speed in the global metadata header, the format relies entirely on these individual presentation timestamps for every single frame. This means a WebM video can fluctuate dynamically between 0 FPS and 1,000 FPS depending on the complexity of the action and the encoding settings.
While the WebM container can mathematically map up to 1,000 FPS, the actual video codecs used inside the container impose their own practical constraints:
- VP8 and VP9: These traditional WebM codecs are heavily optimized for consumer web delivery, where content rarely scales past 60 FPS or 120 FPS. Trying to encode raw VP8/VP9 streams at 1,000 FPS requires immense hardware processing power and causes a massive spike in bitrate requirements.
- AV1: The modern AV1 codec, which is also supported inside the WebM container, handles high-framerate playback much more efficiently, but hardware decoding capabilities on consumer displays still cap practical consumption well below the 1,000 FPS structural boundary.