CMAF (ISO/IEC 23000-19:2024) defines a CMAF segment as a sequence of CMAF chunks, each consisting of a moof + mdat pair. A chunk starts at any frame boundary (it does not have to start with a keyframe; in CMAF terminology a chunk that starts with a SAP — Stream Access Point — is "independent", others are non-independent). Encoders configured for low-latency produce a new chunk every 100–400 ms, with one independent chunk at the start of each parent segment.
For LL-HLS, each chunk corresponds to one EXT-X-PART. For LL-DASH, the chunks are streamed inside the segment HTTP response via chunked transfer encoding, with no explicit per-chunk metadata in the MPD — the player parses chunks as they arrive. Either way, the chunk is what arrives at the player early; the rest of the segment follows in subsequent chunks.
Chunk duration is a fundamental knob. Short chunks (100 ms) maximise latency savings but produce many tiny moof+mdat pairs, hurting compression efficiency and cache addressability. Long chunks (1 s) give modest latency savings and behave more like classical segments. The 2025 industry consensus settles around 200–400 ms chunks for live with 1–2 s parent segments, which yields glass-to-glass latency around 2–4 s with acceptable compression overhead.

