A Raspberry Pi hivatalos kameramodul biztonsági kameraként használható. Megoszthatja a kamera videofolyamát a hálózaton, és távolról hozzáférhet a helyi hálózat (LAN) bármely eszközéről.
A VLC médialejátszóval megoszthatja a videofolyamot egy TCP-porton, és a VLC médialejátszó segítségével hozzáférhet ahhoz a helyi hálózat (LAN) bármely eszközéről.
Ebben a cikkben megmutatom, hogyan készíthet Raspberry Pi biztonsági kamerát, és hogyan streamelheti a kamera videoadatát a Raspberry Pi-ről a VLC médialejátszó segítségével.
Tehát kezdjük!
Amire szüksége lesz
A cikk követéséhez a következő dolgokra lesz szüksége:
- Málna Pi 3 vagy Raspberry Pi 4
- Raspberry Pi kamera modul
- Mikro-USB (Raspberry Pi 3) vagy C típusú USB (Raspberry Pi 4) hálózati adapter
- 16 vagy 32 GB-os Raspberry Pi operációs rendszerrel ellátott MicroSD-kártya villant
- Hálózati kapcsolat a Raspberry Pi-n
- Laptop vagy asztali számítógép VNC távoli asztali vagy SSH hozzáféréshez a Raspberry Pi-hez.
JEGYZET: Ha nem akarja távolról elérni a Raspberry Pi-t az SSH vagy a VNC segítségével, csatlakoztatnia kell egy monitort, egy billentyűzetet és egy egeret is a Raspberry Pi-hez. Nem lesz szükségem ezekre, mivel a Raspberry Pi-t távolról csatlakoztatom VNC-n vagy SSH-n keresztül. A beállításomat Raspberry Pi fej nélküli beállításának hívják.
Ha segítségre van szüksége a Raspberry Pi OS képének a microSD-kártyán történő villogásával kapcsolatban, olvassa el cikkemet: A Raspberry Pi Imager telepítése és használata.
Ha Ön kezdő Raspberry Pi, és segítségre van szüksége a Raspberry Pi OS telepítéséhez a Raspberry Pi készülékére, olvassa el cikkemet: Hogyan telepítsem a Raspberry Pi operációs rendszert a Raspberry Pi 4-re.
Ha segítségre van szüksége a Raspberry Pi fej nélküli beállításához, olvassa el cikkemet: A Raspberry Pi OS telepítése és konfigurálása a Raspberry Pi 4-en külső monitor nélkül.
Ha segítségre van szüksége a Raspberry Pi kamera moduljának a Raspberry Pi csatlakoztatásához, olvassa el a cikkemet: Raspberry Pi kamera modul használata.
A Raspberry Pi kamera modul engedélyezése
A kamera interfész alapértelmezés szerint le van tiltva a Raspberry Pi OS rendszeren. A Raspberry Pi konfigurációs eszközről engedélyezheti, raspi-config.
Indítsa el a Raspberry Pi konfigurációs eszközt a következő paranccsal:
$ sudo raspi-config
Válassza a lehetőséget Interfész opciók és nyomja meg
Válassza a lehetőséget Kamera és nyomja meg
Válassza a lehetőséget
nyomja meg
Válassza a lehetőséget
Válassza a lehetőséget
A VLC Media Player telepítése
A VLC Media Player elérhető a Raspberry Pi OS hivatalos csomagtárában. Tehát könnyű telepíteni a Raspberry Pi OS-re.
Először frissítse az APT csomagtárház gyorsítótárát a következő paranccsal:
$ sudo apt frissítés
A VLC Media Player telepítéséhez futtassa a következő parancsot:
$ sudo apt install vlc -y
A VLC Media Player programot telepíteni kell. Az én esetemben már telepítve van.
Camera Server létrehozása VLC Media Player segítségével
A raspivid paranccsal lehet videót rögzíteni a Raspberry Pi kamera modulról. Elmagyaráztam a raspivid parancs videó rögzítésére a Raspberry Pi használatával a cikkemben Raspberry Pi kamera modul használata.
A VLC Media Player rendelkezik parancssori lejátszóval cvlc. Használhatja a cvlc parancs egy videófolyam megosztására egy TCP porton. Ebben az esetben a Raspberry Pi kamera modul videó folyamata.
A Raspberry Pi kamera videócsatornájának megosztásához TCP porton a VLC Media Player használatával futtassa a következő parancsot:
$ raspivid -o - -t 0 -hf -w 1920 -h 1080 -fps 30 | cvlc -vvv folyam: /// dev / stdin--sout '#standard access = http, mux = ts, dst =: 9000': demux = h264
A raspivid paranccsal rögzítik a videót a Raspberry Pi kamera modulról.
Az alábbi parancs jelentése a következő:
- A videó szélessége 1920 pixel lesz
- A videó magassága 1080 pixel lesz (-h 1080).
- A videó vízszintesen lesz elfordítva (-HF).
- A videót másodpercenként 30 képkockával rögzítjük (-fps 30).
- A videót korlátlan számú másodpercig rögzítjük (-t 0).
- A videofolyamot a terminálra nyomtatják ahelyett, hogy fájlba mentenék (-o -).
Ezen lehetőségek bármelyikét tetszés szerint megváltoztathatja.
A cvlc paranccsal nyitható meg egy TCP port, és elküldhető a Raspberry Pi kamera videó feedje a TCP portra.
A videó hírcsatorna a standard bemenetről származik (folyam: /// dev / stdin) a terminál (egy cső segítségével) |).
A VLC a TS kodeket használja a multiplexeléshez (-sout '#standard …, mux = ts, ...') a bemeneti videó feed és a H264 kodek a demultiplexeléshez (: demux = h264) a kimeneti videó hírcsatorna.
A videofolyam a 9000 HTTP porton lesz elérhető (-sout '#standard access = http,…, dst =: 9000').
A parancs futtatása és a pufferelés befejezése után a videót a hálózat bármely eszközéről streamelheti a VLC Media Player segítségével.
A kamera hírfolyamának átvitele a Raspberry Pi Camera Server szerverről
Ahhoz, hogy otthoni hálózatának (LAN) más eszközeiről hozzáférhessen a kamera hírcsatornájához, ismernie kell a Raspberry Pi IP-címét.
A Raspberry Pi IP-címét az otthoni útválasztó webkezelő felületéről találhatja meg. Esetemben az IP-cím 192.168.0.103. Neked más lesz. Tehát mindenképpen cserélje le mostantól a sajátjára.
Ha hozzáfér a Raspberry Pi konzolhoz, a következő paranccsal futtathatja az IP-címet is.
$ hostname -I
Miután megtudta a Raspberry Pi IP-címét, nyissa meg a VLC Media Player alkalmazást, és lépjen a következőre: Média > Nyissa meg a Hálózati adatfolyamot… az alábbi képernyőképen látható módon.
Írja be a kamerakiszolgáló URL-jét a Kérjük, adja meg a hálózati URL-t szakasz. Az én esetemben az URL http: // 192.168.0.103: 9000.
Miután beírta az URL-t, kattintson a gombra Játék.
A VLC Media Player-nek el kell kezdenie a videócsatorna streamelését a Raspberry Pi-ből, amint az az alábbi képernyőképen látható.
Most állítsa le a kamera szervert a megnyomásával
A Camera Server indítása a rendszerindításkor
A kamerakiszolgáló minden egyes kézi indításával a Raspberry Pi rendszerindítás nem túl praktikus. Tehát létrehozhatunk egy systemd szolgáltatást a kameraszerverhez, amely indításkor automatikusan elindítja a kamerakiszolgálót.
Először hozzon létre a camera-stream-HTTP. Szolgáltatás fájl a / etc / systemd / system / könyvtárat az alábbiak szerint:
$ sudo nano / etc / systemd / system / camera-stream-http.szolgáltatás
Írja be a következő sorokat a camera-stream-http.szolgáltatás fájl.
[Mértékegység]Leírás = Raspberry Pi Camera Streaming Server
Után = hálózat.cél
[Szolgáltatás]
WorkingDirectory = / home / pi
Környezet = APP_RES_WIDTH = 800
Környezet = APP_RES_HEIGHT = 450
Környezet = APP_RES_FPS = 24
Környezet = APP_PORT = 9000
ExecStart = / bin / bash -c 'raspivid -o - -t 0 -hf -w $ APP_RES_WIDTH -h
$ APP_RES_HEIGHT -fps $ APP_RES_FPS | cvlc -vvv folyam: /// dev / stdin
--sout "#standard access = http, mux = ts, dst =: $ APP_PORT": demux = h264 '
StandardOutput = örökli
StandardError = örökli
Újraindítás = mindig
Felhasználó = pi
[Telepítés]
WantedBy = többfelhasználós.cél
Az alábbi környezeti változókat beállíthatja a kamera szerver konfigurálásához.
Környezet = APP_RES_WIDTH = 800Környezet = APP_RES_HEIGHT = 450
Környezet = APP_RES_FPS = 24
Környezet = APP_PORT = 9000
Ha végzett, nyomja meg a gombot
Töltse be újra a systemd démonokat, hogy a változtatások az alábbiak szerint lépjenek életbe:
$ sudo systemctl daemon-reload
Mint láthatja, a camera-stream-http A systemd szolgáltatás jelenleg nem fut.
$ sudo systemctl status camera-stream-http.szolgáltatás
Elindíthatja a camera-stream-http rendszerszolgáltatás a következő paranccsal:
$ sudo systemctl start camera-stream-http.szolgáltatás
A camera-stream-http A szolgáltatásnak aktívnak / futónak kell lennie, amint az az alábbi képernyőképen látható. Így, camera-stream-http a systemd szolgáltatás működik.
$ sudo systemctl status camera-stream-http.szolgáltatás
Hozzáadhatja a camera-stream-http systemd szolgáltatás a Raspberry Pi OS rendszerindításához a következő paranccsal:
A $ sudo systemctl engedélyezi a camera-stream-http parancsot.szolgáltatás
A módosítások életbe lépéséhez indítsa újra a Raspberry Pi alkalmazást a következő paranccsal:
$ sudo reboot
Miután elindult a Raspberry Pi, camera-stream-http A systemd szolgáltatásnak aktívnak / futónak kell lennie, amint az az alábbi képernyőképen látható.
$ sudo systemctl állapot raspi-home-automation.szolgáltatás
Következtetés
Ebben a cikkben bemutattam, hogyan készíthet Raspberry Pi biztonsági kamerát, és hogyan férhet hozzá a videó hírcsatornához otthoni hálózatáról (LAN) a VLC Media Player segítségével. Ha csak egy egyszerű Raspberry Pi biztonsági kamera beállítást szeretne, akkor ez a cikk segít az indulásban.