Peer 2 одноранговые библиотеки для трансляции видео в реальном времени с использованием веб-сокета?

Прежде всего, это хорошая и успешная идея использовать одноранговый узел 2 для трансляции видео в реальном времени? Я знаю, что это сделает приложение масштабируемым и позволит большему количеству пользователей получать видео в реальном времени, не сильно влияя на сервер, но есть ли недостатки с точки зрения производительности и качества видео?

Теперь конкретный вопрос, я намерен поделиться видео в реальном времени, а затем использовать peer2peer на уровне веб-клиента с помощью веб-сокетов, есть ли какие-либо библиотеки, которые используются для этой цели?

Я знаю, что потоковая передача должна быть лучше с использованием UDP, но в следующем сообщении говорится, что даже использование веб-сокетов (TCP) со скоростью 30 кадров в секунду достаточно быстро (Потоковое видео через веб-узлы с использованием JavaScript)


person Mehdi Karamosly    schedule 27.08.2013    source источник


Ответы (2)


XSockets.NET предоставляет API WebRTC. Это предоставит вам JavaScript API для связи P2P. Вы можете легко провести видеочат с двумя или более участниками.

Если вы разработчик .NET, вы можете установить образец из nuget. Этот образец содержит пример мультивидеочата.

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

Сегодня WebRTC работает в Chrome и Firefox (а также в Chrome 29 на Android). Вы можете попробовать этот сайт в Chrome (не обновленном для Firefox или мобильных устройств) http://browsermeeting.com/

Пакет Nuget

person Uffe    schedule 28.08.2013
comment
Я не планирую использовать .NET, но, поскольку это javascript, я предполагаю, что во внешнем интерфейсе это то же самое. - person Mehdi Karamosly; 30.08.2013

Вы можете проверить IceLink (отказ от ответственности: я работаю @ FM), это поможет вам в этом.

Я фактически построил что-то подобное для нашего клиента, где каждый последующий клиент становится потенциальным «распределительным» узлом. Таким образом, X-клиенты подключаются к главному серверу, и оттуда другие клиенты могут подключаться к этим клиентам (при условии, что у них есть соответствующая пропускная способность / ЦП и т. Д.) Для ретранслируемой версии. Это своего рода концепция суперузла / сетки, и она работает достаточно хорошо.

person jvenema    schedule 02.10.2013
comment
это именно то, что мне нужно! Убедившись, что у клиентов есть соответствующие ресурсы: пропускная способность / процессор и т.д., спасибо, я посмотрю, когда вернусь домой, это решение с открытым исходным кодом? или платный? - person Mehdi Karamosly; 03.10.2013
comment
Это коммерческий продукт, но бесплатная версия для сообщества. - person jvenema; 03.10.2013
comment
Я посмотрю, но, поскольку я работаю над академическим проектом, я, вероятно, сам буду реализовывать свою логику, используя функции peerConnection, спасибо. Кстати я на самом деле отправляю не видео, а распечатываю скрины (полные и частичные) и позиции курсора .. - person Mehdi Karamosly; 03.10.2013