WHIP: трансляции из OBS с задержкой менее 1 секунды.
WHIP (WebRTC-HTTP Ingestion Protocol) — первый стандартизированный способ передачи медиапотока на WebRTC‑сервер для трансляций.
В прошлом месяце мы добавили поддержку этого протокола в Facecast, чтобы у вас появилась возможность доставлять контент с задержкой менее 1 секунды прямо из OBS в наш плеер.
В статье рассказываем предысторию появления стандарта, принцип работы, практические преимущества и текущий уровень поддержки в инструментах и платформах для трансляций, объясняем, в каких сценариях WHIP решает задачу, а в каких его использование нецелесообразно.
Изначально, WebRTC проектировался для прямой связи между браузерами: для видеозвонков и конференций, где поток идёт напрямую от участника к участнику, без промежуточного сервера, что позволило достичь задержки менее 1 секунды от захвата изображения до отображения на экране.
Такая короткая задержка сделала этот протокол очень привлекательным для сферы прямых трансляций, где в стандартной цепочке доставки потока каждый этап обработки добавляет задержку, и контент доходит до зрителя через лишь через 10–30 секунд после подачи сигнала. А при нестабильной сети плеер увеличивает буфер дополнительно и задержка может вырасти до 40–60 секунд.
Однако применить WebRTC в стриминге оказалось непросто.
Дело в том, что перед стартом потока, энкодер и платформа должны «договориться» — обменяться описанием кодеков, маршрутов, параметров шифрования. В RTMP этот обмен описан в спецификации с самого начала, поэтому любой энкодер работает с любым сервером без дополнительных настроек.
Для “молодого” WebRTC такого стандарта ещё не существовало: каждая платформа решала задачу установки соединения самописными способами: под каждую систему приходилось писать отдельную интеграцию, и изобретать её заново при смене платформы.

В марте 2025 года вышел RFC 9725 (RFC — официальный технический стандарт интернета) — документ, который наконец описал единый стандарт подключения энкодеров к WebRTC-серверу. Назвали его WHIP (WebRTC-HTTP Ingestion Protocol).
После этого осталось лишь дождаться, когда популярные энкодеры добавят нативную поддержку протокола. И в октябре 2023 в OBS 30.0 добавили поддержку WHIP «из коробки», без плагинов и патчей.
Далее расскажем о том, как устроен этот протокол, где его уже можно применять, где нельзя, а где не нужно.
Что такое WHIP
WHIP (WebRTC-HTTP Ingestion Protocol) — протокол передачи медиапотока от энкодера на WebRTC-сервер. Проще говоря, это мост между энкодером и медиасервером: принял поток на входе, передал дальше — и на этом его задача заканчивается.
Подключение строится на HTTP-обмене: энкодер сообщает серверу, что готов передавать поток, а также какие кодеки и параметры потока использует. Сервер отвечает, на каких условиях готов принять. После этого стороны согласовывают маршрут соединения, обмениваются ключами шифрования — и поток стартует. Весь медиатрафик передаётся зашифрованным по умолчанию, в отличие от RTMP, где шифрование настраивается отдельно.
Дальнейший маршрут зависит от задачи. Поток можно направить на SFU — это сервер, который раздаёт его зрителям напрямую по WebRTC с задержкой менее секунды: идеально для интерактивных эфиров, где важна мгновенная реакция аудитории. Или через транскодер упаковать в HLS и раздать через CDN — задержка выше, зато поток масштабируется до практически любого количества зрителей и лучше переживает кратковременные проблемы с сетью за счёт буфера на стороне плеера. Оба сценария совместимы: один поток на входе, два контура раздачи на выходе.
Его парный протокол — WHEP (WebRTC-HTTP Egress Protocol) — закрывает обратную сторону: доставку потока от медиасервера до плеера зрителя. WHIP принимает поток от стримера, WHEP отдаёт его аудитории — вместе они покрывают весь путь потока от начала до конца.
Главный выигрыш от использования — эксплуатационный, а не технический. Протокол не делает WebRTC значительно быстрее, чем хорошо написанная кастомная интеграция. Он убирает необходимость эту интеграцию писать каждый раз заново.
Что даёт WHIP на практике
- WHIP стандартизирует подключение. Любой совместимый энкодер работает с любым совместимым сервером по единому принципу — без изучения кастомного API каждой платформы.
- Шифрование всегда включено. В отличие от RTMP, где защищённая передача настраивается отдельно, WHIP шифрует поток по умолчанию — это часть стандарта, а не опция.
- Нативная поддержка современных кодеков. Энкодер передаёт H.265 или AV1, сервер их принимает — промежуточное перекодирование на входе не требуется. Это сокращает задержку и снижает нагрузку на сервер.
- Симулкаст — несколько качеств в одном потоке. WebRTC позволяет одновременно передавать несколько версий потока с разным разрешением. Сервер выбирает нужное качество для каждого зрителя в зависимости от канала — без транскодирования на лету. При RTMP поток транскодируется уже на сервере после приёма: это дополнительная обработка, которая увеличивает задержку. OBS 32.1 добавил поддержку симулкаста в связке с WHIP (март 2026).
- Снижение задержки за счёт упрощения цепочки. В схеме RTMP → WebRTC задержка между камерой и экраном зрителя была около полсекунды: часть времени уходила на приём потока по RTMP, буферизацию и перекладку его в WebRTC-формат на сервере. При переходе на WHIP и прямой WebRTC-приём с OBS эта обработка на входе больше не нужна, и общая задержка в тестах уменьшалась примерно до 200 мс.
Где WHIP уже интегрирован
| Инструмент | Тип | WHIP | Версия / примечание |
|---|---|---|---|
| Facecast | Платформа | ✅ | приём потока по WHIP |
| YouTube | Платформа | ❌ | приём внешнего потока через RTMP; нет поддержки WHIP |
| Vimeo | Платформа | ❌ | приём внешнего потока через RTMP; нет поддержки WHIP |
| Twitch | Платформа | ✅ | приём потока по WHIP |
| Restream | Платформа | ✅ | приём потока по WHIP |
| OBS Studio | Софт для трансляций | ✅ | 30.0+; отправка потока по WHIP |
| Streamlabs | Софт для трансляций | ✅ | добавлено в 2024; отправка потока по WHIP |
| vMix | Софт для трансляций | ❌ | нет нативной поддержки WHIP |
| Wirecast | Софт для трансляций | ❌ | нет нативной поддержки WHIP |
| XSplit Broadcaster | Софт для трансляций | ❌ | нет нативной поддержки WHIP |
| FFmpeg | Софт для трансляций | ✅ | -f whip; отправка потока по WHIP |
| Teradek Prism | Оборудование | ✅ | нативная поддержка; отправка потока по WHIP |
| Osprey Talon | Оборудование | ✅ | нативная поддержка; отправка потока по WHIP |
| Ant Media Server | Медиасервер | ✅ | приём потока по WHIP; выдача зрителям через WebRTC/HLS |
| SRS / Oryx | Медиасервер | ✅ | приём потока по WHIP; выдача через WebRTC |
| MediaMTX | Медиасервер | ✅ | приём по WHIP, выдача по WHEP/WebRTC |
| Nimble Streamer | Медиасервер | ✅ | приём по WHIP, выдача по WHEP/WebRTC |
WHIP в Facecast
За последний год, к нам пришло много запросов на добавление протокола, и в прошлом месяце Facecast получил поддержку WHIP. Мы уже успели провести ряд успешных трансляций с задержкой около 1 секунды, а также добавили возможность симулкаста — когда OBS одновременно отправляет несколько версий потока в разном качестве, а сервер сам выдаёт каждому зрителю подходящую без транскодирования на лету.
Раздача через WebRTC-плеер поддерживает участие 10 000 одновременных зрителей и более. Зависит от ваших задач.
Пока функционал доступен по запросу — напишите нам.
Важный нюанс: симулкаст увеличивает нагрузку на исходящий канал. Вместо одного потока, скажем 1080p в 6 Мбит/с, OBS отправляет сразу несколько версий — например 1080p, 720p и 360p, и суммарный битрейт может вырасти до 8–10 Мбит/с в зависимости от настроек.
Как подать поток по WHIP из OBS:
- Откройте OBS → Настройки → Трансляция
- В поле Служба выберите WHIP
- Вставьте полученную от нас WHIP-ссылку в поле Сервер
- В поле «Токен предъявителя» можно вставить токен авторизации — это ключ доступа, который подтверждает, что именно вы имеете право вещать на этот эндпоинт; в случае с Facecast этот токен не требуется, оставьте поле пустым
- Перейдите в Настройки → Вывод и убедитесь, что видеокодек — H.264; аудио (Opus) согласуется автоматически
- Запустите трансляцию

WHIP: когда использовать и когда не нужен
Минимальная задержка — критична
Спортивные трансляции, киберспортивные турниры, букмекерские услуги, онлайн-аукционы и торги — форматы, где задержка больше 1–2 секунд делает взаимодействие невозможным. При задержке 15–20 секунд зритель видит результат с отставанием от реального времени — это критично для ставок и торгов. WHIP держит задержку на уровне 200–500 мс.
Интерактивная трансляция с живым Q&A и голосованиями
Вебинары, корпоративные мероприятия, онлайн-образование — форматы, где ведущий отвечает на вопросы, а результаты голосования меняются прямо в эфире. При задержке 10–20 секунд взаимодействие асинхронно, а WHIP синхронизирует реакцию зрителя и ответ ведущего.
Вебинарная платформа не подходит
Вебинарные платформы устроены так, что зритель всегда попадает на страницу сервиса, а не на ваш сайт, и вы почти не управляете оформлением и встройкой эфира на другие ресурсы. WHIP даёт такую же низкую задержку, но эфир идёт на вашу страницу — с вашим плеером, вашей аудиторией, вашим чатом и интерактивами.
Короткая задержка не критична
RTMP справится лучше: проще в настройке, давно отлажен, поддерживается везде. Для записи конференции, подкаста или трансляции без интерактива в реальном времени — везде, где задержка 10–20 секунд не критична — WHIP только усложнит схему. В связке с HLS такой эфир устойчивее к кратковременным сбоям сети: плеер использует буфер и восстанавливает воспроизведение без заметной потери кадров.
Вывод
Благодаря короткой задержке, WebRTC уже давно пытаются полноценно внедрить в современную стриминговую архитектуру, но без стандартного способа принимать поток от профессионального оборудования это было технически сложно и трудоёмко.
По мере того как WHIP набирает поддержку в инструментах и платформах, WebRTC способен превратиться в полноценный стандарт рынка — наряду с HLS и RTMP.
Facecast уже поддерживает приём потока через WHIP — это можно протестировать прямо сейчас. Свяжитесь с нами — подробно расскажем как это работает.
