Медиа & Связь

Что такое WebRTC

Что это

Технология передачи голоса и видео в браузере в реальном времени, напрямую между участниками, без задержки на постоянную перезагрузку страницы.

Как применяем

Для голосовой связи внутри собственных сервисов — например, mesh-голосовая, где звук не идёт через промежуточный сервер вообще.

Где WebRTC нужен бизнесу

  • Команде нужны голосовые комнаты и созвоны на своём сервере, а не в облачном мессенджере.
  • Трансляцию нужно смотреть почти без задержки: показ экрана, игра, презентация.
  • Всё должно работать в браузере на компьютере и телефоне, без установки программ.
  • Сервер не должен слышать разговоры.

Какие бывают схемы

  • Mesh — каждый участник соединяется с каждым напрямую. Задержка в десятки миллисекунд и почти нулевая нагрузка на сервер, но каждый отправляет свой голос всем, поэтому есть предел по числу людей.
  • Через сервер (SFU) — участники шлют поток на сервер, он раздаёт остальным. Нужен для больших комнат, но требует мощности сервера.
  • WHEP — приём трансляции по WebRTC с задержкой меньше секунды, вместо HLS с задержкой в несколько секунд.

Как мы это используем

В «Переговорке», нашей платформе для голоса, чатов и трансляций:

  • Голос на mesh. Три общих голосовых канала, звонки в личных разговорах и группы, до 10 человек на канал. Голос идёт напрямую между участниками и шифруется между браузерами; сервер только знакомит участников и передаёт служебные пакеты.
  • Свой TURN. Тем, кто не может соединиться напрямую, помогает ретранслятор coturn. Учётные данные временные, живут час, расшифровать разговор ретранслятор не может.
  • Трансляция. Зритель выбирает обычный режим (HLS, 6–8 секунд задержки, устойчиво для мобильной сети) или быстрый (WHEP, меньше секунды).
  • Показ экрана идёт через сервер: 1080p, 30 кадров в секунду, до 18 Мбит/с.

Такую площадку разворачиваем на вашем сервере — раздел Инфраструктура.

Типичные проблемы

  • Mesh не растягивается. При 10 участниках каждый отправляет голос девятерым. Больше 10 человек в канале потребуют другой схемы, через сервер.
  • Без TURN часть людей не соединится. Роутеры и мобильные сети не всегда пускают прямое соединение, поэтому свой TURN обязателен.
  • Браузеры отличаются. Chrome, Edge и Safari играют трансляцию в 1440p, а Firefox получает 720p в H.264. Вынос чата в отдельное окно поверх игры работает в Chrome и Edge с версии 116.
  • Шифрование не везде. Голос шифруется между браузерами, а текстовые чаты — нет: они лежат в базе на сервере, и это записано в ограничения.

Когда это не нужно

Если команде хватает обычного мессенджера и его доступность не под вопросом, своя площадка — лишний сервер, который нужно сопровождать. И для вебинаров на сотни зрителей mesh-голос не подходит: там нужна другая архитектура.

← Все термины

Нужен сайт, бот или автоматизация?

Термины объяснили — теперь давайте к делу: расскажите о задаче, а мы переведём её на понятный план работ.