← Cloudflare Realtime / realtime / sfu
Адаптеры передачи медиа
Адаптеры передачи медиа связывают WebRTC с другими транспортными протоколами. Они выполняют преобразование протоколов, транскодирование кодеков и обеспечивают двунаправленную передачу медиапотоков между сессиями WebRTC и внешними эндпойнтами.
Что делают адаптеры
Адаптеры расширяют возможности Realtime за пределы взаимодействия WebRTC-to-WebRTC:
- Прием аудио и видео из внешних источников в WebRTC-сессии
- Транслируйте медиаданные WebRTC во внешние системы для обработки или хранения
- Интеграция с AI-сервисами для транскрибирования, перевода или генерации
- Связывание приложений WebRTC с устаревшими системами связи
Доступные адаптеры
WebSocket-адаптер (бета)
Передавайте аудио и видео между дорожками WebRTC и эндпойнтами WebSocket. Видео поддерживается только на исходящем направлении (egress) и преобразуется в JPEG. Функция сейчас находится в бета-версии, API может измениться.
Архитектура
Адаптеры передачи медиа выступают посредниками между сессиями Cloudflare Realtime SFU и внешними эндпойнтами:
graph LR
A[WebRTC Client] <--> B[Realtime SFU Session]
B <--> C[Media Transport Adapter]
C <--> D[External Endpoint]
Основные понятия
Экземпляр адаптера: Каждое соединение создаёт уникальный экземпляр с adapterId чтобы управлять его жизненным циклом.
Типы местоположений:
local(Ingest): принимает медиаданные от внешних эндпойнтов для создания новых WebRTC-трековremote(Stream): отправляет медиаданные из существующих WebRTC-треков на внешние эндпойнты
Поддержка кодеков: адаптеры преобразуют форматы между WebRTC и внешними системами.
Типичные варианты использования
Обработка ИИ
- Транскрипция речи в текст
- Генерация речи из текста
- Перевод в реальном времени
- Улучшение аудио
Запись медиа
- Облачная запись
- Сети доставки контента
- Конвейеры обработки медиа
Устаревшая интеграция
- Традиционная телефония
- Инфраструктура вещания
- Пользовательские медиасерверы
Обзор API
Адаптеры передачи медиа управляются через API Realtime SFU:
POST /v1/apps/{appId}/adapters/{adapterType}/new
POST /v1/apps/{appId}/adapters/{adapterType}/closeУ каждого типа адаптера свои требования к настройке и возможности. Подробные спецификации API см. в документации по соответствующему адаптеру.
Рекомендации
- Закрывайте экземпляры адаптера, когда они больше не нужны
- Реализуйте логику переподключения при сетевых сбоях
- Выбирайте кодеки исходя из требований к пропускной способности и качеству
- Защита эндпойнтов с помощью аутентификации для конфиденциальных медиаданных
Ограничения
- Каждый тип адаптера поддерживает определённые кодеки и форматы
- Задержка в сети между edge-сетью Cloudflare и внешними эндпойнтами влияет на производительность в реальном времени
- Максимальный размер сообщения и режимы потоковой передачи зависят от типа адаптера
Начало работы
WebSocket-адаптер (бета) - Передача аудио и видео между эндпойнтами WebRTC и WebSocket (вывод видео в формате JPEG)