Воспроизведение стрима¶
Работающий стрим отдаёт себя всеми основными протоколами сразу — включать нечего, адрес зависит только от имени стрима. Зритель приходит на адрес инсталляции; в кластере до нужного стримера его доводит балансировщик проигрывания.
Адреса¶
| Протокол | Адрес |
|---|---|
| HLS | /streaming/v/<имя>/index.m3u8 — основной путь для веба, мобильных приложений и Smart TV |
| DASH | /streaming/v/<имя>/Manifest.mpd |
| MPEG-TS по HTTP | /streaming/mpegts/<имя> — приставки и VLC |
| fMP4-поток | /streaming/fmp4-stream/<имя> — непрерывный fMP4, удобен инструментам |
| Встроенный плеер | /streaming/embed/<имя> — готовая страница-плеер |
| Сведения о потоке | /streaming/info/<имя> — JSON с дорожками и битрейтами |
Если у стрима настроен транскодер с лестницей качеств, HLS и DASH отдают все качества, и плеер переключается между ними сам.
Два способа воспроизведения живут на других страницах: раздача по SRT — на странице ретрансляции, просмотр архива с отмоткой — на странице DVR.
Воспроизведение в кластере¶
Адреса /streaming — это отдача конкретной машины: каждый стример обслуживает их сам, и балансировки на этом пути нет. В кластере прибивать зрителя к машине не нужно — у central есть балансировщик проигрывания: те же адреса, только с префиксом /playback вместо /streaming, на адресе central:
http://<адрес central>/playback/v/<имя>/index.m3u8
http://<адрес central>/playback/embed/<имя>
Балансировщик находит живой стример, на котором стрим размещён, и доводит зрителя одним из двух способов:
- Редирект — плеер получает 302 на публичный payload URL стримера и дальше ходит на машину напрямую; central в трафике не участвует.
- Прокси — публичный адрес стримеру не задан, и central переливает медиа через себя.
Способ выбирается настройками доставки стримера — см. Подключение и доставку.
Если в кластере есть эдж-стримеры, балансировщик предпочитает их: зрители уходят на эджи, а стримеры захвата раздают только внутрикластерные потоки. Стримеров в разных городах и сетях разводит по зрителям механизм CDN-зон.
Защита воспроизведения действует и на этом пути: политику применяет стример, до которого балансировщик довёл зрителя.
Встроенный плеер¶
/streaming/embed/<имя> — законченная страница с плеером: её можно открыть в браузере для быстрой проверки или встроить в свой сайт через iframe. Параметр ?autoplay=false отключает автозапуск.

Этот же плеер показывает стрим на вкладке основных настроек в консоли.
Проверьте отдачу¶
Самая быстрая проверка — плейлист:
curl -s http://<адрес>/streaming/v/<имя>/index.m3u8 | head
Живой стрим отвечает манифестом с качествами (#EXT-X-STREAM-INF). Пустой манифест из одного заголовка — стрим есть, но отдавать нечего: почти всегда это сырые кодеки без транскодера.
- 404. Стрима с таким именем нет — имя входит в адрес буквально.
- Манифест есть, плеер не играет. Смотрите кодеки в
/streaming/info/<имя>: браузерные плееры читают H.264/AAC. - Стрим не зелёный. Сначала источник, потом воспроизведение.