Jaką umieścić obraz z kamery na stronie WWW?
Najprościej umieścić strumień z kamery IP na stronie WWW z wykorzystaniem protokołu RTSP i usługi dostępnej na stronie www.airmax.pl. Dzięki takiemu rozwiązaniu uzyskamy:
- brak potrzeby instalowania dodatkowych programów dla obsługi kamery na PC,
- tylko jeden strumień danych z kamery dla wielu oglądających,
- brak transmisji, gdy nikt nie ogląda obrazu z kamery,
- nie ma potrzeby instalowania dodatkowych pluginów u klientów,
- nie ma potrzeby instalowania videoplayera na stronie WWW,
- serwer mediów w Polsce, m.in. w PLIX
- prosty kod HTML do wpisania na stronę WWW i gotowe!
Co dokładnie oznaczają poszczególne puntky?
Czasami w rozwiązaniach amatorskich, do przekazywania obrazu z kamery używa się oprogramowania dla komputera PC, które pobiera obraz z podłączonej do komputera kamery, i przekazuje dalej na stronę WWW lub serwer FTP w postaci pojedynczych obrazków co jakiś czas. Rozwiązanie to ma kilka wad: przede wszystkim, potrzebny jest komputer, na którym takie oprogramowanie będzie działało. Po drugie przesyłane nawet co sekundę obrazki, to nie jest żywy obraz (aby taki uzyskać, musimy prezentować ok. 25 klatek na sekundę).
Wiele kamer oferuje 'podgląd' obrazu, za pomocą własnego serwera WWW, który pracuje na kamerze i w większości przy pomocy przeglądarki Internet Explorer i appletu ActiveX umożliwia podgląd obrazu. Taki obraz ciężko umieścić w wybranym przez siebie miejscu na stronie WWW. Stwarza to dodatkowy problem, ponieważ każdy dodatkowy użytkownik, który chciałby oglądać obraz z kamery generuje na łączu ruch pakietów, co w naturalny sposób ogranicza liczbę oglądających do uploadu łącza.
W rozwiązaniu www.airmax.pl zastosowano serwer mediów, który pobiera tylko jeden strumień z kamery IP, i wysyła go do dowolnej liczby oglądających obraz z kamery na stronie WWW użytkowników.
Co więcej, jeśli żadna przeglądarka nie wyświetla w danym momencie obrazu z kamery, żadne dane z kamery nie są przesyłane! To prawdziwa oszczędność łącza, szczególnie ważna gdy łącze z którego korzystamy obciążone jest limitami przesyłanych danych.
Jak wspomniano powyżej, wiele rozwiązań pozwalających umieszczać obraz z kamery na stronie WWW opiera się o instalację na komputerze klienta dodatkowego oprogramowania w postaci appletów ActiveX, pluginów (wtyczek) oprogramowania typu VLC, lub innych. W rozwiązaniu stosowanym przez AirMAX nie ma takiej potrzeby! Obraz z kamery dostępny jest po prostu w każdej przeglądarce poprzez HTML (HTML5) lub powszechne oprogramowanie Flash.
Serwer mediów AirMAX obsługujący kamery posiada bezpośrednie połączenie z największym polskim węzłem wymiany internetowej PLIX, oraz bezpośrednie światłowodowe połączenia z operatorami Tier1, czyli największymi operatorami internetowymi (międzynarodowymi).
To gwarantuje niezakłócony przekaz video i audio w kraju i na cały świat.
Aby uruchomić usługę, wystarczy podać adres strumienia RTSP swojej kamery IP. Kamera może generować kilka rodzajów strumieni w różnej jakości, dla przykładu kamery Ubiquiti AirCAM umożliwiają korzystanie z dwóch strumieni o jakości 1280x720px i 640x480px:
- 1280x720: rtsp://192.168.1.1:554/live/ch00_0
- 640x480: rtsp://192.168.1.1:554/live/ch01_0
Wiele kamer, np. CCDCAM oferuje możliwośc skonfigurowania strumienia głównego oraz pomocnicznego, to znaczy użytkownik może samodzielnie przypisać rozdzielczość, liczbę klatek na sekundę oraz inne parametry obrazu strumieniom:
- Strumien główny: rtsp://192.168.1.1:554/mpeg4
- Strumień pomocniczny: rtsp://192.168.1.1:554/mpeg4cif
Jeśli chcemy zabezpieczyć strumień loginem oraz hasłem, URL dla strumienia RTSP będzie wyglądał następująco:
- rtsp://login:hasło@192.168.1.1:554/
Poniżej przedstawiamy ścieżki (URL) dla strumieni RTSP dla najpopularniejszych kamer IP:
Producent |
Modele |
ścieżka RTSP |
Axis |
Modele po 2008 |
/mpeg4/media.amp /axis-media/media.amp |
ACTi | | / |
Vivotek | | /live.sdp |
Vivotek 71xx | | /live.sdp |
Rovio | | /webcam |
Sony 4th Revision | | /media/video1 |
Brickcom | | /channel1 |
Aviosys | | /mpeg4 |
Linksys | | /img/video.sav |
D-Link | | /play1.sdp |
TRENDnet-V1 | | /mpeg4?tcp |
TRENDnet-V2 | | /play1.sdp |
LevelOne | | /live.sdp |
LevelOne FCS-1091 / WCS-1090 | | /img/media.sdp |
Airlive | | /video.mp4 |
Panasonic | | /MediaInput/mpeg4 |
IQEye | | /now.mp4 |
Samsung | | /mpeg4unicast |
Y-Cam | | /live_mpeg4.sdp |
Edimax | |
/ipcam.sdp /ipcam_h264.sdp |
Airlink101 | | /mpeg4 |
Gadspot | | /mpeg4 |
Zavio | | /video.mp4 |
Canon | |
/ lub /profile1=r |
Basler | | /mpeg4 or /h264 |
Bluejay | | /mpeg4 |
Bosch | |
/video lub /rtsp_tunnel |
CBC / Ganz | | /gnz_media/main |
Cisco | | /img/media.sav |
CNB | | /mpeg4 |
Etrovision | | /rtpvideo1.sdp |
Everfocus | | /streaming/channels/0 |
FLIR Systems |
serie D- / F- / PT- | /ch0 |
FLIR Systems | PTZ-35x140 | /vis |
Pelco | Sarix | / |
Planet | |
/ipcam.sdp /ipcam_h264.sdp /media/media.amp |
Ubiquity AirVision | All |
/live/ch00_0 /live/ch01_0 |
Honeywell |
HCD5MIH | /mjpeg |
Logitech | Alert | /HighResolutionVideo |
Samsung | SNB-7000 | //media.smp
/profile/media.smp
|
InterNEC |
i7-C81413-IR |
/onvif_camera/metadata |
InterNEC |
i7-P, i7-C |
/h264/ch1/main/av_stream
/h264/ch1/sub/av_stream |
CCDAM |
|
/mpeg4 /mpeg4cif |
CCDAM |
2120W |
/11
/12 |
BCS |
IPC-HF3200 |
/cam/realmonitor?channel=1&subtype=0 /cam/realmonitor?channel=1&subtype=1 |
GeoVision |
|
/CH001.sdp |
Sunell |
|
/snl/live/1/1/Ux/sido=-Ux/sido= |
EZVIS |
|
rtsp://IP ADDRESS:port/live/main
rtsp://IP ADDRESS:port/live/sub
rtsp://IP ADDRESS:port/live/jpeg
snapshot: http://IP ADDRESS: port/action/snap?cam=0 |
Za pomocą dostarczonego strumienia RTMP z serwera multimedialnego możemy odtworzyć wideo oraz audio z kamery IP za pomocą wielu popularnych webplayerów.
Przykład 1: JWPlayer
<object> <embed src='http://IP_SERWERA/jwplayer/player59.swf' type='application/x-shockwave-flash' width='640' height='360' wmode='transparent' allowfullscreen='true' flashvars='streamer=rtmp://IP_SERWERA/rtmp/&type=rtmp&file=test&provider=rtmp' /> </embed> </object>
Pogrubione fragmenty kodu zmieniamy wg indywidualnych parametrów uzyskanych od AirMAX.
Przykład 2: FlowPlayer
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<!-- A minimal Flowplayer setup to get you started -->
<!-- include flowplayer JavaScript file that does Flash embedding and provides the Flowplayer API. -->
<script type="text/javascript" src="flowplayer-3.2.12.min.js"></script>
<!-- some minimal styling, can be removed -->
<link rel="stylesheet" type="text/css" href="style.css">
<!-- page title -->
<title>Minimal Flowplayer setup</title>
</head>
<body>
<div id="page">
<div id='videocam' style='width:800px; height:440px;margin:0;text-align:center'> </div> </div>
<script>
$f("videocam" , "flowplayer-3.2.16.swf", { clip: { url: 'test', provider: 'hddn' }, plugins: { hddn: { url: "flowplayer.rtmp-3.2.12.swf", netConnectionUrl: 'rtmp://IP_SERWERA/live/TEST' } }, canvas: { backgroundGradient: 'none' } });
</script>
</body>
</html>
Pogrubione fragmenty kodu zmieniamy wg indywidualnych parametrów uzyskanych od AirMAX.
|