Valvontakamerajärjestelmä

Lisäksi voisi olla hyvä ajatus tarkistella myytävänä olevien vekottimien tyyppimerkintöjä ja koettaa bongata sellaisia, mitkä löytyvät esim. Dahuan omilta sivuilta: https://www.dahuasecurity.com/ceen

Näin voisi olla vähän varmempi, ettei myynnissä oleva tuote ole jokin outolintumalli, johon ei löydy esim. firmware-päivityksiä, tms.
 
Meillä on just PoE porttinen tallennin, yksi kamera on kauempana parinkin reitittimen takana omalla PoE virtalähteellä..
 
Tuo lienee tallennin, jossa on PoE-portit.

Pan-tilt-zoom kameran sijasta voisi harkita hankkivansa useamman kiinteän kameran (hinta yhteensä sama) ja suunnata ne useampaan suuntaan.

Tuo Dahua Franchised Store vaikuttaa ihan ok. paikalta: https://www.aliexpress.com/store/1282343?spm=a2g0o.detail.1000007.1.554126e32TVW0c
Joo kyllä tarkemmin kun lukee niin sanotaanhan tuossa, että Network Video Recorder. Maa on vielä jäässä ja en pääse systeemiä teknistä tilaa pidemmälle rakentamaan ennen ensi kesää. Tutkaillaan vaihtoehtoja. Amazonista tilaaminen on hyvä vaihtoehto.
 
Omat kamerat ovat amazonista. Merkkiä Anpviz ja Annke. Ostettu sulovilenperiaatteella, mutta ovat kyllä ihan toimivia. Firmware-päivitykset voi olla parempi unohtaa, mutta toimivat nuo noinkin. Dahua ei välttämättä olisi paljonkaan kalliimpi ja oikean mallin valitsemalla tukikin voisi olla luokkaa hyvä.
 
Ok, Anjovis ja Anneke. Katselen huomenna päivällä netistä. Tuo pyöriteltävä kamera olis helppo kun olis vaan yksi ja saisin sen aika keskeiselle paikalle. Sehän toki kuvaa aina sinne minne sen jättää. Yksi vaihtoehto vois olla yksi pyörivä ja pari kiinteää.
 
Dokumentoidaampas hiukan omaa Reolink - VPN - Frigate-säätöä. Mulla on siis parissa paikassa eri puolilla suomea kameroita, joista halutaan kuva näkyville ja talteen jos jotain tapahtuu. Mahdollisesti myös säädetään jossain kohtaa hälytyksiä "mökin pihalla ihminen" tms, kuhan homma on hiottu luotetettavaksi.

Kamerana siis noin viidelläkympillä ostettuja Reolinkin 410:jä, sekä tuota perusmallia poe:lla että rinnakkaista wifi-versiota: https://reolink.com/product/rlc-410/ Nämä ostettu suoraan tuolta, tulee noin viikossa DHL:llä, suomikauppiaillakin näitä hyvin näyttä olevan saatavilla oletettavalla hintaerolla.

Noiden kaverina etäkohteessa on sit mikrotikin routeri, paikasta riippuen joko suoraan 4G:llä tai sitten vaan wifipurkki joka on kiinni paikan päällä valmiiksi olleessa huaweissa. Mikrotik avaa openvpn:llä yhteyden mun kotikoneelle, tähän väliin pitäisi jossain kohtaa joku dyndns vielä viritellä kun nyt on pariin kertaan puolen vuoden sisään ip vaihtunut DNA:n kaapelimodeemissa, aikaisemmin säilyi useamman vuoden putkeen.

Kotikoneella tämä pyörii koska tuo Frigate ( https://frigate.video/ ) käytännössä tarvii kylkeensä joko USB tai PCI-E väyläisn Googlen Coral-tekoälypalikan https://coral.ai/ . Moisen liittäminen pilvikoneeseen olisi kovasti haastavampaa. Tässä on myös tämän järjestelmän skaalautumisen isoin ongelma, noi palikat ovat maailmasta täysin loppu jos ei ebay:n riistohintoja makseta, ehkä kesällä voisi olla taas saatavissa normaalilla alle satasen hinnalla.

Softat koti-linux-koneella pyörivät tuota openvpn:ää lukuunottamatta Dockerissa, senkin voisi joskus sinne jumpata niin olisi helpompi siirtää tarvitaessa uudelle koneelle.

docker-compose.yaml näyttää seuraavalta: (sopivasti anonymisoituna, toivottavasti ei montaa bugia tullut siinä mukaan

Koodi:
version: "3.8"
services:

  mqtt:
    container_name: "bb-mqtt"
    image: eclipse-mosquitto
    volumes:
      - "/opt/bb/mosquitto:/mosquitto"
    networks:
      - bb-srv

    restart: unless-stopped

  rtmp:
    container_name: "bb-rtmp"
    image: tiangolo/nginx-rtmp
    volumes:
      - "/opt/bb/rtmp/proxy.conf:/etc/nginx/nginx.conf"
    networks:
      - bb-srv
    restart: unless-stopped

  frigate:
    container_name: "bb-frigate"
    privileged: true # this may not be necessary for all setups
    restart: unless-stopped
    image: blakeblackshear/frigate:stable-amd64

    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /opt/bb/frigate/config/config.yml:/config/config.yml:ro
      - /opt/bb/frigate/media:/media/frigate
      - /dev/dri/renderD128 # for intel hwaccel, needs to be updated for your hardware
      - /dev/bus/usb:/dev/bus/usb

      - type: tmpfs # Optional: 1GB of memory, reduces SSD/SD Card wear
        target: /tmp/cache
        tmpfs:
          size: 1000000000

    networks:
      - bb-srv
    ports:
      - "5000:5000"
      - "1935:1935" # RTMP feeds
    environment:
      FRIGATE_RTSP_PASSWORD: "password"


  homeassistant:
    container_name: "bb-ha"
    image: "ghcr.io/home-assistant/home-assistant:stable"
    volumes:
      - /opt/bb/ha:/config
      - /etc/localtime:/etc/localtime:ro
    restart: unless-stopped
    privileged: true
    networks:
      - bb-srv
    ports:
      - "8123:8123"

networks:
  bb-srv:

RTMP-proxyn konffi, tuotannossa mulla on tossa kolme samanlaista kameraa:
Koodi:
worker_processes auto;
rtmp_auto_push on;
events {}
rtmp {
    server {
        listen 1935;
        listen [::]:1935 ipv6only=on;

    application cam1-main {
            live on;
            pull rtmp://<ip>/bcs/channel0_main.bcs?channel=0&stream=0&user=<user>&password=<pass>;
            record off;
        }

    application cam1-sub {
            live on;
            pull rtmp://<ip>/bcs/channel0_sub.bcs?channel=0&stream=0&user=<user>&password=<pass>;
            record off;
        }   

    }
}

Frigaten konffi, tässä käytössä PCI-e versio coralista. Myöskin tästä siivottu tunnistetietoja ja toistuvat muut kamerat

Koodi:
mqtt:
  host: mqtt

detectors:
  coral:
    type: edgetpu   
    device: pci:0

record:
  enabled: true
  retain_days: 5
  events:
    retain:
      default: 14

ffmpeg:
  global_args:
    - -hide_banner
    - -loglevel
    - info

#  hwaccel_args:
#   - -hwaccel
#   - vaapi
#   - -hwaccel_device
#   - /dev/dri/renderD128
#    - -hwaccel_output_format
#    - yuv420p
 
  input_args:
    - -avoid_negative_ts
    - make_zero
    #- -fflags
    #- nobuffer
    #- -flags
    #- low_delay
    - -strict
    - experimental
    - -fflags
    - +genpts+discardcorrupt
#    - -rw_timeout
#    - "5000000"
#   - -use_wallclock_as_timestamps
#   - "1"   

cameras:
  cam1:
    ffmpeg:
      inputs:
        - path: rtmp://rtmp:1935/cam1-main/   
          roles:
             - record
             - rtmp
        - path: rtmp://rtmp:1935/cam1-sub/
          roles:
             - detect

    detect:
      width: 640
      height: 352
      fps: 7

    objects:
      track:
        - person
        - car
        - cat


Tuo proxy on tuossa välissä ihan tarpeen, syystä tai toisesta frigate ei tykkää palauttaa tuota tallennus-striimiään jos verkko pääse hikkaamaan välissä. Eli ilman proxyä mulla tuo paremman laadun tallennuskuva katosi noin vuorokaudessa softan käynnistyksen jälkeen, löytyyäkseen uudestaan seuraavalla bootilla.

Yksi kehityskohde tässä on vielä tuo h264-streamin rautapurku, sitä en oo vielä testannut.

Mainittujen lisäksi tuossa dockerissa potkitaan käyntiin home-assistant joka toimii käyttöliittymänä noille kameroille, ja tekee mahdollisesti tulevaisuudessa hälyjäkin. Lisäksi yhdessä kohteissa on myös esp8266-palikalla tehty lämpömittari seuraamassa lämpötiloja, sieltä saadaan tarvittaessa kans hälyä jos putket meinaa mennä pakkaselle.
 
Tähän naulaan oikeanlainen vasara löytynee esim dy.fi:stä, eli dyndns tulille. Nyt mulla on siis vpn.mundomain.fi jonka päivitys on käsityötä, tosta kun tekee cnamen munvpn.dy.fi ja clientti ajoon kotikoneelle, automaatti hoitaa.

tailscaleen en oo lähtenyt kun maksullisia palveluita hiukan koitan vältellä, sen sijaan ajelen Nebulaa joka kovasti saman ongelmakentän eli läppärillä omille servereille pääsyn ratkoo.
 
Tähän naulaan oikeanlainen vasara löytynee esim dy.fi:stä, eli dyndns tulille. Nyt mulla on siis vpn.mundomain.fi jonka päivitys on käsityötä, tosta kun tekee cnamen munvpn.dy.fi ja clientti ajoon kotikoneelle, automaatti hoitaa.

tailscaleen en oo lähtenyt kun maksullisia palveluita hiukan koitan vältellä, sen sijaan ajelen Nebulaa joka kovasti saman ongelmakentän eli läppärillä omille servereille pääsyn ratkoo.
Joo. Olihan tästä maksullisuudesta juttua jo tuolla Tailscale ketjussa. Ehdin unohtaa, kun omat tarpeet on vielä sopineet tuohon ilmaisversion piiriin.
 
Taitaisi itselläkin tällähetkellä sopia, mutta käytän aikaani mieluummin avoimen kuin maksullisen tekniikan opiskeluun. Helpompi sit soveltaa paikoissa x, y ja z, kuten tässä nyt on käynyt tuon nginx-rtmp:n kanssa. Ensi sillä testasi harrastusprojektissa telkkaria, sitten sitä on käyttänyt päivätöissä lähetyksien siirtoon, ja nyt voi hyödyntää tässä hiukan eri kulmasta videotekniikkaa lähestyvässä aiheessa
 
Käpelöitsin taas tuota Blue Iristä vähän paremmaksi. Tallennan tähän huomioitani kameroiden ja Blue Iriksen asetuksista. Niiden ylös kirjaamisesta on hyötyä ainakin itselleni, toivottavasti jollekulle toisellekin.

Muistiinpanoissani saattaa olla virheitä ja virheellisiä olettamia, joten lähdekritiikki on paikallaan.

Kun hankit ip-kameroita, osta Dahua tai Hikvision. Ne maksavat enemmän (eivät välttämättä mahdottomasti enemmän), mutta ne ovat niitä alkuperäisiä, joita muut jäljittelevät vaihtelevalla menestyksellä.

"Random"-merkkisilläkin kameroilla saattaa onnistua ihan hyvin. Kannattaa kuitenkin varautua siihen, että oikeita asetuksia saa etsiä pitkin nettiä. Samalla kuitenkin saa ahaa-elämyksiä ja saattaa oppiakin jotain. Itse tosin unohdan sitä mukaa kun opin, mutta onneksi on muistiinpanovälineenä tämä foorumi.

Lähtisin siitä, että kamerassa pitää olla ns. ONVIF. Tuo lyhenne näyttää olevan hyödyllinen siinä suhteessa, että Blue Iris voi kysellä kameralta kuka sä oot ja mitä osaat. Kamera sitten plurauttaa raportin, mitä sen ominaisuuksiin kuuluu.

Jos kamera on yhtään Hikvisionin sukua, sen perusasetuksia voi tehdä Hikvisionin sadptool-ohjelmalla. Minulla on neljä kameraa, joista sadptool löytää kolme. Sadptoolin avulla kameran verkkoasetukset voi veivata kohdalleen. Kameran saattaa (ei kaikki) joutua myös aktivoimaan sadptoolilla. Muuten se ei suostu yhteistyöhön ollenkaan.

ONVIF:n erikseen päälle kytkemisestä mainitaan mm. oheisessa pdf-liitteessä "Connecting Hikvision Cameras". Kaksi omaa kameraa on merkkiä ANNKE. Niiden hallintasivu muistuttaa hyvin paljon Hikvisionin vastaavaa. ONVIF:in päälle kytkentä löytyy samoilta nurkilta kuin oheisessa ohjeessakin, mutta näyttää hieman erilaiselta:

onvif päälle.webp
 

Liitetiedostot

Kun noissa ANNKE-merkkisissä kameroissa kytkee ONVIF:in päälle, niin Blue Iriksen kamera-asetusten tekeminen etenee seuraavasti:

BI1.webp


BI2.webp


Find/inspect -nappulasta painamalla BlueIris kyselee kameralta tietoja. Kun ONVIF on kytketty päälle, niin se saa kyselyynsä vastauksia, mutta kaikkea tietoa ei välttämättä irtoa.

BI3.webp


Tässä tapauksessa kamera ei kerro Blue Irikselle ns. substreamin asetuksia. Kenttä jää tyhjäksi, eikä Blue Iris löydä kevyempää striimiä ollenkaan:

substriimi.webp
 
ANNKE-kameroista poiketen vastaava Anpviz-merkkinen vastaa edellisen esimerkin kyselyyn hyvin seikkaperäisesti:

anpvitzin striimit.webp


Tämän jälkeen striimien asetukset onkin helppo tehdä. Kamera kertoi kaiken tarpeellisen:

anp stream2.webp
 
Mitä hyötyä tuosta substriimistä sitten oikein on? Sehän on laadultaan huono verrattuna varsinaiseen striimiin.

Blue Iris voi ottaa vastaan kumpaakin videovirtaa, päästriimiä ja substriimiä. Korkealaatuinen video tallennetaan levylle sellaisenaan. Kaikki se, mitä siitä ei tarvita, heitetään kuitenkin myöhemmin pois, sitten kun tiedetään, ettei sitä tarvittu.

Substriimi vuorostaan menee analysoitavaksi. Koska sen resoluutio on matala, sitä on kevyt käsitellä. Jos siinä näkyy jotain epäilyttävää liikettä, niin BlueIris jättää talteen kaikki korkealaatuisen tallenteen ne osat, joita vastaavassa substriimissä havaittiin liikettä.

Tämä on aika nerokas systeemi ja tiputtaa prosessorin kuormaa melkoisesti.

https://ipcamtalk.com/wiki/sub-stream-guide/
 
Pelkästään täyden resoluution striimejä käyttämällä i7 prosessorilla varustetun koneen suoritinkuorma alkoi olla hetkittäin jo tapissa. Kameroita on 3kpl 4Mp ja 1kpl 3Mp. Nyt kun substriimit ovat käytössä, näyttää ihan erilaiselta.

B090DEF2-6271-4944-B06D-BDF37D40E44E.webp
 

Luo tili tai kirjaudu sisään kommentoidaksesi

Sinun täytyy olla jäsen voidaksesi jättää kommentin.

Luo käyttäjätili

Liity Konekansalaiseksi. Se on helppoa ja ilmaista! Rekisteröityneenä et näe mainoksia, voit käyttää hakua, näet alueita, joita nyt ovat piilossa...jne.

Kirjaudu sisään

Oletko jo Konekansan jäsen? Kirjaudu sisään tästä.

Takaisin
Ylös