CMAF

Single segments for both HLS and DASH delivery — eliminating duplicate storage.

Overview

What is CMAF

Common Media Application Format (CMAF) is an ISO/IEC standard (23000-19) that defines a single media segment format — fragmented MP4 (fmp4) — compatible with both HLS and MPEG-DASH manifests. Before CMAF, serving both HLS and DASH required encoding two separate sets of segments: .ts files for HLS and .m4s files for DASH. CMAF eliminates this duplication by producing one set of fmp4 segments that work with both an .m3u8 (HLS) and .mpd (DASH) manifest. CMAF also supports Common Encryption (CENC), enabling Widevine, FairPlay, and PlayReady DRM from a single encrypted source.

Decision Guide

When to Choose CMAF

Choose CMAF when:
  • You serve both HLS and DASH audiences — CMAF halves your segment storage by using one set of fmp4 files with two manifests.
  • You need multi-DRM from a single encrypted source — CMAF with CENC supports FairPlay, Widevine, and PlayReady without separate encryption passes.
  • You want low-latency delivery with chunked segments — CMAF chunked transfer encoding enables 2–5 second latency for both HLS and DASH.
Consider alternatives when:
  • You only serve HLS (Apple-only audience) — Standard HLS with .ts segments is simpler and equally effective.
  • You only serve DASH (no Apple devices) — Standard MPEG-DASH with .m4s segments avoids CMAF packaging complexity.
  • You need progressive download — MP4 is simpler for single-file delivery without adaptive streaming.
Try it

Transcoding Demo

Source video

URL
Upload File
Sample Video

Maximum file size: 5GB

Choose our Demo File
4K Sample (Qencode)
Source Type
URL
Transcoding demo creates a small clip with a watermark.To test transcoding full files, Start your Free Plan for 500 credits

Select a source video and click “Convert” to see CMAF output in action.

Reference

Key Characteristics

TypeSegment format + packaging standard
File extension(s)Typically served as .m4s
Supported video codecsH.264, H.265 (HEVC), AV1
Supported audio codecsAAC
DRM supportAll — Widevine, PlayReady via Common Encryption (CENC)
Adaptive bitrateYes — via HLS or DASH manifest layer
Typical use caseUnified HLS + DASH delivery, multi-DRM from single encryption, storage cost reduction
Compatibility

Browser & Device Support

Platform
CMAF
MP4
HLS
DASH
Chrome (desktop)
via MSE
via MSE
via MSE
Firefox (desktop)
via MSE
via MSE
via MSE
Safari (macOS)
via HLS
native
via MSE
Edge
via MSE
via MSE
via MSE
iOS Safari
via HLS
native
Android Chrome
via MSE
via MSE
via MSE
Implementation

How Qencode Handles CMAF

Qencode produces CMAF-compatible output by generating fmp4 segments with both HLS (.m3u8) and DASH (.mpd) manifests from a single encoding job. Enable CMAF by specifying the fmp4 segment format in your HLS or DASH output configuration.

Pair CMAF with DRM to encrypt once and serve to all DRM systems, or combine with Per-Title Encoding to optimize the bitrate ladder before CMAF packaging.

Request Example

CMAF-compatible output for HLS

{
  "query": {
    "source": "https://your-storage.com/video.mp4",
    "format": [
      {
        "output": "advanced_dash",
        "create_m3u8_playlist": 1,
        "stream": [
          {
            "video_codec": "libx264",
            "resolution": 2160,
            "optimize_bitrate": 1,
            "framerate": "30",
            "keyframe": "90"
          }
        ],
        "segment_duration": "6"
      }
    ]
  }
}

Copy this payload and use it with your API key to generate CMAF-compatible output from any video source.

View Parameter Reference
comparison

CMAF vs. Separate HLS + DASH

CMAF (unified)
Separate HLS + DASH
Segment storage
1 set of fmp4
2 sets (.ts + .m4s)
Storage cost
~50% less
Baseline (duplicated)
Manifest support
Both .m3u8 and .mpd
Separate manifests per format
Complexity
Moderate
Higher (two pipelines)
Compatibility
Broad (requires fmp4-capable players)
Maximum (legacy .ts support)
Explore More

Related Features

We love creating powerful solutions that are aligned with the needs of your business.

Please send us a message if you have a question or Schedule a call for a demo to discuss your integration.

Let's talk

First Name
Last Name
Company
Email
Your Message

Contact us with any questions. We'd love to help.

Los Angeles, CA - (HQ)

San Francisco, CA

New York, NY