Страница 1 из 1

видеопоток с вебкамеры

Добавлено: 2010-03-23 16:54:55
Skit
Есть сервер с белым адресом и локалка к нему. На сервере крутится апач, сделан сайт. В локалке подключена вебкамера. Из локалки по http://172.18.0.201/video.cgi?resolution=640x480 вижу видеопоток.
Как передать его наружу? То есть, снаружи заходит человек на сайт. Там сцылко. Жмёт, смотрит видео.
Что посоветуете?

Re: видеопоток с вебкамеры

Добавлено: 2010-03-23 21:03:08
ProFTP

Re: видеопоток с вебкамеры

Добавлено: 2010-03-23 23:05:53
LMik
Зачем так сложно?

Пробросьте порт камеры наружу через нат.

Re: видеопоток с вебкамеры

Добавлено: 2010-03-24 9:37:37
Skit
LMik писал(а):
Зачем так сложно?

Пробросьте порт камеры наружу через нат.
Да, конечно... если бы так просто. Хоть в сетапе её и стоит на видео порт 8481, по http://172.18.0.201:8481 ничего не увидишь :(
Оно сцуко работает только с http://172.18.0.201/video.cgi?resolution=640x480
вот так :(
Может быть, бывают какие другие решения?
Да, извините призабыл. Девайс D-Link DCS-900.

Re: видеопоток с вебкамеры

Добавлено: 2010-03-24 9:40:19
LMik
Это 80 порт, пробросьте его.

Re: видеопоток с вебкамеры

Добавлено: 2010-03-24 10:56:15
Skit
LMik писал(а):Это 80 порт, пробросьте его.
На 80 порту сервер слушает.

Re: видеопоток с вебкамеры

Добавлено: 2010-03-24 11:01:29
terminus
Skit писал(а):
LMik писал(а):Это 80 порт, пробросьте его.
На 80 порту сервер слушает.

Код: Выделить всё

ipfw nat 1 config ip 1.2.3.4 same_ports deny_in redirect_port tcp 172.18.0.201:80 81
ipfw add nat 1 ip from any to any via ${ext_int}

Код: Выделить всё

<a href="http://1.2.3.4:81/video.cgi?resolution=640x480">цыкавое видео! жми сюда!!!</a>
:crazy:

Re: видеопоток с вебкамеры

Добавлено: 2010-03-24 15:38:47
ProFTP
LMik писал(а):
Зачем так сложно?

Пробросьте порт камеры наружу через нат.
лучше nat наверное, я имелл ввиду что можно вместо red5 использовать Kamaitachi :)
говорят что там иногда red5 не работает

Re: видеопоток с вебкамеры

Добавлено: 2010-03-26 8:35:42
termsl
а клиентам не критично, что смотреть - видео именно как его отдает камера, или к примеру картинку обновляющуюся раз в секунду?
В принципе клиенту и не важно знать, как ему это самое "видео" показывают.
В описании на камеру есть ссылка для получения одиночного изображения с нее?

Re: видеопоток с вебкамеры

Добавлено: 2010-03-30 6:47:33
Skit
termsl писал(а):а клиентам не критично, что смотреть - видео именно как его отдает камера, или к примеру картинку обновляющуюся раз в секунду?
В принципе клиенту и не важно знать, как ему это самое "видео" показывают.
В описании на камеру есть ссылка для получения одиночного изображения с нее?
Да картинку вообще без проблем можно выкладывать. В том и дело, хочется поток.

Re: видеопоток с вебкамеры

Добавлено: 2010-03-30 8:36:50
termsl
Тогда ничего не остается, как пробрасывать через нат.
А сейчас не работает скорее всего из-за того, что камера использует кроме порта для отдачи http страниц (80) еще какие-то для передачи именно потока, смотреть либо в документации, либо подключит камеру напрямую к компьютеру, запустить снифер сетевого трафика, и открыть в браузере видео с камеры.
Снифером посмотреть какие порты со стороны камеры задействованы и прокидывать их все вместе с 80-ым наружу - все будет работать.
К примеру на сайте dlink, для другой камеры, но смысл понятен:
http://www.dlink.ru/ru/faq/82/400.html
бла, бла, бла....
Для каждой камеры необходимо открыть на Интернет-шлюзе для доступа три порта. По умолчанию для камер DCS-3220 и DCS-3420 это следующие порты;
80(TCP) HTTP порт (открывает доступ к WEB-интерфейсу);
5002(TCP&UDP) порт аудиопотока (транслирует синхронизированный аудиопоток);
5003(TCP&UDP) порт видеопотока (транслирует синхронизированный видеопоток).

Если посмотреть на эмулятор вашей камеры :
http://support.dlink.com/emulators/dcs900w/
то на вкладке setup->system->advanced есть пункт "Open Second Port" с припиской -
1 : Web Server - Default 80
2 : Transfer Image - Default 8481
Получается, что DCS900 по умолчанию использует порты 80, 8481.


Про размещение виде на сайте:
http://www.dlink.ru/ru/faq/82/391.html

Код: Выделить всё

Для DCS-900
<BODY bgcolor=c6cbcf topmargin=0 text=white onload="Init()">
<form action="/Jview.htm" method="POST">
<table width=0 border=0 cellpadding=0 cellspacing=0>
  <tr>
   <td colspan=2 align=center bgcolor=c6cbcf>
    <APPLET name="cvcs" CODEBASE="http://xxx.xxx.xxx.xxx.yy/" CODE="xplug.class" WIDTH=320 HEIGHT=240>
     <param name="RemotePort" value=yy>
     <param name="Timeout" value=5000>
     <param name="RotateAngle" value=0>
     <param name="PreviewFrameRate" value=2>
     <param name="DeviceSerialNo" value="">
    </APPLET>
   </td>
  </tr>
</table>
</form>
</BODY>

Второй вариант для DCS-900
<SCRIPT LANGUAGE="JavaScript">
function Init() {
   cvcs.RemoteHost = "xxx.xxx.xxx.xxx"
   cvcs.RemoteWeb = yy
   cvcs.Timeout = 5
   cvcs.AuthType = 1
   cvcs.PreviewFrameRate = 1
   cvcs.PreviewWidth = 320
   cvcs.PreviewHeight = 240
   cvcs.DeviceSerialNo = ""
   window.setInterval("ShowFrameRate()", 1000)
}
function ShowFrameRate() {
   if (1)
   {
    var fFrameRate = cvcs.FrameRate
    window.status = "Frame:" + fFrameRate.toString() + " fps"
   }
   cvcs.Play()
   cvcs.GetRealTimeData()
   CurrentTime.innerHTML = cvcs.TimeString
}
</SCRIPT>

<BODY bgcolor=c6cbcf topmargin=0 text=white onload="Init()" onunload="cvcs.Stop()">
<table width=740 border=0 cellpadding=0 cellspacing=0>
   <tr>
    <td colspan=2 align=center bgcolor=c6cbcf>
     <OBJECT ID="cvcs" WIDTH=320 HEIGHT=240
     CLASSID="CLSID:31150A86-0BBA-409f-BEB4-F3922D10BF34"
     CODEBASE="http://xxx.xxx.xxx.xxx:yy/xplug.ocx#version=2,0,0,0">
    </OBJECT>
   </td>
  </tr>
  </TABLE>
 <!-- Add Form End -->
 </td>
</tr>
</table>
</BODY>
где xxx.xxx.xxx.xxx - внешний ip вашей камеры
yy - её HTTP порт

Если изображение не передаётся, то:

1. Нужно убедиться, то порт yy TCP открыт для доступа извне и изнутри.
2. Убедиться что CLASSID в коде сайта совпадает с CLASSID вашей камеры (для этого нужно открыть Web-интерфейс Вашей камеры и посмотреть его HTML-код
3. Убедитесь что CODEBASE version так же совпадает с CODEBASE version вашей камеры

Так же нужно учесть, что:

1. система будет работать только в том случае, если не установлен пароль администратора
2. в случае с DCS-5000W через окно вывода видео будет доступен контроль над камерой (можно будет поворачивать используя мышь)
3. ЭТО НЕДОКУМЕНТИРОВАННАЯ ФУНКЦИЯ