Codec, GOP and timestamps establish the boundary.
CMAF can simplify packaging—not the whole player stack
Use fragmented MP4 media objects across HLS and DASH where codecs, encryption and timing align, while keeping each manifest and device ecosystem explicit.
Prove segment reuse with the exact codec, DRM and player matrix you ship.
Shorter units can enable a measured low-latency design.
Manifest and player behavior still differ.
CMAF is a media packaging standard, not another name for HLS or MPEG-DASH. It defines a common fragmented-MP4 media structure that different adaptive streaming presentations can use. When codecs, encryption, timing and profiles align, HLS playlists and DASH manifests can point to compatible shared media objects instead of maintaining two entirely separate segment libraries.
CMAF separates media objects from presentation logic
ISO/IEC 23000-19:2024 is the current CMAF specification. Apple's CMAF with HLS documentation describes tracks built from a header and fragments, with alternative tracks grouped into switching sets. DASH-IF's current interoperability guidelines constrain DASH delivery around the MPEG CMAF specification to improve interoperability at defined points in the chain.
The important CMAF objects
- Track: encoded samples for one media component, such as video, audio or subtitles, stored in the CMAF-constrained ISO Base Media File Format.
- Header: initialization information the client needs before it can decode the fragments.
- Fragment: independently decodable media covering a time interval. A CMAF segment contains one or more fragments; the segment or chunk is the addressable delivery object.
- Switching set: aligned alternative tracks—often at different bitrates or resolutions—that a client can switch between at defined boundaries.
- Presentation: HLS playlists or a DASH MPD tell clients how to discover and play the media. CMAF does not remove this layer.
CMAF is not automatically low latency
Fragmented media makes chunked and low-latency workflows possible, but CMAF does not make them automatic. End-to-end delay still depends on encoder behavior, fragment and chunk duration, origin availability, CDN forwarding, manifest updates, player requests, buffer policy and device support. A long GOP and a conservative player buffer can produce high latency even when the files comply with CMAF.
Very small chunks bring a different tradeoff: more request and processing pressure. Treat latency as a measured budget. Use the low-latency streaming guide for the wider protocol and architecture decision.
CMAF does not guarantee one universal asset
A shared media library works only across compatible profiles. Check each of these:
- Codec reach. Support for H.264, HEVC, AV1, audio codecs, profiles, levels and HDR formats varies between clients.
- Track alignment. Switching requires compatible segment boundaries, timestamps and random-access points.
- Encryption. Common Encryption can help, but key systems and DRM combinations still vary by device family.
- Text and accessibility. Subtitle and caption formats, styling, forced narratives and language selection each have player and presentation constraints.
- Manifest rules. HLS and DASH describe renditions, events, content protection and low-latency behavior differently.
- Player behavior. A valid asset may still fail if the application, browser, television or SDK does not implement the selected combination.
CMAF, HLS, and MPEG-DASH
| Layer | CMAF | HLS | MPEG-DASH |
|---|---|---|---|
| Primary job | Common segmented media format | HTTP adaptive streaming presentation and client behavior | HTTP adaptive streaming presentation and client behavior |
| Typical manifest | No protocol-specific manifest; HLS or DASH supplies the presentation manifest | M3U8 playlists | MPD |
| Media container | CMAF-constrained fragmented MP4 | MPEG-TS or fragmented MP4, depending on workflow | Commonly ISO BMFF/fMP4 in modern profiles |
| Shared media possible | Defines the common media structure | Yes, when the HLS profile and clients align | Yes, when the DASH profile and clients align |
Use HLS vs MPEG-DASH for the client and delivery decision, and the HLS production guide for HLS architecture.
Prove shared objects instead of inferring them
Build the matrix from the media you actually deliver: codec and profile, audio format, encryption scheme, key rotation, segment duration, chunk duration, HLS player, DASH player, browser or device, CDN behavior and origin behavior. Record whether the exact media objects are reused, merely generated by the same encoder or packaged separately. These scenarios produce different savings and should not be reported as the same “single format” outcome.
| Test | Evidence to retain | Failure it exposes |
|---|---|---|
| Timeline alignment | Segment and fragment boundaries across every rendition. | Quality switches stall or jump because tracks do not share a usable timeline. |
| Encryption | Scheme, key identifiers, license response and player result. | A shared segment cannot be decrypted by one required DRM path. |
| Live edge | Encode timestamp, publish time, manifest update and rendered frame. | Small chunks exist but buffering policy keeps end-to-end latency high. |
| Cache behavior | Keys, object ranges, hit ratio and origin request volume. | Chunk requests bypass cache or overload the origin during audience growth. |
Run one reference asset through both presentations
- Choose representative media. Use a controlled live channel or VOD asset with the required combination of video, audio, captions, HDR and encryption—not a convenient clear H.264 sample when production is different.
- Generate both presentations. Keep the HLS playlists, DASH MPD, initialization data, media-object inventory and packager configuration.
- Prove object reuse. Resolve the HLS and DASH references, then compare the exact media URLs, byte ranges or object hashes. “Produced by the same encoder” does not prove that the same objects are delivered.
- Exercise the device and DRM matrix. On every admitted player, test start, seek or live-edge join, quality switching, audio and subtitle selection, license acquisition, key rotation and recovery.
- Inspect origin and CDN behavior. From more than one region, compare cache keys, ranges, hit ratio, origin requests and response timing for both presentations.
- Test low latency as a separate mode. Measure encode, fragment production, publication, CDN transfer, player buffer and rendered-frame delay. Small chunks alone do not prove a low-latency result.
- Keep a rollback asset. Record excluded devices and their known-good presentation. Replay the suite after any encoder, packager, CDN, DRM or player change.
Callaba's documented boundary
A Callaba Web Player can be configured for HLS or DASH playback, then started and checked with getStat before testing the viewer URL. Choosing either mode does not prove that the two presentations reuse native CMAF media objects. Prove reuse by inspecting the generated manifests and objects as described above, and validate the real browser/device matrix before publishing.
Use stream testing for a controlled end-to-end playback check and HLS stream monitoring for continuous HLS evidence. Neither one replaces DASH-specific playback, DRM and device testing.
CMAF FAQ
Is CMAF a streaming protocol?
CMAF is primarily a common segmented media format and application model. HLS or MPEG-DASH normally provides the presentation and client delivery rules.
Can HLS and DASH use the same CMAF segments?
They can share compatible media resources when codecs, timing, profiles, encryption and client requirements align. Prove that with the real device and player matrix.
Does CMAF reduce latency?
It enables the fragmented and chunked designs used in low-latency workflows, but it does not set the complete latency budget. Encoding, origin, CDN, manifest, network and player behavior still matter.
Is fragmented MP4 the same as CMAF?
No. CMAF uses a constrained structure derived from ISO Base Media File Format. Not every arbitrary fragmented MP4 asset satisfies the intended CMAF profile or interoperability requirements.