Zoneminder kasutamine operatsioonisüsteemiga Debian: erinevus redaktsioonide vahel
Resümee puudub Märgis: Tühistatud |
Resümee puudub Märgis: Käsitsi tühistamine |
||
| 177. rida: | 177. rida: | ||
Tulemusena avaneb brauseris aadressil http://zm.imool/zm/ sarnane pilt, kuhu hakatakse Seadistamine punktis monitore lisama jms |
Tulemusena avaneb brauseris aadressil http://zm.imool/zm/ sarnane pilt, kuhu hakatakse Seadistamine punktis monitore lisama jms |
||
| − | [[Pilt:Zm-4. |
+ | [[Pilt:Zm-4.gif]] |
Tundub, et 2015 aasta kevadel tuleb lisaks haldusliideses näidata PATH_ZMS vääruseks (muidu ei tööta monitori reaalajas jälgimine) valides veebiliideses |
Tundub, et 2015 aasta kevadel tuleb lisaks haldusliideses näidata PATH_ZMS vääruseks (muidu ei tööta monitori reaalajas jälgimine) valides veebiliideses |
||
Viimane redaktsioon: 22. märts 2026, kell 08:57
Sissejuhatus
ZoneMinder http://www.zoneminder.com/ on Linux operatsioonisüsteemiga kasutamiseks mõeldud videovalve tarkvara, mis põhineb V4L, PHP, Perl, MySQL ja Apache kasutamisel.
Tööpõhimõte
Zoneminder valvesüsteemi komponentide võrguskeem
brauser
_____
| |
|_____|
|
|
--|------|--------------|-------------------|----------------|------
| | | |
__|__ __|__ __|__ __|__
| | | | | | | |
|_____| |_____| |_____| |_____|
Zoneminder VLC, mjpg-streamer IP kaamera 1 IP kaamera 2
server kaks UVC webcam
MySQL baas /dev/video0
/dev/video0 /dev/video1
/var/cache/zobeminder
kus
- /dev/video0, /dev/video1 - otse arvuti külge ühendatud UVC veebikaamerale vastava seadme nimi (tavaliselt USB pordis)
- Zoneminder server - MySQL andmebaas, Perl keeles kirjutatud deemonid jms tarkvara, php veebirakendus
- VLC, mjpg-streamer vms programm genereerib RTSP striimi kohalikest arvutiga ühendatud tavalistest UVC tüüpi veebikaameratest
- IP kaamera - iseseisev seade, mis väljastab mingil nö vastuvõetaval kujul striimi, nt RTSP
Küllap peaks süsteemi käivitades arvestama sellega, et sissetungija rikub kaamera. Kuid salvestusseade peab asuma mingis muus asukohas, et kaamera rikkumisele eelnenud tegevused säilivad.
Zoneminder serveril on sellised ülesanded
- MySQL andmebaasis salvestatakse valvesüsteemi seadistused (andmed liidestatud kaamerate kohta, süsteemi kasutajate ligipääsud jms)
- failisüsteemis kataloogis /var/cache/zoneminder asuvad salvestatud videoandmed pildifailide kujul
- Zoneminderile vastab hulk deemon-protsesse, mis tegelevad andmete kogumisega lokaalsetelt videoseadmetelt (nt Zoneminder serverisse endaga ühendatud veebikaamera) või üle võrgu ligipääsetavast veebikaamerast (kas wifi või traadiga võrgu kaudu)
- veebipõhine haldusliidese rakendus, mille abil saab süsteemi seadistada (nt liidestada lokaalseid või eemal töötavaid kaameraid) ja ettevalmistatud süsteemiga töötada (nt toimunud häireid uurida)
Zoneminder serveri protsessid, http://www.zoneminder.com/wiki/index.php/Documentation#Components
- TODO
Mõisted
- UVC veebikaamera - Universal Video Class tüüpi veebikaamera, tundub, et tänapäeval nö kõige tavalisem USB porti ühenduv veebikaamera; linuxi seisukohast töötavad nad kõik ühe sama draiveriga
- Alert - häire
- Zone - ...
Riistvara
Zoneminder veebikohas on ülevaade kasutamiseks sobivatest lokaalsetest ja üle võrgu kasutatavatest kaameratest. Zoneminder serverina kasutatav arvuti peab olema pigem suurema kui väiksema arvutusvõimusega, sest ta tegeleb üsna aktiivselt videotöötlusega. Sõltub konkreetsest kasutusjuhust, kaamerate arvust, resolutsioonidest, bitrate'idest, framerate'idest, värvidest, video formaatidest jms.
UVC veebikaaamera
UVC veebikaamerad paistavad olevat 2015 aastal kõige levinumad, nn tavalised veebikaamerad.
# v4l2-ctl -D
Driver Info (not using libv4l2):
Driver name : uvcvideo
Card type : UVC Camera (046d:081b)
Bus info : usb-0000:00:08.0-1.4.3
Driver version: 3.12.9
Capabilities : 0x84000001
Video Capture
Streaming
Device Capabilities
Device Caps : 0x04000001
Video Capture
Streaming
# v4l2-ctl --list-devices
UVC Camera (046d:081b) (usb-0000:00:08.0-1.4.3):
/dev/video0
# v4l2-ctl --list-formats -d /dev/video1
ioctl: VIDIOC_ENUM_FMT
Index : 0
Type : Video Capture
Pixel Format: 'YUYV'
Name : YUV 4:2:2 (YUYV)
Index : 1
Type : Video Capture
Pixel Format: 'MJPG' (compressed)
Name : MJPEG
Trendnet TV-IP252P ip kaamera
Video aadress
http://kasutajanimi:parool@10.168.2.172/cgi/mjpg/mjpg.cgi
Video omadused
Type: Video Codec: Motion JPEG Video (MJPG) Resolution: 640x480 Decoded format: Planar 4:2:0 YUV full scale
AXIS 210
Üle NAT kasutades paistab pilt vlc programmiga sedasi
$ vlc rtsp://10.103.1.4/mpeg4/media.amp --rtsp-http
Zoneminder kasutamiseks http://www.zoneminder.com/wiki/index.php/How_to_Setup_an_Axis_210_with_JPEG_streaming
Add New Monitor -> General -> Source Type -> Remote General -> Function -> Modect General -> Enabled -> linnuke Source -> Remote Protocol-> HTTP Source -> Remote Method -> Simple Source -> Remote Host Name - 10.103.1.4 Source -> Remote Host Port - 80 Source -> Remote Host Path - /axis-cgi/jpg/image.cgi? Source -> Target Colorspace - 24 bit colour Source -> Capture Width -> 640 Source -> Capture Height -> 480
Tarkvara paigaldamine
Paigaldamiseks sobib Debian v. 9 Stretch puhul öelda nt
# apt-get install zoneminder
mille tulemusena tekib failisüsteemi muu hulgas
- /usr/share/doc/zoneminder/README.Debian.gz - paigaldusjuhend
- paigaldatakse MySQL andmebaasi server, aga rakenduse jaoks vajaliku sisuga ei initsialiseerita
2015 aasta suvel Debian v. 8 Jessie puhul paigaldada backportsidest
# apt-get -t jessie-backports install zoneminder
Tulemusena
- TODO
- ei initsialiseerita andmebaasi, seda tuleb teha käsitsi, vt punkt 'Andmebaasi ettevalmistamine'
Andmebaasi ettevalmistamine
Eeldusel, et andmebaasi protsess töötab saab baasi esialgse sisuga täita selliselt (ühe sammuna moodustatakse create database andmebaas zm)
# cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/debian.cnf
ning näidata kasutaja privileegid ja seadistada parool (vaikimisi on kirjas väärtus 'zmpass' failis /etc/zm/zm.conf, tuleks kaaluda selle asendamist)
# echo 'grant lock tables, alter,select,insert,update,delete on zm.* to \ 'zmuser'@localhost identified by "zmpass";' | \ mysql --defaults-file=/etc/mysql/debian.cnf mysql
Zoneminder protsesside sisselülitamine
Selleks, et Zoneminder deemonid käivituksid arvuti käivitamisel automaatselt sobib öelda
# systemctl enable zoneminder.service
ja käivitamine
# systemctl start zoneminder
Veebiserveri ettevalmistamine
Zoneminder jaoks on veebiserveri seadistusfail rakendusega kaasas, aktiveerimiseks tuleb öelda
# a2enconf zoneminder # a2enmod cgi # systemctl restart apache2 # chmod 0644 /etc/zm/zm.conf
Tulemusena avaneb brauseris aadressil http://zm.imool/zm/ sarnane pilt, kuhu hakatakse Seadistamine punktis monitore lisama jms
Tundub, et 2015 aasta kevadel tuleb lisaks haldusliideses näidata PATH_ZMS vääruseks (muidu ei tööta monitori reaalajas jälgimine) valides veebiliideses
Options -> Paths
ning
/cgi-bin/nph-zms -> /zm/cgi-bin/nph-zms
Ubuntu
2013 aastal sobib Ubuntu keskkonnas tarkvara paigaldamiseks öelda midagi sellist
# apt-get install python-software-properties # add-apt-repository ppa:iconnor/zoneminder # apt-get install mysql-server # apt-get install zoneminder
Seadistamine
Seadistuste tegemisel tuleb muu hulgas liidestada Zoneminderiga veebikaamerad
- lokaalne kaamera
- ip kaamera
- UVC webcam üle võrgu VLC abil
Seadistamise ajal on väga abiks jälgida brauseris Log lingi abil avatud aknas logi.
Lokaalne kaamera
ZM seadistamiseks valida
Add New Monitor
ning General sakis täita lahtrid selliselt
General -> Source Type -> Local General -> Function -> Modect General -> Enabled -> linnuke
Tulemusena tekib sarnane pilt
Source sakis täita lahtrid selliselt
Source -> Device Path -> /dev/video0 Source -> Capture Method -> Video For Linux version 2 Source -> Capture Width -> 752 (vaadata lokaalset seadet kasutavast vlc kliendist, Media info) Source -> Capture Height -> 416 (vaadata lokaalset seadet kasutavast vlc kliendist, Media info)
Tulemusena tekib sarnane pilt
Ja kokkuvõttes ilmub ZM avalehele selline pilt
Seadistamisel saab syslog jms failisüsteemi logist ideid, aga tundub et veel asjakohasem on küsida logi veebiliidesest
Logi akna vaade paistab selline
kus
- esimesel real on üldised andmed, millal viimati logiti, süsteemi olek jne
Märkused
- kui kõik muu on ka ok, siis valesti määratud laius ja kõrgus teevad pildi esitamise ZM jaoks katki
- tundub, et kui Probe vastuseks saab 'Unable to probe local cameras, status is 255', siis sellele ei maksa tähelepanu pöörata
- avalehel esitatakse Source välja väärtus erinevat värvi, sõltuvalt sellest, mis olekus ta on (st töötab või on katki)
Üldised seadistused
Brauseris avatud kasutajaliidese, eriti live striimi omadusi saab valida kolme komplekti vahel valides avalehel
Logged in as admin, configured for Low Bandwidth
- Low -
- Medium -
- High -
Neile väärtusele vastavate parameetrite komplekti saab seadistada valides
Options -> High B/W, Medium B/W ja Low B/W
kus
- kas striimitakse mpeg või jpeg formaadis videot
- millise scale'inguga
- millise bitrate'iga
Parooliga ligipääsu seadistamine
Paroolikontrolli sisselülitamiseks valida
Options -> System -> OPT_USE_AUTH
Seejärel küsitakse kasutajanimi ja parooli, vaikimisi kasutaja admin ja parool admin. Kasutajate ja ligipääsude seadistamine toimib
Options -> Users
UVC veebikaamera üle võrgu VLC abil
Striimimiseks sobib öelda
$ cvlc v4l2:///dev/video0 --rtsp-host=192.168.10.42 --sout '#transcode{vcodec=h264,acodec=none}:rtp{sdp=rtsp://:8080/test.sdp}'
Testiks vlc programmiga avamiseks
$ vlc rtsp://192.168.10.42:8080/test.sdp
ZM seadistamiseks
Add New Monitor -> General -> Source Type -> Ffmpeg General -> Function -> Modect General -> Enabled -> linnuke Source -> Source Path -> rtsp://192.168.10.42:8080/test.sdp Source -> Remote Method -> RTP/Unicast Source -> Capture Width -> 752 (vaadata vlc kliendist) Source -> Capture Height -> 418 (vaadata vlc kliendist)
VLC abil striimimisel tuleb arvestada, et see tekitab striimivale arvutile suhteliselt palju koormust. Võib-olla on asjakohasem kasutada midagi muud, nt mjpg-streamer tarkvaraga.
IP kaamera
Nt Hikvision DS-2CD2732F-IS on ip kaamera, mille seadistamiseks tuleks valida
Add New Monitor -> General -> Source Type -> Ffmpeg General -> Function -> Modect General -> Enabled -> linnuke Source -> Source Path -> rtsp://admin:12345@192.168.10.47:554/Streaming/Channels/1 Source -> Remote Method -> RTP/RTSP Source -> Capture Width -> 1280 Source -> Capture Height -> 720
Hikvision kaamera ip aadressi võib avastada nagu ikka seadmete ip aadresse, kuulata võrku pealt ning seadme võrku lülitamisel või käivitamisel proovida märgata arp päringuid, nt
root@moraal:~# tcpdump -nlei eth0 arp | grep -v 192.168.10.161 .. 00:16:38.939438 44:19:b6:5c:ff:d4 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Request who-has 192.0.0.8 tell 192.0.0.8, length 46
Kasutamine
Zoneminder kasutamine toimub veebiliidese abil, avada brauseris http://zm.imool/zm/ ning avaneb sarnane pilt
kus
- üleval ääres on nagu käesolev aeg, tarkvara versioon ja olek (Running) ning süsteemi koormus ning kettakasutus
- järgmisel real kokkuvõte, et süsteemi on seadistatud kaks monitori st pildi vaatamise allikat, haldusliides töötab väikest võrguriba kasutust arvetades
- Cycle/Montage - avab edaldi aknas monitoride live vaate (vahetab monitoride pilte/avab pildid kõrvuti)
- Optons - üldised süsteemi tööd juhtivad seadistused
- Log - süsteemi jooksvad logid (väga abiks seadistamisel)
Eraldi sektsioonis esitatakse iga monitori kohta
- Name - monitori nimi
- Function - nt Modect, mis on kõige tavalisem nn liikumistuvastus (eesti k. motion detection)
- Source - andmete allika nimi
- Events - TODO
- TODO
Reaalajas pildi vaatamine
Reaalajas pildi vaatamiseks sobib valida
- Monitori nime
- Cycle
- Montage
Tulemusena avatakse eraldi aknasse pilt, st online video.
Häirete läbivaatamine
Toimunud häirete läbivaatamises tuleb avada vastava monitori Events tulba arvul klõpsates nimekiri sündmustest, ning valida huvipakkuv sündmus. Nimekirjas on esitatud sündmuste kohta
- Name - vaikimisi genereeritakse nimi kujul Event-nnn
- Monitor -
- Cause - nt Motion st liikumine
- Time -
- Duration
- Frames
- Alarm Frames
- Total Score
Avades mõne konkreetse sündmuse paistab selline pilt
kus
- TODO
Valides häire ekraanilt 'Frames' avaneb nimekiri häirele eelnenud, häiret tekitanud ja häirele järgnenud kaadritest
kus
- punase kontuuriga on tähistatud häiret tekitanud ala
Tsoonide kirjeldamine
Kui häiret tekitab mingi seinal muutuv aknast tuleva valguse peegeldus vms ja ilmselt ei ole ette näha, et seina kaudu keegi siseneb, siis tuleks see ala jätta häire tsoonist välja. Tsooni kirjeldamiseks sobiv valida avalehelt vastava monitori Zones tulba arv ning avaneb uue aken. Tsooni kirjelduse muutmiseks hiirega vajutada pildile ja paistab midagi sellist
kus
- vedada rohelise ala tippude abil tsooni kontuur sobivaks
Failisüsteemi täituvuse kontrollimine
Selleks, et failisüsteem kogemata ei täituks saab kasutada 'PurgeWhenFull' filtrit valides
mõni Events tulba arv -> Show Filter Window -> Use Filter -> PurgeWhenFull
Teadete saatmine
TODO
Märkused
- Tundub, et nö keskmise MJPEG 640x480 pilt jälgimine kasutab ca 100 kBait/s andmekanalit.
- Tundub, et mingite trikkide ja asjaolude puhul saab ühele arvutile ühendada külge mitu UVC veebikaamerat, aga üldiselt nad hästi ei tööta (nt 320 x 240 resoga töötab)








