Подтвердить что ты не робот

Использовать node.js в качестве партнера WebRTC?

Какие существуют модули для использования node.js в качестве однорангового узла в WebRTC? Я бы хотел использовать WebRTC более гибко, чем P2P, для его явной способности отправлять пакеты неудовлетворительно. (AKA, я не хочу, чтобы огромная задержка TCP делала, гарантируя прибытие пакета с данными в порядке)

Если мне нужно использовать урезанную страницу браузера в качестве сервера, это, возможно, сработает... однако, это будет очень малооптимально. node.js сделает вещи более гладкими и, вероятно, более надежными.

Спасибо!

4b9b3361

Ответ 1

Посмотрите на компонент Erizo Licode (WebRTC MCU). Он имеет контроллер потока и контроллер webrtc, написанный на С++ с помощью интерфейса js. Это может помочь вам получить идею или две.

Ответ 2

Для WebRTC существует С++-интерфейс. WebRTC основан на проекте libjingle, но использует протокол JSEP (протокол создания сеанса Javascript) вместо XMPP для отправки информации STUN/TURN для туннелирования NAT. Эти два проекта находились в процессе объединения, когда я смотрел на это некоторое время назад, поэтому компиляция/увязка была PITA. Возможно, это было улучшено в прошлом году.

Цель состоит в том, чтобы открыть собственный API для WebRTC в качестве модуля node с node addon api и упаковать его как модуль npm, который работает как API-интерфейс в браузере. Кросс-браузер polyfill покажет вам, как он должен выглядеть.

Там много интересного, что вы могли бы сделать с этим (запись звонков, SIP-коннекторы, расширения .torrent в браузер и т.д.). Я действительно рекомендую вам попробовать это!

Ответ 3

Самый подходящий пакет, который я нашел, был http://js-platform.github.io/node-webrtc/ мне удалось создать его и немного поиграть с ним... разработчик очень полезен, я думаю, что это ваш лучший выбор прямо сейчас

Ответ 4

Решение состоит в использовании libjingle или licode/erizo. Оба они требуют компиляции, но erizo предоставляет интерфейс NodeJS. Libjingle был создан Google.

К сожалению, вам нужно скомпилировать каждую библиотеку, и для Debian, Ubuntu или других платформ нет двоичных пакетов.

Ответ 7

Я использовал Node js с сокет io и имел успех с ним

Есть много учебников онлайн