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

Первый сервис, принимающий поток contribution от источника и передающий его энкодеру, packager’у или live-origin. Вход в стриминг-пайплайн.

Ingest-эндпоинт – это публичный адрес, на который отправляет данные энкодер. Он обрабатывает contribution-протокол (RTMP, SRT, RIST, WHIP, RTSP), разделяет аудио и видео потоки, иногда выполняет первичную проверку (формат, битрейт, выравнивание) и передаёт их дальше – обычно транскодеру для live-трансляции или packager’у и origin-серверу в режиме pass-through. В управляемых live-сервисах (Mux, Cloudflare Stream, AWS Elemental MediaLive) ingest реализуется как API-вызов, в который передаётся stream key.

Ingest сложен по трём причинам. Во-первых, ему приходится работать с «враждебными» протоколами – энкодеры иногда отправляют битые RTMP-таймстемпы, повреждённые H.264 NAL и некорректные пары PTS/DTS, а ingest должен корректно отклонить такие потоки, не приводя к сбоям всего сервиса. Во-вторых, ingest должен выдерживать пиковые нагрузки – при старте крупного события за минуту могут подключиться тысячи потоков, и система должна справиться с такой нагрузкой. В-третьих, ingest отвечает за аутентификацию – обычно это stream key в URL, иногда подписанный токен, IP-allowlist и квоты по событиям.

Главный тренд 2022–2026 – переход от RTMP к SRT и WHIP в качестве протокола по умолчанию для приёма потока (ingest). RTMP – однопоточный, однобитрейтный, работает поверх TCP и плохо справляется с восстановлением при нестабильной сети. SRT и WHIP используют UDP, эффективно восстанавливают потерянные пакеты без увеличения задержки и хорошо интегрируются с облачным масштабированием. Сервисы вроде Mux, Cloudflare и большинство современных платформ для прямых трансляций принимают все три протокола на одном эндпоинте, позволяя энкодеру выбирать наиболее подходящий.

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

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