Прямая трансляция веб-камер
Создание веб-сайта, на котором участники могут транслировать свои веб-камеры на мой сервер, чтобы другие участники могли просматривать прямые трансляции, которые в данный момент транслируются.
Вроде как: http://chatroulette.com/
Как взять веб-камеру участника, передать канал на сервер, а затем разрешить другим пользователям просматривать каналы в режиме реального времени?
Этот веб-сайт написан на PHP с базой данных MySQL, но я готов добавить Javascript, jQuery, Flash или все, что нужно для этой работы.
Я знаю, что это широко, но действительно нужно некоторое руководство здесь!
2 ответа
Вам предстоит решить 3 три проблемы.
Потоковая веб-камера вашего члена на ваш сервер. Я хотел бы начать с RTSP/RTP в качестве протокола и сделать H.264/AAC для сжатия AV-потоков. Вам нужно программное обеспечение, которое сжимает выходные данные веб-камеры - начните с ffmpeg (соберите его с включенным x264 и libfaac) и live555 ( http://www.live555.com/liveMedia/) для сервера RTSP/RTP. Вы также можете попробовать использовать libVLC, который даст вам поток RTSP/RTP с компрессией. Для создания прототипа вы можете использовать проигрыватель VLC и сделать так, чтобы он транслировал веб-камеру для вас: http://geraldnaveen.blogspot.com/2009/04/streaming-webcam-using-vlc.html
Ваш сервер должен получать потоки RTSP/RTP. Я бы снова использовал live555, но теперь вы должны получать RTP - следовательно, вы должны использовать RTSP-клиент. Вы можете создать прототип с http://www.live555.com/openRTSP/ и testRTSPClient - хорошая отправная точка.
Теперь ваш сервер должен перенаправлять различные веб-камеры в формате, понятном браузерам - в идеале без плагинов или флеш-памяти. Я бы попробовал потоковую передачу по HTTP. Проверьте http://www.longtailvideo.com/html5/hls/. В конечном итоге ваш сервер должен "преобразовать" входящие потоки в MP4 или HLS и может быть перекодирован в WeM для Chrome.