Представляем альфа релиз Kinnex Element — платформы для организации аудио и видео конференций на WebRTC.
WebRTC набирает обороты. Все ближе и ближе официальный релиз, который позволит использовать обычный браузер в качестве клиента для IP-телефонии и видео звонков. Станет ли он заменой существующим технологиям сказать сложно, но однозначно наличие доступного бесплатного и стандартизованного VoIP клиента изменит многое.
В исходном состоянии WebRTC реализует только самый простой сценарий p2p-связи. Но не за горами появление новых решений для корпоративных коммуникаций и IP-телефонии, ощутимо смещенных в сторону веб разработок.
Одним из важнейших сервисов будет возможность проведения видеоконференций. Распространенность смартфонов и планшетов, высокая доступность сети Интернет, мобильность и географическая распределенность современного бизнеса будут только способствовать и порождать острую необходимость в подобных решениях.
На базе собственного движка Kinnex VoIP Engine мы создали платформу Kinnex Element для сборки аудио и видео потоков в управляемые конференции с учётом многих требований корпоративной среды и сейчас оптимизируем ее под технологические условия WebRTC.
К моменту релиза будут поддерживаться Windows и Linux и все кодеки, заявленные в WebRTC. На сегодня это VP8 для видео и iSAC, iLBC, Opus для звука. Есть вероятность, что может появиться и H.264. Основная работа сейчас – это интеграция новых кодеков. Бизнес логика уже реализована и отлажена.
Емкость конференций
В общем случае конференция – это X входящих потоков и Y исходящих. Зависимость между величинами X и Y нелинейная. Необходимо учитывать нагрузку при пережатии и микшировании. При оценке реальной емкости можно говорить только об экспериментальных данных каких-то конкретных конфигураций конференций на сервере с заданной производительностью.
Для наиболее востребованных сценариев на тестовом стенде с 64-bit процессором на 8 ядер и частотой 2.26 GHz и 8 Gb оперативной памяти получены следующие результаты.
Вещание
Для конференции с одним входящим потоком от видеокамеры, кол-во исходящих потоков может достигать 200-250 в зависимости от пропускной способности сети.
Вещание с обратной связью
В конференции один входящий поток от главной видеокамеры, который видят все участники, и от каждого участника по одному входящему потоку от его видеокамеры, которые видит только ведущий. Потоки не микшируются. Количество потоков, которые сможет наблюдать одновременно ведущий, будет лимитироваться производительностью его компьютера и пропускной способностью сети. Например, если ведущий наблюдает за любыми 24 потоками от участников, то кол-во участников в такой конференции способно достигать 150-200 человек. С включением микширования входящих потоков требования к производительности компьютера у ведущего значительно снизятся, а количество отображаемых потоков от участников возрастет.
Выступление или совещание группы
В конференции несколько входящих потоков от видеокамер. Клиенты могут смотреть либо все входящие потоки, либо только часть из них. Если каждый участник конференции видит всех остальных, то суммарно их может быть 16 максимум с качеством картинки Full HD. Если каждый участник видит не все потоки, например, а только один (Voice Activated) или качество видеопотоков уменьшается, то суммарное кол-во участников и входящих потоков от видео камер будет увеличиваться.
При расширении конференции автоматически производится расчет наличия доступных ресурсов сервера. Подключение нового активного участника будет возможно только при наличии их необходимого количества для обслуживания всей конференции. Фактически это защита сервера от DoS.
Интеграция
Интерфейс управления пользователями и конференциями, биллинг (если таковой предусмотрен) будут реализовываться разработчиками на веб сервере. Для взаимодействия с платформой Kinnex Element доступен набор всех необходимых API.
Клиент в технологии WebRTC – это браузер. Мы предоставляем шаблоны участника и управляющего конференцией, в том числе и рабочее место оператора для селекторных совещаний. На усмотрение разработчиков эта часть может быть кастомизирована или реализована самостоятельно.
Релиз WebRTC стимулирует активное развитие решений, которые составят конкуренцию существующим лидерам на рынке корпоративных коммуникаций, и откроет для веб разработчиков новые широкие возможности. Начать реализацию одного из самых ожидаемых решений вы можете уже сейчас на основе платформы Kinnex Element.
Сайт продукта http://element.kinnex.ru/
Автор: olegbaturin