Delivering AV1 via CMAF to HLS and DASH Clients

The Common Media Application Format (CMAF) standardizes the container layer for streaming media, allowing content providers to package next-generation AV1 video into a single set of fragmented MP4 (fMP4) chunks that simultaneously serve both HTTP Live Streaming (HLS) and Dynamic Adaptive Streaming over HTTP (DASH) players. By decoupling the media payload from client-specific manifest files, CMAF eliminates the historical need to store duplicate segments for different ecosystems, drastically reducing storage costs, streamlining encoding workflows, and maximizing content delivery network (CDN) cache efficiency.

The Problem of Format Fragmentation

Historically, delivering adaptive bitrate streaming across heterogeneous devices required distinct container formats. Apple’s HLS ecosystem mandated MPEG-2 Transport Stream (.ts) containers, while MPEG-DASH favored fragmented MP4 (.mp4) containers. Distributing video to both platforms forced operators to ingest, encode, package, and cache two separate file structures for the exact same source content. This dual-pipeline approach doubled origin storage footprints and split CDN cache efficiency in half.

How CMAF Standardizes the Container Layer

CMAF resolves this fragmentation by establishing an ISO Base Media File Format (ISOBMFF) standard for media packaging. Under CMAF, media tracks are divided into standardized components:

Because CMAF defines structural conformity at the container level, modern players simply require standard-compliant fMP4 fragments rather than proprietary wrappers.

Binding AV1 to CMAF

AV1 is an open, royalty-free video codec designed by the Alliance for Open Media (AOMedia) that delivers higher compression efficiency compared to AVC (H.264) and HEVC (H.265). CMAF defines precise encapsulation rules for AV1 bitstreams within the ISOBMFF container structure.

In an AV1-CMAF workflow:

  1. The encoder compresses raw video into standard AV1 Open Bitstream Units (OBUs).
  2. The packager encapsulates these OBUs into CMAF-compliant media segments (.m4s or .mp4).
  3. Sample entry descriptions (such as av01) specify the profile, level, and color characteristics in the initialization header.

Because these encapsulated AV1 fragments adhere strictly to CMAF ISOBMFF definitions, the video payloads remain platform-agnostic.

Dual-Manifest, Single-Chunk Distribution

The core mechanism enabling single-chunk delivery is the separation of manifest parsing from media decoding. While HLS and DASH utilize different playlist protocols, they point to the identical media bytes on the server:

When an Apple client requests the stream, it reads the HLS .m3u8 playlist and downloads chunk segment_1.m4s. When an Android or web client requests the stream, it reads the DASH .mpd and requests the identical segment_1.m4s URI.

Operational Advantages