Construisez un réseau de caméras de sécurité Raspberry Pi

Construisez un réseau de caméras de sécurité Raspberry Pi

Le module de caméra officiel Raspberry Pi peut être utilisé comme appareil photo de sécurité. Vous pouvez partager le flux vidéo de la caméra sur le réseau et y accéder à distance à partir de n'importe quel appareil de votre réseau local (LAN).

Vous pouvez utiliser le lecteur VLC Media pour partager le flux vidéo sur un port TCP et y accéder à partir de n'importe quel appareil de votre réseau local (LAN) à l'aide de VLC Media Player.

Dans cet article, je vais vous montrer comment construire une caméra de sécurité Raspberry Pi et diffuser le flux vidéo de la caméra à partir du Raspberry Pi à l'aide du lecteur multimédia VLC.

Alors, commençons!

Des choses dont vous aurez besoin

Pour suivre cet article, vous aurez besoin des choses suivantes:

  1. Raspberry Pi 3 ou Raspberry Pi 4
  2. Module de caméra Raspberry Pi
  3. Micro-USB (Raspberry Pi 3) ou USB Type-C (Raspberry PI 4)
  4. Carte microSD 16 Go ou 32 Go avec Raspberry Pi OS flashée
  5. Connectivité réseau sur le Raspberry Pi
  6. Ordinateur portable ou un ordinateur de bureau pour un accès à télécommande VNC ou SSH au Raspberry Pi.

NOTE: Si vous ne souhaitez pas accéder à votre Raspberry Pi à distance via SSH ou VNC, vous devez également connecter un moniteur, un clavier et une souris à votre framboise PI. Je n'aurai pas besoin de ces éléments car je connecterai mon Raspberry Pi à distance via VNC ou SSH. Ma configuration s'appelle la configuration sans tête de Raspberry Pi.

Si vous avez besoin d'aide pour clignoter l'image Raspberry Pi OS sur la carte microSD, vérifiez mon article: Comment installer et utiliser Raspberry Pi Imageer.

Si vous êtes un débutant Raspberry Pi et que vous avez besoin d'aide pour installer Raspberry Pi OS sur votre framboise PI, consultez mon article: Comment installer Raspberry Pi OS sur Raspberry Pi 4.

Si vous avez besoin d'aide sur la configuration sans tête de Raspberry Pi, consultez mon article: Comment installer et configurer Raspberry Pi OS sur Raspberry Pi 4 sans moniteur externe.

Si vous avez besoin d'aide pour connecter le module de caméra Raspberry Pi sur le Raspberry Pi, consultez mon article: Utilisation du module de caméra Raspberry Pi.

Activation du module de caméra Raspberry Pi

L'interface de la caméra est désactivée par défaut sur le Raspberry Pi OS. Vous pouvez l'activer à partir de l'outil de configuration Raspberry Pi, raspi-config.

Démarrez l'outil de configuration Raspberry Pi avec la commande suivante:

$ sudo raspi-config

Sélectionner Options d'interface et presser .

Sélectionner Caméra et presser .

Sélectionner et presser .

Presse .

Sélectionner et presser .

Sélectionner et presser . Votre Raspberry Pi doit redémarrer et les modifications doivent être appliquées.

Installation du lecteur multimédia VLC

VLC Media Player est disponible dans le référentiel officiel de package de Raspberry Pi OS. Il est donc facile de l'installer sur le Raspberry Pi OS.

Tout d'abord, mettez à jour le cache du référentiel de package APT avec la commande suivante:

$ sudo apt mise à jour

Pour installer VLC Media Player, exécutez la commande suivante:

$ sudo apt install vlc -y

Le lecteur multimédia VLC doit être installé. Dans mon cas, il est déjà installé.

Création d'un serveur de caméras avec lecteur multimédia VLC

Le déroutant La commande est utilisée pour enregistrer la vidéo à partir du module de caméra Raspberry Pi. J'ai expliqué comment utiliser le déroutant Commande pour enregistrer une vidéo à l'aide de Raspberry Pi dans mon article Utilisation du module de caméra Raspberry Pi.

Le lecteur multimédia VLC a un lecteur de ligne de commande cvlc. Vous pouvez utiliser le cvlc Commande pour partager un flux vidéo sur un port TCP. Dans ce cas, le flux vidéo du module de caméra Raspberry Pi.

Pour partager le flux vidéo de la caméra Raspberry Pi sur un port TCP à l'aide du lecteur multimédia VLC, exécutez la commande suivante:

$ RAPPid -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

Le déroutant La commande est utilisée pour enregistrer la vidéo à partir du module de caméra Raspberry Pi.

Voici la signification suivante de la commande ci-dessous:

  • La largeur vidéo sera de 1920 pixels
  • La hauteur de la vidéo sera de 1080 pixels (-h 1080).
  • La vidéo sera renversée horizontalement (-HF).
  • La vidéo sera enregistrée à 30 images par seconde (-FPS 30).
  • La vidéo sera enregistrée pour un nombre illimité de secondes (-t 0).
  • Le flux vidéo sera imprimé sur le terminal au lieu de l'enregistrer dans le fichier (-o -).

Vous pouvez modifier l'une de ces options comme vous le voyez.

Le cvlc La commande est utilisée pour ouvrir un port TCP et envoyer le flux vidéo de la caméra Raspberry Pi sur le port TCP.

Le flux vidéo est tiré de l'entrée standard (stream: /// dev / stdin) du terminal (en utilisant un tuyau |).

VLC utilisera le codec TS pour le multiplexage (-sout '#standard …, mux = ts,…') le flux vidéo d'entrée et le codec H264 pour le démultiplexing (: DEMUX = H264) le flux vidéo de sortie.

Le flux vidéo sera disponible sur le port HTTP 9000 (-sout '#standard Access = http,…, dst =: 9000').

Une fois que vous avez exécuté la commande et que la mise en mémoire tampon est terminée, vous pouvez diffuser la vidéo à partir de n'importe quel appareil du réseau à l'aide du lecteur multimédia VLC.

Streaming le flux de la caméra à partir du serveur de caméra Raspberry Pi

Pour accéder au flux de la caméra à partir d'autres appareils de votre réseau domestique (LAN), vous devez connaître l'adresse IP de votre framboise PI.

Vous pouvez trouver l'adresse IP de votre Raspberry Pi à partir de l'interface de gestion Web de votre routeur domestique. Dans mon cas, l'adresse IP est 192.168.0.103. Ce sera différent pour vous. Alors, assurez-vous de le remplacer par le vôtre à partir de maintenant.

Si vous avez accès à la console Raspberry Pi, vous pouvez également exécuter la commande suivante pour trouver l'adresse IP également.

$ hostname -i

Une fois que vous connaissez l'adresse IP de votre Raspberry Pi, ouvrez l'application VLC Media Player et allez à Médias > Stream de réseau ouvert… Comme indiqué dans la capture d'écran ci-dessous.

Tapez l'URL du serveur de caméras dans le Veuillez saisir une URL du réseau section. Dans mon cas, l'URL est http: // 192.168.0.103: 9000.

Une fois que vous avez tapé l'URL, cliquez sur Jouer.

Le lecteur multimédia VLC doit commencer à diffuser le flux vidéo à partir du Raspberry Pi, comme vous pouvez le voir dans la capture d'écran ci-dessous.

Maintenant, arrêtez le serveur de caméras en appuyant sur + C.

Démarrage du serveur de caméras sur le démarrage du système

Démarrage manuellement du serveur de caméras à chaque fois, vous démarrez votre framboise PI n'est pas très pratique. Ainsi, nous pouvons créer un service SystemD pour le serveur de caméras qui démarrera automatiquement le serveur de caméras sur le démarrage.

Tout d'abord, créez un caméra-Http. Service fichier dans le / etc / systemd / system / Répertoire comme suit:

$ sudo nano / etc / systemd / système / caméra-stream-http.service

Tapez les lignes suivantes dans le caméra-stream-http.service déposer.

[Unité]
Description = Raspberry Pi Camera Streaming Server
After = réseau.cible
[Service]
WorkingDirectory = / home / pi
Environnement = app_res_width = 800
Environnement = app_res_height = 450
Environnement = app_res_fps = 24
Environnement = 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 = héritage
StandardError = héritage
Redémarrer = toujours
Utilisateur = pi
[Installer]
Recherché = multi-utilisateurs.cible

Vous pouvez ajuster les variables d'environnement suivantes pour configurer le serveur de caméras comme vous le voyez.

Environnement = app_res_width = 800
Environnement = app_res_height = 450
Environnement = app_res_fps = 24
Environnement = app_port = 9000

Une fois que vous avez terminé, appuyez sur + X suivie par Y, et Pour sauver le caméra-stream-http.service déposer.

Recharger les démons Systemd pour que les changements prennent effet comme suit:

$ sudo Systemctl Daemon-Reload

Comme vous pouvez le voir, le caméra-stream-http Le service Systemd ne fonctionne pas pour le moment.

$ sudo systemctl status caméra-stream-http.service

Vous pouvez commencer le caméra-stream-http Service système avec la commande suivante:

$ sudo systemctl start caméra-stream-http.service

Le caméra-stream-http Le service doit être actif / en cours d'exécution, comme vous pouvez le voir dans la capture d'écran ci-dessous. Donc, caméra-stream-http SystemD Service fonctionne.

$ sudo systemctl status caméra-stream-http.service

Vous pouvez ajouter le caméra-stream-http Service SystemD au démarrage du système de Raspberry Pi OS avec la commande suivante:

$ sudo systemctl activer la caméra-stream-http.service

Pour que les modifications prennent effet, redémarrez votre Raspberry Pi avec la commande suivante:

$ sudo redémarrer

Une fois vos bottes de framboise Pi, le caméra-stream-http Le service SystemD doit être actif / en cours d'exécution, comme vous pouvez le voir dans la capture d'écran ci-dessous.

$ sudo systemctl status raspi-home-automation.service

Conclusion

Dans cet article, je vous ai montré comment construire une caméra de sécurité Raspberry Pi et accéder au flux vidéo à partir de votre réseau domestique (LAN) à l'aide du lecteur multimédia VLC. Si vous voulez juste une simple configuration de la caméra de sécurité Raspberry Pi, cet article devrait vous aider à démarrer.