How AV1 Manages DPB Size at 4K and 8K Resolutions
The AOMedia Video 1 (AV1) codec efficiently processes high-resolution video streams by utilizing a strictly regulated Decoded Picture Buffer (DPB) architecture. At 4K and 8K resolutions, where uncompressed frame storage can easily consume gigabytes of memory, AV1 bounds hardware requirements through defined operating levels, a fixed-slot reference pool, flexible reference frame management, and advanced features such as frame re-use and reference scaling. This article explains how AV1 maintains low latency and memory footprints when decoding ultra-high-definition video.
Fixed Reference Buffer Slots
Unlike older codecs like H.264 or HEVC, which dynamically scale the total number of stored pictures based on resolution and profile limits, AV1 simplifies memory allocation by defining a fixed pool of reference frame slots:
- 8 Frame Buffers (
NUM_REF_FRAMES = 8): The AV1 specification mandates exactly eight reference frame storage slots in the DPB pool. - Up to 7 References Per Frame: For any given
inter-predicted frame, a maximum of seven reference frames can be
actively referenced (
LAST_FRAME,LAST2_FRAME,LAST3_FRAME,GOLDEN_FRAME,BWDREF_FRAME,ALTREF2_FRAME, andALTREF_FRAME).
Because the buffer pool is strictly capped at eight slots, hardware decoders can pre-allocate a deterministic amount of memory for DPB reference management regardless of the bitstream complexity.
Memory Footprints at 4K and 8K
Uncompressed video requires significant memory per frame, particularly at 10-bit color depth with 4:2:0 chroma subsampling:
- 4K (3840×2160, 10-bit 4:2:0): ~12.44 MB per frame. Storing eight references requires approximately 100 MB of VRAM.
- 8K (7680×4320, 10-bit 4:2:0): ~49.77 MB per frame. Storing eight references requires nearly 400 MB of VRAM.
Because this memory footprint scales aggressively with resolution, AV1 uses specific decoder-model rules to prevent frame allocation spikes from causing decoder out-of-memory states.
AV1 Levels and Decoder Model Constraints
AV1 enforces memory and performance boundaries using Levels. Decoders are certified up to specific levels that define maximum display rates, picture sizes, and buffer allocations:
- Levels 5.0 to 5.3 (4K Tier): Target resolutions up to 4096×2176 at frame rates from 30 fps (Level 5.0) up to 120 fps (Level 5.3).
- Levels 6.0 to 6.3 (8K Tier): Target resolutions up to 8192×4352 at frame rates from 30 fps (Level 6.0) up to 120 fps (Level 6.3).
To guarantee that hardware constraints are met, the AV1 bitstream includes the Decoder Model (similar to the Hypothetical Reference Decoder in ITU-T/ISO standards). The model governs the timing of frame decoding, presentation, and DPB eviction. Decoders must discard or overwrite frames in the DPB slots according to precise timing constraints, preventing the buffer from overflowing.
Show-Existing-Frame and Non-Display Frames
AV1 extensively uses non-displayed frames—such as alternative reference frames (AltRefs)—for forward and backward temporal prediction.
- Direct Display from Buffer: Rather than decoding
duplicate data, the
show_existing_frameflag instructs the decoder to output an already decoded picture from one of the eight DPB slots. - Zero Additional DPB Cost: Because this operation reuses existing DPB data without allocating a new buffer slot or re-decoding pixels, it reduces bandwidth usage and prevents buffer bloat during complex hierarchical GOP (Group of Pictures) structures.
Reference Frame Scaling (Super-Resolution and Resizing)
AV1 allows reference frames to be decoded at a different resolution than the output frame.
- Dynamic Resolution Changing: Decoders can maintain lower-resolution reference frames in the DPB while upsampling them for prediction on the fly.
- Superres Tool: Enables the encoder to process the horizontal dimension at a lower resolution and scale it back up at the output. This capability minimizes both the internal DPB transfer bandwidth and memory usage for bandwidth-limited 4K and 8K distribution.