26.3.2024

Video z IP Kamery v schéme D2000, je to možné?

V tomto blogu sa budeme venovať zaujímavej téme zobrazenia videa z IP Kamery v D2000. Táto otázka sa z času na čas objaví u našich klientov, a preto si zaslúži viac pozornosti. Zobrazovanie realtime videa v schéme so sebou prináša veľa zaujímavých možností ako napríklad kombináciu súčasného zobrazenia vizuálneho stavu a meraných hodnôt kontrolovaného procesu.

 

Zobrazenie videa napríklad s 30 sekundovým posunom, hoci aj v lepšej kvalite, môže byť z tohto pohľadu už neakceptovateľné. Z tohto dôvodu môžeme požiadavku na „realtime“ alebo „low latency“ zobrazovanie videa považovať za zásadnú. Okrem toho sú pre naše riešenie zaujímavé aj ďalšie vlastnosti ako napríklad:

  1. možnosť nahrávať video pre daný časový interval
  2. ovládanie kamery pan/tilt/zoom priamo zo schémy
  3. možnosť renderovať vlastný obsah nad videom, napr. hodnoty z D2000
  4. zobraziť video aj vo webových nadstavbách Tenkého Klienta a Smart Webu
  5. možnosť pracovať s obrazom (napr. identifikovanie pohybu na kamere)

Minikurz technológií pre IP Kamery

 

Skôr ako si predstavíme navrhované riešenie, uveďme si niektoré dôležité technológie v oblasti IP kamier. Veľká väčšina IP kamier publikuje video (resp. aj audio) cez kombináciu protokolov RTSP+RTP+RTCP. RTSP (Real Time Streaming Protocol) môžeme prirovnať k diaľkovému ovládaču od TV alebo video rekordéra – umožňuje identifikáciu a výber kanálov, ktoré súk dispozícii. Samotné streamovanie videa je realizované cez protokol RTP (Real-time Transport Protocol), ktorý môže byť dynamicky konfigurovaný za behu pomocou posledného protokolu RTCP (Real Time Control Protocol), napríklad pri požadovaní nižšej kvality videa kvôli nedostatočnej prenosovej rýchlosti.

 

Keďže streamovanie videa si vyžaduje značné hardwarové prostriedky, neodporúča sa, aby klientske aplikácie prehrávali video stream priamo z IP kamier, ktoré na to nie sú stavané. Ideálne je mať medzi klientmi a IP kamerami systém, ktorý plní funkciu spracovania a distribuovania videa aj cez iné protokoly – dostupnejšie pre koncového klienta napríklad v prehliadači. V konkrétnom prípade to môže byť hardwarové zariadenie NVR (Network Video Recorder), prípadne softvér označovaný ako „media gateway“, alebo „video surveillance system“. Špeciálne video surveillance systémy sú dedikované na prácu IP kamerami podporou tzv. štandardizovaného ONVIF protokolu, ktorý umožňuje dodatočnú kontrolu IP Kamery ako je napríklad funkcionalita PTZ (Pan/Tilt/Zoom) alebo konfigurácia nahrávania videa na vstavanú SD kartu.

 

Odporúčané riešenie

 

Napriek tomu, že žiadny zo spomínaných protokolov nie je natívne podporený v D2000, flexibilita našej platformy poskytuje viacero možností ako sa dá integrovať video z IP kamier do schémy. V GR editore sú to napríklad komponenty HTML5 Frame, WebFrame alebo ActiveX. Použitie týchto komponentov súvisí s vybraným systémom na spracovanie videa a použitou technológiou. Samozrejme každá z nich má svoje výhody ale aj nevýhody.

 

Po spracovaní analýzy týchto systémov sa nám ako najvhodnejšie riešenie zdá použitie ZoneMinder open-source surveillance systému nielen na dekódovanie videa pre schému, ale aj pre ďalšie funkcionality súvisiace s nahrávaním videa a správou IP kamier. ZoneMinder možno považovať za overené riešenie v rôznych podmienkach nasadenia. Výhodou je jeho prehľadné užívateľské rozhranie pre jednoduchú konfiguráciu a ovládanie IP kamier, dokonca s dynamickou identifikáciou typu kamery a jej možností (napr. podpory ONVIF protokolu). Spolu s komplexnou konfiguráciou zabezpečenia, oprávnení používateľov, plánovania nahrávania videa a detekcie pohybu sa jedná o najlepšie riešenie z pohľadu celkových nákladov na riešenie. Jednou z najväčších výhod je jednoduchá integrácia streamovania videa do externých aplikácii ako je napr. schéma v D2000. Video sa streamuje cez tzv. Motion JPEG (MJPEG) technológiu, čo v pre nás znamená použitie HTML5 Frame komponentu v grafickom editore s jednoduchým HTML kódom stránky obsahujúcim iba element IMG s URL adresou identifikujúcou kameru v systéme ZoneMinder. Prehrávanie live videa alebo záznamu do schémy už zabezpečí prehliadač integrovaný v D2000 komponente HTML5 Frame.

Schéma zobrazená v HI obsahujúca HTML5 Frame komponentu s MJPEG videom IP Kamery

Ďalšou nespornou výhodou tohto riešenia je jeho kompatibilita aj s webovými modulmi D2000 – Tenký Klient a Smart Web. Špeciálne v Smart Webe môžeme pred video-obraz vykresľovať napríklad hodnoty z D2000, toto je samozrejme možne realizovať aj špeciálnym kódom v rámci HTML5 Frame komponenty.

HTML5 Frame komponent v tomto prípade zobrazuje Smart Webovú stránku s videom. V ľavom spodnom rohu sú nad videom renderované analógové hodiny s časom z D2000 (objekty Hour, Min, Sec).

Iné riešenia

K dispozícii sú aj iné, alternatívne riešenia zobrazenia videa v schéme, pokiaľ by systém ZoneMinder na to nebol vhodný. Dôvodom môže byť napríklad použitý formát MJPEG – konkrétne nemožnosť streamovať zvuku zaznamenávaný IP kamerami, prípadne nízka kompresia videa v porovnaní s natívnymi video formátmi.

Alternatívou je v tomto prípade použiť namiesto ZoneMindera systém Kurento Media Gateway. Tento media server nemá funkcie pre ovládanie kamery, pretože je výhradne orientovaný na spracovanie videa a jeho distribúciu pomocou WebRTC štandardu. WebRTC protokol je implementovaný vo všetkých rozšírených prehliadačoch, a preto z pohľadu D2000 schémy znova použijeme komponent HTML5 Frame. WebRTC je peer-to-peer realtime streaming protokol, ktorý môžeme považovať za klon už spomínaných protokolov RTSP+RTP+RTCP upravený pre podmienky webových aplikácií.

Inou možnosťou je použitie ActiveX komponentu voľne dostupného prehrávača VideoLAN. Tento komponent je možné vložiť do schémy a naprogramovať cez ESL, aby prehrával video stream priamo z IP kamery alebo iného systému, ktorý vie restreamovať video pre koncové zariadenia.

Niektoré IP kamery a NVR systémy sú aj v dnešnej dobe mnohokrát dodávané aj so špeciálnym pluginom do Internet Explorera pre prehrávanie videa priamo v prehliadači. Prípadne sa na to využíva Flash technológia, v ktorej je video streamované cez špeciálny protokol RTMP. Napriek tomu, že sa jedná o staršie technológie, niekedy môže byť aj táto možnosť akceptovateľná. V D2000 máme možnosť využiť tieto technológie prostredníctvom staršieho komponentu WebFrame, ktorý využíva na renderovanie práve Internet Explorer.

Pre úplnosť treba dodať, že niektoré systémy, či už typu NVR, media gateway alebo surveillance systém, využívajú na streamovanie videa štandardy HLS (HTTP Live Streaming) a MPEG-DASH vyvinuté spoločnosťami Apple a Google. Tieto protokoly však nie sú vhodné pre naše účely kvôli vysokej latencii (rádovo minúty), ktorá vyplýva z ich technickej architektúry.

Iné blogy