Как написать клиент-сервер потокового видео - PullRequest
3 голосов
/ 05 февраля 2012

Я работаю над проектом, который будет работать в режиме реального времени: мне нужно написать приложение клиент-сервер для потоковой передачи видео, этот сервер будет отправлять AVI / MPEG и т. Д. В веб-приложение. У меня есть несколько вопросов:

  1. Какой протокол рекомендует сделать это, http? РТП? или другой?

  2. Как в веб-приложении показать его пользователю? с помощью флеш-плеера, Java-апплета (я не уверен, если это возможно с ним) или HTML5, какой лучший способ сделать это в настоящее время?

Надеюсь, это чисто для вас. Любая помощь очень ценится. Заранее спасибо. :)

1 Ответ

5 голосов
/ 05 февраля 2012

Есть несколько различных способов реализовать это (некоторые требуют программирования, а другие нет).Какой из них вы выберете, зависит от ваших требований.

Red5 - очевидное решение, которое позволит вам сосредоточиться только на веб-стороне, пока выбранный вами проигрыватель flash.

FlourineFx предоставляет аналогичную среду для .NET с небольшими усилиями.

Я также сделал это с IIS и пользовательским сервером, использующим HttpListener с большим успехомесли вы настроены на чисто Windows / C # решение.Предостережение, которое я добавил бы здесь, состоит в том, что это не всегда просто.В среде с ограниченной пропускной способностью у вас будут проблемы, поскольку HTTP не имеет временных поправок, которые есть у RTP / RTMP / RTSP, но в приличной сети это работает 39 раз (хотя я тестировал только с одним игроком, хотя).

ОБНОВЛЕНИЕ

Если вы говорите о прямой потоковой передаче с .NET, я бы посоветовал изучить API DirectShow (или связанные с ним DirectX) API.Для него доступна оболочка для .NET под названием DirectShow.NET .

...