ZoneMinder este cel mai profesional soft de monitorizare video disponibil pe Linux. Am avut ocazia sa il folosesc impreuna cu o camera conectata la server-ul cu ZoneMinder prin retea.
Configuratia software folosita:
* ZoneMinder 1.21.0 (ruland pe ZoneMinder LiveCD)
Din interfata web ZoneMinder aveti atentie la urmatoarele setari mai delicate:
* ''ZM_OPT_REMOTE_CAMERAS'' - trebuie bifat in cazul de fata * ''ZM_OPT_USE_AUTH'' - nu ar trebui activat in mod normal * ''ZM_PATH_LOGS'' - /var/log/zm ar trebui sa fie trecut aici * ''ZM_COLOUR_JPEG_FILES'' - nu e nevoie in cazul de fata * ''ZM_NETCAM_REGEXPS'' - (nu exista in 1.21.0) debifat * ''ZM_HTTP_VERSION'' - in cazul de fata e 1.1 la 1.21.0 si 1.0 la 1.21.3 * ''ZM_HTTP_TIMEOUT'' - minim 2500 * ''ZM_WEB_REFRESH_METHOD'' - http * ''ZM_VIDEO_STREAM_METHOD'' - jpeg
Dupa setarea parametrilor de mai sus si conectarea camerei la server verificati urmatoarele:
* Comanda zmc -m
nu trebuie sa returneze imediat. Daca returneaza imediat (cu, sau fara eroare), ceva nu e bine; verificati log-urile.
* Memoria partajata (shared memory) (a se vedea [[Supraveghere_video_sub_Linux_folosind_ZoneMinder#Prima_problema:_memoria_partajat.C4.83_.28shared_memory.29|Prima problema]]) se calculeaza astfel: buffer (tabul ''Buffers'' de la monitor) x latimea imaginii x inaltimea imaginii x 3 (pentru o imagine de 24 biti). Pentru o imagine 640x480 pe 24 biti ar necesita aproximativ 92Mb memorie shared, cu buffer-ele setate standard.== Prima problema: memoria partajata (shared memory) ==
Simptoma: in loguri apar mesaje referitoare la shared memory.
Se rezolva prin marirea memoriei partajate.
Memoria partajata alocata curent poate fi afisata cu comenzile:
cat /proc/sys/kernel/shmall cat /proc/sys/kernel/shmmax
Valorile returnate sunt in octeti (bytes) si ar trebui sa fie de minim 134217728 (128 MiB).
Daca valorile returnate sunt mai mici decat minimul precizat, ar trebui marite. Pentru a le mari definitiv se editeaza valorile ''kernel.shmall'' si ''kernel.shmmax'' din ''/etc/sysctl.conf''. Daca aceste variabile nu exista in ''sysctl.conf'', ele vor fi create.
Atentie: valorile setate in ''sysctl.conf'' nu vor fi incarcate decat abia la bootare. Pentru aplicarea lor imediata, folositi comanda:
/sbin/sysctl -p
== A doua problema: erori legate de formatul JPEG ==
Simptoma:
# zmc -m 1
Not a JPEG file: starts with 0x48 0x54
Camera reda imagini de dimensiunea 640x480, pe 24 biti culoare, deci acestea trebuie sa fie si setarile monitorului ZM.
Atentie: cu cat imaginea are dimensiuni mai mari si culoare mai adanca, cu atat va creste si valoarea shared memory pe care ZM o cere (a se vedea mai sus).
== A treia problema: Nu apare imagine ==
Simptoma: Nu apare nici o imagine cand se deschide un monitor, in logurile ZM (de obicei aflate in ''/var/log/zm'') totul pare OK, dar in ''/var/log/messages'' apar mesaje de eroare de genul:
Got TERM signal, exiting
Select error: Interrupted system call
Shared memory not initialised by capture daemon
Trebuie verificat ca ''ZM_PATH_ZMS
'' sa fie setat corect. In mod normal, in ''/var/www'' trebuie sa existe un director ''cgi-bin'' ce contine doua fisiere, cel putin:
# pwd /var/www/cgi-bin # ls nph-zms zms
Deci, in ''ZM_PATH_ZMS'' se pot pune doua valori: ''/cgi-bin/zms
'' sau ''/cgi-bin/nph-zms''. Incercati cu ambele, pana cand functioneaza.
== A patra problema: Camera are uneori probleme si trebuie resetata. ==
Daca ZoneMinder nu mai recepteaza imagini, ping-ul la IP-ul camerei nu mai merge sau are pierderi, trebuie scoasa alimentarea camerei pentru câteva secunde...
Atentie: server-ul de captura va avea nevoie de un hard disk mare pentru a putea face fata cantitatii de date trimisa de camera.
Puteti folosi mecanismul standard al distributiei (e.g. ''tmpwatch'') sau, in lipsa acestuia, o solutie ad-hoc de forma