What is CMAF?

Updated September 2026 · Reviewed by the Flicknexs platform team

Quick answer

CMAF (Common Media Application Format) is a standard that packages video into fragmented MP4 (fMP4) segments compatible with both HLS and MPEG-DASH. It allows a single set of segments to serve multiple protocols, reducing storage costs and simplifying the packaging workflow for multi-protocol streaming platforms.

Key takeaways

  • One set of fMP4 segments serves both HLS and DASH clients.
  • Reduces storage and bandwidth costs by eliminating duplicate segment files.
  • Simplifies the packaging pipeline by removing protocol-specific fragmentation.
  • Supports advanced features like low-latency streaming and DRM integration.

How CMAF works

CMAF standardizes the container format for adaptive bitrate streaming. Instead of creating separate TS segments for HLS and fMP4 segments for DASH, the encoder produces a single stream of fragmented MP4 segments. These segments contain the video, audio, and subtitle data in a universal format.

The packaging layer then wraps these fMP4 segments into the required protocol structures. For HLS, it adds the M3U8 playlist. For DASH, it adds the MPD manifest. The underlying media segments remain identical. This approach relies on the fact that modern players can decode fMP4 segments regardless of the delivery protocol.

CMAF also defines how to handle specific features like encryption and key rotation. It supports Common Encryption (CENC), which allows DRM systems to protect the media content. Because the segments are standardized, Just-in-Time Packaging can efficiently generate the necessary manifests on the fly without re-encoding the video. This makes CMAF a core technology for modern, efficient streaming infrastructure.

Why CMAF matters for a streaming business

For operators, CMAF directly impacts cost and complexity. Storing and delivering separate segment sets for HLS and DASH doubles your storage footprint and increases egress bandwidth usage. By using CMAF, you store one set of segments and serve them to all clients. This reduces your infrastructure bills significantly.

It also simplifies your pipeline. You do not need to maintain two separate packaging jobs. This reduces the risk of synchronization issues between protocols. If you support both Apple and Android devices, CMAF keeps a consistent viewing experience.

From a technical standpoint, CMAF enables easier adoption of new features. For example, Low-Latency HLS (LL-HLS) and DASH-IF Low Latency both benefit from the fMP4 structure. This means you can implement low-latency features more easily when your base segments are already in CMAF format. It is a foundational choice that pays off in operational efficiency and future-proofing your platform.

Common mistakes with CMAF

  • Assuming all players support CMAF: While most modern players do, some legacy devices or older browser versions may still require TS segments for HLS. Always test your target device matrix.
  • Ignoring encryption compatibility: CMAF works best with Common Encryption (CENC). If your DRM provider or player does not support CENC, you may face playback issues. Verify end-to-end compatibility.
  • Overlooking manifest generation: CMAF segments are universal, but the manifests (M3U8/MPD) are protocol-specific. Make sure your packaging layer correctly generates both manifest types from the same segment set.
  • Neglecting segment duration alignment: While CMAF allows variable segment durations, keeping them consistent across audio and video tracks helps prevent buffering issues and sync problems.

How Flicknexs handles CMAF

Flicknexs uses adaptive bitrate transcoding to produce CMAF-compatible fMP4 segments. This allows a single set of segments to serve both HLS and DASH requests. The platform supports AES encrypted HLS and DRM delivered at the delivery layer, keeping secure playback across devices. By standardizing on CMAF, Flicknexs reduces storage overhead and simplifies the packaging process for your content. This approach supports efficient delivery across web, iOS, Android, and smart TV apps. It also facilitates the integration of standard HLS adaptive bitrate delivery with 1080p standard. Explore our Custom OTT platform development services to learn more.

Custom OTT platform development

Done reading about CMAF?

Flicknexs ships it as part of a white-label streaming platform: web, mobile and TV apps, billing, ads, DRM and playout, on your own domain.

CMAF FAQ

No. CMAF is a container format for segments. DASH is a streaming protocol that uses those segments. CMAF segments can be served via DASH, HLS, or other protocols. The segment format is universal, but the delivery method varies.
Yes. By using one set of fMP4 segments for both HLS and DASH, you avoid storing duplicate files. This cuts your storage requirements roughly in half compared to maintaining separate TS and fMP4 segment sets.
Yes. CMAF supports Common Encryption (CENC), which is the standard for DRM in modern streaming. This allows you to protect content with DRM systems while using a single segment format for all delivery protocols.
Most modern devices and players support CMAF segments. However, some older devices or specific browser versions may still prefer TS segments for HLS. You should test your target audience's devices to make sure compatibility.
CMAF allows live streams to use the same file structure as VOD. This simplifies your backend by removing the need for separate encoding pipelines for different delivery methods. It also helps with faster startup times for live content, which viewers expect when joining a broadcast.
HLS is a delivery protocol, while CMAF is a file format specification. You can deliver CMAF files using HLS. CMAF standardizes how media is segmented and encoded, making it easier to switch between protocols like DASH or HLS without re-encoding your source assets.

Standards and references

CMAF (Common Media Application Format): Definition and Use