Creeu una xarxa de càmeres de seguretat Raspberry Pi

Build Raspberry Pi Security Camera Network



El mòdul de càmera oficial Raspberry Pi es pot utilitzar com a càmera de seguretat. Podeu compartir el flux de vídeo de la càmera a la xarxa i accedir-hi remotament des de qualsevol dispositiu de la vostra xarxa d’àrea local (LAN).

Podeu utilitzar el reproductor multimèdia VLC per compartir el flux de vídeo en un port TCP i accedir-hi des de qualsevol dispositiu de la vostra xarxa d’àrea local (LAN) mitjançant el reproductor multimèdia VLC.







En aquest article, us mostraré com construir una càmera de seguretat Raspberry Pi i transmetre el flux de vídeo de la càmera des del Raspberry Pi mitjançant el reproductor multimèdia VLC.



Comencem, doncs,



Coses que necessitarà

Per seguir aquest article, necessitareu les coses següents:





  1. Raspberry Pi 3 o Raspberry Pi 4
  2. Mòdul de càmera Raspberry Pi
  3. Adaptador d'alimentació Micro-USB (Raspberry Pi 3) o USB tipus C (Raspberry Pi 4)
  4. Targeta microSD de 16 o 32 GB amb sistema operatiu Raspberry Pi intermitent
  5. Connectivitat de xarxa al Raspberry Pi
  6. Ordinador portàtil o un ordinador de sobretaula per a accés remot VNC o accés SSH al Raspberry Pi.

NOTA : Si no voleu accedir al vostre Raspberry Pi de manera remota mitjançant SSH o VNC, també heu de connectar un monitor, un teclat i un ratolí al vostre Raspberry Pi. No en necessitaré cap, ja que connectaré el meu Raspberry Pi remotament mitjançant VNC o SSH. La meva configuració s’anomena configuració sense cap de Raspberry Pi.

Si necessiteu ajuda per llampar la imatge del sistema operatiu Raspberry Pi a la targeta microSD, consulteu el meu article: Com instal·lar i utilitzar Raspberry Pi Imager.



Si sou un principiant de Raspberry Pi i necessiteu ajuda per instal·lar Raspberry Pi OS al vostre Raspberry Pi, consulteu el meu article: Com instal·lar el sistema operatiu Raspberry Pi a Raspberry Pi 4 .

Si necessiteu ajuda per a la configuració sense cap de Raspberry Pi, consulteu el meu article: Com instal·lar i configurar el sistema operatiu Raspberry Pi al Raspberry Pi 4 sense monitor extern.

Si necessiteu ajuda per connectar el mòdul de càmera Raspberry Pi al Raspberry Pi, consulteu el meu article: Utilització del mòdul de càmera Raspberry Pi .

Activació del mòdul de càmera Raspberry Pi

La interfície de la càmera està desactivada per defecte al sistema operatiu Raspberry Pi. Podeu activar-lo des de l'eina de configuració de Raspberry Pi, raspi-config .

Inicieu l'eina de configuració de Raspberry Pi amb l'ordre següent:

$ sudo raspi-config

Seleccioneu Opcions d’interfície i premeu .

Seleccioneu Càmera i premeu .

Seleccioneu i premeu .

Premeu .

Seleccioneu i premeu .

Seleccioneu i premeu . El vostre Raspberry Pi s’hauria de reiniciar i s’haurien d’aplicar els canvis.

Instal·lació del reproductor multimèdia VLC

VLC Media Player està disponible al dipòsit oficial de paquets del sistema operatiu Raspberry Pi. Per tant, és fàcil instal·lar-lo al sistema operatiu Raspberry Pi.

Primer, actualitzeu la memòria cau del dipòsit de paquets APT amb l'ordre següent:

$ sudo apt actualització

Per instal·lar VLC Media Player, executeu l'ordre següent:

$ Sudo apt install vlc -i

S'ha d'instal·lar VLC Media Player. En el meu cas, ja està instal·lat.

Creació d’un servidor de càmeres amb VLC Media Player

El raspivid La comanda s'utilitza per gravar vídeo des del mòdul de càmera Raspberry Pi. He explicat com utilitzar el fitxer raspivid ordre per gravar un vídeo amb Raspberry Pi al meu article Utilització del mòdul de càmera Raspberry Pi .

El VLC Media Player té un reproductor de línia d’ordres cvlc . Podeu utilitzar el fitxer cvlc ordre per compartir un flux de vídeo en un port TCP. En aquest cas, el flux de vídeo del mòdul de càmera Raspberry Pi.

Per compartir el canal de vídeo de la càmera Raspberry Pi en un port TCP mitjançant el reproductor multimèdia VLC, executeu l'ordre següent:

$ raspivid -o - -t 0 -hf -w 1920 -h 1080 -fps 30 | cvlc -vvv stream: /// dev / stdin
--sout '#standard {access = http, mux = ts, dst =: 9000}': demux = h264

El raspivid La comanda s’utilitza per gravar el vídeo des del mòdul de càmera Raspberry Pi.

Aquí teniu el següent significat de l'ordre següent:

  • L'amplada del vídeo serà de 1920 píxels
  • L'alçada del vídeo serà de 1080 píxels ( -h 1080 ).
  • El vídeo es capgirarà horitzontalment ( -hf ).
  • El vídeo es gravarà a 30 fotogrames per segon ( -fps 30 ).
  • El vídeo es gravarà durant un nombre il·limitat de segons ( -t 0 ).
  • El flux de vídeo s'imprimirà al terminal en lloc de desar-lo al fitxer ( -o - ).

Podeu canviar qualsevol d'aquestes opcions segons convingueu.

El cvlc s’utilitza per obrir un port TCP i enviar el canal de vídeo de la càmera Raspberry Pi al port TCP.

El canal de vídeo es pren de l'entrada estàndard ( stream: /// dev / stdin ) del terminal (mitjançant una canonada | ).

VLC utilitzarà el còdec TS per a la multiplexació ( –Sout ‘#standard {..., mux = ts, ...}’ ) el feed de vídeo d'entrada i el còdec H264 per a la desmultiplexació ( : demux = h264 ) el canal de sortida de vídeo.

El flux de vídeo estarà disponible al port HTTP 9000 ( –Sout ‘#standard {access = http, ..., dst =: 9000}’ ).

Quan hàgiu executat l'ordre i s'hagi completat la memòria intermèdia, podeu transmetre el vídeo des de qualsevol dispositiu de la xarxa mitjançant el reproductor multimèdia VLC.

Reproducció del feed de càmeres des del servidor de càmeres Raspberry Pi

Per accedir a l’alimentació de la càmera des d’altres dispositius de la vostra xarxa domèstica (LAN), heu de conèixer l’adreça IP del vostre Raspberry Pi.

Podeu trobar l'adreça IP del vostre Raspberry Pi des de la interfície de gestió web del vostre encaminador domèstic. En el meu cas, l’adreça IP és 192.168.0.103. Serà diferent per a vosaltres. Per tant, assegureu-vos de substituir-lo pel vostre a partir d’ara.

Si teniu accés a la consola Raspberry Pi, podeu executar l'ordre següent per trobar també l'adreça IP.

$ nom d'amfitrió -I

Un cop conegueu l'adreça IP del vostre Raspberry Pi, obriu l'aplicació VLC Media Player i aneu a Mitjana > Obre el flux de xarxa ... tal com es mostra a la captura de pantalla següent.

Escriviu l'URL del servidor de càmeres al fitxer Introduïu un URL de xarxa secció. En el meu cas, l’URL és http://192.168.0.103:9000 .

Un cop hàgiu escrit l’URL, feu clic a Jugar .

El reproductor multimèdia VLC hauria de començar a transmetre el flux de vídeo des del Raspberry Pi, com podeu veure a la captura de pantalla següent.

Ara, atureu el servidor de càmeres prement + C .

Inici del servidor de càmeres a l'arrencada del sistema

Arrencar manualment el servidor de càmeres cada vegada que arrenceu el Raspberry Pi no és molt pràctic. Per tant, podem crear un servei systemd per al servidor de càmeres que iniciarà automàticament el servidor de càmeres en arrencar.

En primer lloc, creeu un fitxer flux de càmera- HTTP. Servei arxiu al fitxer / etc / systemd / system / directori de la següent manera:

$ Sudo nano /etc/systemd/system/camera-stream-http.service

Escriviu les línies següents al fitxer camera-stream-http.service dossier.

[Unitat]
Descripció = Raspberry Pi Camera Streaming Server
Després de = network.target
[Servei]
Directori de treball = / home / pi
Entorn = APP_RES_WIDTH = 800
Entorn = APP_RES_HEIGHT = 450
Entorn = APP_RES_FPS = 24
Entorn = 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 stream: /// dev / stdin
--sout '#standard {access = http, mux = ts, dst =: $ APP_PORT}': demux = h264 '
StandardOutput = heretar
StandardError = heretar
Reinicia = sempre
Usuari = pi
[Instal·la]
WantedBy = multi-usuari.target

Podeu ajustar les variables d'entorn següents per configurar el servidor de la càmera com convingueu.

Entorn = APP_RES_WIDTH = 800
Entorn = APP_RES_HEIGHT = 450
Entorn = APP_RES_FPS = 24
Entorn = APP_PORT = 9000

Un cop hàgiu acabat, premeu + X Seguit per I, i per desar el fitxer camera-stream-http.service dossier.

Torneu a carregar els dimonis systemd perquè els canvis entrin en vigor de la manera següent:

$ sudo systemctl daemon-recoad

Com podeu veure, el camera-stream-http El servei systemd no s’està executant en aquest moment.

$ sudo systemctl status camera-stream-http.service

Podeu iniciar el camera-stream-http servei del sistema amb l'ordre següent:

$ sudo systemctl iniciar camera-stream-http.service

El camera-stream-http el servei hauria d’estar actiu / en execució, com podeu veure a la captura de pantalla següent. Tan, camera-stream-http el servei systemd funciona.

$ sudo systemctl status camera-stream-http.service

Podeu afegir el fitxer camera-stream-http servei systemd a l’inici del sistema del sistema operatiu Raspberry Pi amb l’ordre següent:

$ sudo systemctl habilita camera-stream-http.service

Perquè els canvis tinguin efecte, reinicieu el Raspberry Pi amb l'ordre següent:

$ sudo reiniciar

Un cop arrencat el vostre Raspberry Pi, el fitxer camera-stream-http El servei systemd hauria d’estar actiu / en execució, com podeu veure a la captura de pantalla següent.

$ sudo systemctl status raspi-home-automation.service

Conclusió

En aquest article, us he mostrat com construir una càmera de seguretat Raspberry Pi i accedir al canal de vídeo des de la vostra xarxa domèstica (LAN) mitjançant el reproductor multimèdia VLC. Si només voleu una configuració senzilla de la càmera de seguretat Raspberry Pi, aquest article us ajudarà a començar.