Tile List OBU in Viewport-Dependent AV1 Streaming

This article provides an overview of the Tile List Open Bitstream Unit (OBU) within the AV1 video codec and explains its practical implementation in viewport-dependent streaming. Readers will learn how the Tile List OBU enables arbitrary extraction and decoding of spatial video regions, how it optimizes bandwidth in immersive 360-degree media, and how it simplifies the decoding pipeline on client devices.

What is the Tile List OBU?

In the AV1 codec specification, the bitstream is structured into modular containers known as Open Bitstream Units (OBUs). Each OBU serves a distinct role, such as carrying sequence headers, frame headers, metadata, or tile groups.

The Tile List OBU (OBU_TILE_LIST) is a specialized OBU designed specifically for large-scale tile decoding. Standard AV1 streams organize video frames into grids of independently decodable spatial regions called tiles, but these are typically parsed as part of a complete frame structure. The Tile List OBU fundamentally changes this by allowing a decoder to receive, parse, and reconstruct an arbitrary subset of tiles sourced from one or more reference frames without needing to decode the entire original canvas.

Each entry in a Tile List OBU points directly to specific coded tile data along with the reference frame index required to decode it. This turns tiles into standalone spatial assets that can be rearranged, selectively requested, and decoded out of their original context.

The Viewport-Dependent Streaming Challenge

In immersive video applications, such as 360-degree virtual reality (VR) or ultra-high-resolution panoramas, transmitting a full 8K or 12K equirectangular video stream exceeds the bandwidth limitations of most networks and client hardware decoders.

Because a user only views a fraction of the total spherical area at any given moment—known as the viewport—streaming the entire panorama at maximum quality is inefficient. Viewport-dependent streaming solves this by delivering the user's immediate Field of View (FoV) at high quality while either delivering the remaining unseen areas at low quality or omitting them entirely.

Traditionally, viewport-dependent approaches required either:

How the Tile List OBU is Applied

The Tile List OBU provides an efficient architecture for viewport-dependent AV1 delivery by bridging the gap between tiled delivery and single-decoder playback:

  1. Content Encoding in Large-Scale Tile Mode: The source video is encoded using AV1’s large-scale tile configuration. The panoramic sphere is divided into a uniform grid of independently decodable, high-resolution tiles.

  2. Viewport Tracking and Tile Selection: As the user looks around, the client device tracks head orientation and calculates the precise spatial tiles that intersect with the current viewport.

  3. Dynamic Manifest or Edge Assembly: Based on the tracked viewport, the client (or an edge server) fetches only the relevant high-resolution tiles for the active viewing angle, alongside a lower-resolution background representation of the entire sphere for peripheral fallback.

  4. Bitstream Construction via Tile List OBU: The gathered tiles are wrapped into a Tile List OBU. Instead of re-encoding or requiring multiple decoders, the client passes this dynamically assembled bitstream to a single AV1 hardware decoder configured for tile list parsing.

  5. Direct Canvas Rendering: The decoder decodes only the specified high-priority tiles and places them directly into memory for the graphics pipeline to project onto the VR sphere.

Key Advantages