Можно ли реализовать MCU с SimpleWebRTC и сигнальным мастером? Как?
У меня есть одноранговое приложение для видеоконференций, использующее simpleWebRTC и signalmaster для передачи сигналов. Когда более 4 пользователей подключают напряжение, которое это вызывает, к сети, а сервер TURN слишком велик, поэтому я подумал, возможно ли реализовать MCU в этом случае? Что для этого нужно?
1 ответ
Для более чем 4 участников полная сетка (связывающая каждого участника со всеми остальными одноранговыми) нецелесообразна. Если есть n
участников, то каждый из них должен иметь n - 1
исходящий и n - 1
входящие видеопотоки, которые быстро насыщают пропускную способность, особенно на мобильных устройствах.
SFU, например Janus, пересылает пакеты между участниками вызова. Преимущество SFU для групповых вызовов заключается в том, что каждому участнику необходимо передать свой видеопоток только один раз - в SFU, который затем передает его всем остальным. Еще есть n - 1
входящие потоки для каждого участника, хотя.
MCU способен объединять несколько видеопотоков в один, поэтому каждый участник получает 1
исходящий видео поток и 1
входящий композитный видеопоток. Чтобы создать композитный видеопоток из n - 1
В отдельных случаях MCU необходимо перекодировать видео в реальном времени, что превращает его в процессор.
Я бы предложил сначала попробовать Janus (SFU) и посмотреть, как это работает для вас.