Термин

LL-DASH (Low-Latency DASH)

Короткое определение

Low-latency-профиль DASH-IF (LL-DASH IOP, текущая редакция 2024): использует CMAF chunked transfer и `availabilityTimeOffset`, чтобы выдавать live с glass-to-glass-задержкой 2–5 с.

LL-DASH атакует ту же проблему задержки, что и LL-HLS, но инструментами DASH. Вместо partial-сегментов и preload hints LL-DASH опирается на CMAF-чанки, отдаваемые через HTTP/1.1 chunked transfer encoding. Packager производит CMAF-чанки по 200–400 мс внутри больших 2–4-секундных сегментов и стримит их сразу же. MPD-манифест несёт атрибут `availabilityTimeOffset` (ATO), который говорит плееру запрашивать сегменты раньше их номинального времени доступности – плеер опирается на in-progress chunked-ответ, чтобы дополучить остаток.

Поведение плеера в LL-DASH – это «запрашивай следующий сегмент сразу же, как сдвинулся live edge, трактуй chunked-ответ как поток CMAF-чанков, парси и инжекти каждый чанк в MSE по приходу». dash.js поддерживает LL-DASH с 3.0 (2020); Shaka добавил поддержку в 3.2 (2021). Уточнение IOP 2024 года дало более чёткие рекомендации по suggested presentation delay, target latency и поведению ABR в low-latency-условиях.

LL-DASH и LL-HLS достигают похожих задержек и имеют похожие требования к CDN (поддержка chunked transfer, coalesced fetches, prefetch частичных ответов). Выбор между ними определяется в основном платформой: устройства Apple хотят HLS, всё остальное может играть DASH. Большинство операторов отдают оба из одного CMAF-packager-вывода, чтобы те же чанки одновременно обслуживали LL-HLS и LL-DASH.

Считаете параметры для своего продукта?

Поможем собрать энкодер-леддер и посчитать стоимость доставки – до старта разработки.