AV1 Scalability Mode Identifiers and L3T3 Explained
AV1 scalability mode identifiers, such as L3T3, define standardized configurations for Scalable Video Coding (SVC) within the AV1 video codec framework. These identifiers describe how an encoded video stream is partitioned into distinct spatial (resolution) and temporal (frame rate) layers. This article explains the syntax of these identifiers, breaks down the components of L3T3, details how layer dependencies work, and highlights their practical role in adaptive streaming and real-time WebRTC communications.
The Role of Scalability in AV1
Scalable Video Coding enables a single video encoder to produce a layered bitstream containing a base layer and one or more enhancement layers. Instead of encoding multiple distinct bitstreams for different network conditions (simulcast), an AV1 encoder can produce a single SVC bitstream. A Selective Forwarding Unit (SFU) or video player can drop enhancement layers without decoding the stream, adapting instantly to bandwidth fluctuations or device constraints.
To eliminate ambiguity between encoders, media servers, and decoders, the Alliance for Open Media (AOM) and the W3C WebRTC working group established standard scalability mode identifiers.
Breaking Down the Identifier Syntax: L3T3
The identifier format follows a concise naming convention that details the exact layering structure:
- L (Spatial Layers): The letter "L" denotes the
number of spatial layers with inter-layer dependency, where higher
layers depend on lower layers to reconstruct the picture. The number
following "L" indicates the count. In
L3T3, L3 means there are three spatial layers (for example, 360p, 720p, and 1080p). - T (Temporal Layers): The letter "T" denotes the
number of temporal layers. The number following "T" indicates the frame
rate steps available. In
L3T3, T3 means there are three temporal layers (for example, 15 fps, 30 fps, and 60 fps).
An L3T3 configuration creates a matrix of 9 potential
operational points (3 spatial × 3 temporal). A receiver with limited
bandwidth can receive the base spatial layer at the lowest frame rate,
while a high-bandwidth desktop receiver can consume all layers for
maximum quality and frame rate.
Dependency and Structural Variants
The AV1 scalability specification includes variations on this basic syntax to define how frames reference each other:
- S-Modes (Simulcast/Independent): An identifier
starting with
S(such asS3T3) indicates that the spatial layers are independent. UnlikeLlayers, anSspatial layer cannot reference frames from lower spatial layers. This reduces decoding complexity at the cost of higher compression overhead. - Keyframe Alignment Modifiers: Suffixes such as
_KEYor_KEY_SHIFTspecify keyframe synchronization across layers:_KEY: Indicates that all spatial layers share synchronized keyframes. When a keyframe arrives, all spatial layers can be decoded immediately from that point._KEY_SHIFT: Allows keyframes across spatial layers to be staggered over time to prevent bit-rate spikes.
- Ratio Modifiers: Suffixes like
h(half) indicate non-standard resolution scaling factors. By default, spatial layers often scale by a factor of 2:1, but specific modifiers can alter this to 1.5:1.
Practical Application in WebRTC
In real-time communication architectures, L3T3 allows a
client to transmit one coherent video feed containing high-definition,
standard-definition, and low-definition options at various frame rates.
Media servers (SFUs) inspect the AV1 RTP packet headers and forward only
the layers that match each participant's downlink capacity. This
eliminates the CPU overhead of server-side transcoding while providing
instantaneous resilience against packet loss and congestion.