Веб-камера потокового однорангового - PullRequest
3 голосов
/ 27 января 2010

Мне было интересно, можно ли создать клиента (или веб-клиента), который может соединить двух пользователей, а затем он отправит поток их веб-камеры друг другу. Это должно происходить без использования Red5 или любого другого флэш / медиа-сервера. Какой протокол я могу использовать? Какие API и т. Д. ...

Ответы [ 4 ]

2 голосов
/ 27 января 2010

Как очень простой метод, посмотрите учебники UDP:

http://msdn.microsoft.com/en-us/library/system.net.sockets.udpclient.aspx

Если UDP окажется слишком ненадежным (это не гарантирует, что данные будут доставлены туда, где они отправлены), вы также можете попробовать TCP-соединения.

Однако, одна из самых больших проблем, с которыми вы столкнетесь, - это попытка пройти через NAT. Большинство брандмауэров блокируют входящие данные, если сначала не установлено установленное соединение. Вы можете использовать UPnP, чтобы обойти это, но, вероятно, потребуется немного кода:

http://www.codeproject.com/KB/IP/upnpnattraversal.aspx

Надеюсь, это поможет. С UDP вы просматриваете примерно 10 строк кода для отправки и получения данных, с TCP - немного больше, но более надежно. Google оба из них для получения дополнительной информации.

Оттуда это довольно просто. Вы получаете данные с веб-камеры. Сохраните его в MemoryStream (System.IO) в формате .jpg. Затем отправьте эти данные через TCP или UDP.

1 голос
/ 16 декабря 2010

Adobe Stratus позволит вам сделать это.

1 голос
/ 27 января 2010

У меня есть одна вещь, которую нужно добавить, чтобы два клиента, оба находящиеся за соответствующими брандмауэрами, могли общаться друг с другом по протоколу UDP, вам нужно выполнить обход NAT. Так работает скайп.

СТУН Артикул

1 голос
/ 27 января 2010

Скорее всего, вы захотите использовать TCP или UDP напрямую и отправлять / получать необработанные байты. Любые протоколы более высокого уровня будут просто ненужными накладными расходами

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