Потоковое видео от одного клиента другому клиенту через сервер - PullRequest
2 голосов
/ 01 апреля 2012

Я пытаюсь отправить видеопоток с одного ноутбука на другой и направить его через сервер. Позволяет им называть ноутбук A, отправляя видеопоток на ноутбук B.

На ноутбуке А у меня нет особых требований к тому, как я собираю видеопоток, но я думал, что будет какой-то сервер NodeJS, который откроет веб-сокет серверу для отправки видеопотока.

На ноутбуке B я хотел бы отобразить видео внутри браузера в виде тега html5.

Есть ли у кого-нибудь предложения о том, как это можно сделать технически?

Пробелы, которые я не совсем понимаю: * Как отправить поток с ноутбука A на сервер (на котором также может работать NodeJS) * Как обеспечить видеопоток, который можно подключить к видео тегу на ноутбуке B

Спасибо!

1 Ответ

0 голосов
/ 01 апреля 2012

Попытка сделать это с помощью javscript / html5 действительно выберет неправильную технологию. Вы должны взглянуть на Flash (и RTMP) на стороне клиента и использовать любые бесплатные (с открытым исходным кодом) альтернативы Flash Media Server. (Для доступа к данным веб-камеры у вас должен быть подключаемый модуль, например Flash или Silverlight - ваш веб-браузер / javascript не может получить доступ к веб-камере.)

node-rtmp - это сервер протокола RTMP, написанный на Node.JS, который может вас заинтересовать. Я сам не тестировал node-rtmp, но он может стать для вас отправной точкой. Если он вам не подходит, существует несколько других проектов RTMP-серверов. (Я много использовал Red5, который находится в Java.)

На компьютере A вам потребуется приложение Flash, которое получает данные с веб-камеры и отправляет их на сервер RTMP. Есть проекты с открытым исходным кодом, которые уже делают это, например: https://github.com/AF83/webcam-streaming Существует также пример кода таких flash-приложений, включенных в Red5 и, возможно, также в других проектах сервера RTMP.

Вы не можете использовать видео тег HTML для отображения потока RTMP на компьютере B. Если это RTMP, то вам придется использовать Flash Player. Может быть возможно преобразовать данные RTMP во что-то другое, чтобы сделать возможным показ с помощью HTML-тега видео. (Возможно) было бы возможно сделать с комбинацией программ с открытым исходным кодом, таких как Red5, rtmpdump, ffmpeg и некоторый http-хакерство, чтобы заставить его перейти через http. Тем не менее, я бы действительно подумал, стоит ли это делать и хлопотно делать это просто из-за того, что не запускается приложение Flash ...

На компьютере B я использовал бы jwplayer (или любой из клонов jwplayer) для воспроизведения потока RTMP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...