Термин
CMAF chunk
Маленький (обычно 100–400 мс) адресуемый фрагмент CMAF-сегмента. Атомарная единица, на которую ссылаются как LL-HLS partial, так и LL-DASH chunk.
CMAF (ISO/IEC 23000-19:2024) определяет CMAF-сегмент как последовательность CMAF-чанков, каждый из которых представляет собой пару `moof + mdat`. Чанк может начинаться с любой границы кадра – не обязательно с keyframe. В терминологии CMAF чанк, начинающийся с SAP (Stream Access Point), называется independent, остальные – non-independent. Энкодеры, настроенные на низкую задержку, генерируют новый чанк каждые 100–400 мс, при этом в начале каждого родительского сегмента обязательно присутствует один independent-чанк.
В LL-HLS каждому чанку соответствует один элемент EXT-X-PART. В LL-DASH чанки передаются внутри HTTP- ответа сегмента с использованием chunked transfer encoding, без явных метаданных на уровне отдельных чанков в MPD – плеер обрабатывает чанки по мере их получения. В обоих случаях чанк – это часть данных, которая поступает к плееру раньше остальной части сегмента; оставшиеся данные сегмента следуют в последующих чанках.
Длительность чанка – ключевая настройка. Короткие чанки (100 мс) максимально снижают задержку, но создают множество мелких фрагментов `moof+mdat`, что ухудшает эффективность сжатия и работу кеша. Длинные чанки (1 с) дают скромную экономию по задержке и ведут себя как традиционные сегменты. Консенсус 2025 года – чанки 200–400 мс в прямом эфире при родительских сегментах длительностью 1–2 секунды: end-to-end задержка составляет около 2–4 с при приемлемых накладных расходах на сжатие.
Считаете параметры для своего продукта?
Поможем собрать энкодер-леддер и посчитать стоимость доставки – до старта разработки.