Publié: 11 juin 2022
Vidéotémoignage de Copropriété - Tutoriel #3
L'installation du boîtier enregistreur
Après la caméra, c'est le boîtier enregistreur, aussi appelé NVR (Network Video Recorder), qu'il faut monter et configurer, afin d'avoir un système de vidéotémoignage fonctionnel.
Composants du boîtier enregistreur
Pour l'enregistrement et le chiffrement des vidéos issues de la caméra, tout repose sur un mini-ordinateur appelé Raspberry Pi.
Vous pouvez utiliser un modèle Raspberry Pi 3B, 3B+, ou 4 ; le principal est qu'il ait un port Ethernet, et au moins 1 Go de mémoire vive RAM (Random Access Memory).
Pour l'écran de papier numérique (E-Paper, aussi appelé E-ink), nous recommandons le Waveshare 2.7 inch E-Paper Display Hat (noir&blanc), qui a le même format que le Raspberry Pi 3/4, et dispose de 4 boutons programmables.
Enfin, pour ce qui est de la carte d'horloge RTC (Real Time Clock) - qui maintiendra l'heure actuelle en cas d'arrêt du système - nous préconisons une "RTC PiZero addon", au format PHAT, qui est plus facile à intercaler dans le boîtier qu'une mini-carte RTC dans un autre format. Certains écrans E-Paper, ou cartes d'extensions supplémentaires (batterie de secours...) contiennent parfois un module RTC. Il est dans tous les cas préférable d'utiliser un RTC compatible avec les modules système (ou "overlays") i2c-rtc/ds1307 du Raspberry Pi.
Les matériels ci-dessus sont ceux officiellement supportés par l'image système que nous fournissons. Mais il vous est possible d'utiliser un environnement matériel assez différent, si vous savez adapter la configuration logicielle en conséquence. Par exemple, une autre carte d'horloge (ex. une ds3231 haute précision) nécessitera juste une configuration différente du système d'exploitation du Raspberry Pi, mais un autre écran E-Paper nécessitera de coder une nouvelle extension pour notre logiciel d'enregistrement Witness Angel NVR.
Pour assembler le boitier, il suffit d'empiler le Raspberry Pi, la carte d'horloge, et enfin l'écran de papier numérique.
Pour le stockage des conteneurs vidéo chiffrés, il faut éviter d'utiliser la carte mémoire MicroSD contenant le système d'exploitation, car elle n'aime pas être trop sollicitée en écriture - cela l'use prématurément ; mieux vaut brancher une clé USB de grande capacité mémoire, ou un disque externe SSD de préférence autoalimenté (car il ne faut pas demander trop de puissance au Raspberry Pi). Attention, les clés USB de petit format peuvent chauffer énormément sous utilisation continue, donc mieux vaut une clé longue avec une bonne dissipation thermique.
Enfin, pour alimenter électriquement le Raspberry Pi, préférez un chargeur USB de haute qualité pour éviter tout sous-voltage qui pourrait, dans la durée, nuire à la fiabilité du système.
Installation du système d'exploitation
Comme un PC, le Raspberry Pi a besoin d'un système d'exploitation pour fonctionner ; habituellement on utilise la distribution "Raspberry Pi OS" basée sur Linux Debian, même si bien d'autres sont possibles. Et il faut y ajouter tous les composants logiciels pour faire fonctionner la carte d'horloge, l'écran de papier numérique, et le logiciel d'enregistrement Witness Angel NVR.
Deux possibilités pour cette étape de la préparation du boîtier enregistreur :
- Soit vous installez tout le système depuis zéro, en vous inspirant des étapes de nos recettes de configuration Ansible.
- Soit, si tout votre matériel est compatible, vous utilisez simplement une image système que nous fournissons. C'est-à-dire une copie entière de la carte mémoire, contenant aussi bien le système d'exploitation préconfiguré, que le logiciel d'enregistrement.
C'est la deuxième solution que nous allons privilégier ici.
Pour cela, il faut télécharger l'image système et la graver sur la carte mémoire, en suivant les instructions de la page de l'application Recorder.
Quand la carte mémoire est prête, il faut :
- Insérer la carte mémoire dans le Raspberry Pi
- Relier le boîtier à la caméra via le câble Ethernet
- Relier le boîtier à un kit écran/clavier/souris (cela peut nécessiter des adaptateurs microHDMI/miniHDMI/HDMI)
- Brancher le boîtier à l'électricité pour le démarrer.
Configuration logicielle
Une fois démarré, le Raspberry Pi doit afficher à l'écran l'interface de Bureau de Raspberry Pi OS.
Vérification initiale du système
Avant toute chose, il est intéressant de vérifier que tout est opérationnel dans le système.
- Ouvrez un terminal (ou "shell"), et tapez dedans la commande "ifconfig" (puis faites "entrée"). Si le câble réseau est bien connecté à la caméra, l'adresse IP fixe du Raspberry Pi doit apparaître dans le texte affiché.
- Tapez, dans le le navigateur web du Raspberry PI, l'adresse de l'interface web de la caméra, en vous basant sur l'IP fixe que vous lui aviez donné ; vous devez bien avoir accès à cette interface .
- Testez le flux réseau avec le lecteur vidéo VLC inclus dans le système Raspberry Pi ; il faut pour cela aller dans le menu de VLC, section "Média > Ouvrir un flux réseau", et entrer l'url "rtsp://…" complète. La vidéo issue de la caméra doit s'afficher. Et l'heure/date affichée dessus doit être correcte (sinon, il y a un problème avec le système NTP).
Avertissement : ll est possible que la vidéo affichée par VLC soit altérée/grisée/saccadée si elle est de trop haute qualité pour la puissance du Raspberry Pi, auquel cas cela se verra dans les statistiques du flux ("Outils > Informations du média en cours > Statistiques"), mais l'enregistrement devrait quand même fonctionner, car lui n'a pas besoin de décompresser et afficher la vidéo.
Lancez maintenant l'application WitnessAngel-NVR depuis l'icône du Bureau. Cela va ouvrir une console noire avec des informations de débogage (au cas où), et l'interface graphique de l'application.
Avant de pouvoir démarrer l'enregistrement, grâce au gros bouton de cette page principale, il faut paramétrer le logiciel, en deux grandes étapes :
- Fournir les "gardiens de clés" à utiliser pour sécuriser les enregistrements
- Configurer les différentes adresses et options du logiciel
Configuration des gardiens de clés
Pour la première étape, il faut se rendre dans le menu de l'application, et choisir la rubrique "Gestion des gardiens de clés". La liste est initialement vide.
Nous allons, pour ce tutoriel, utiliser un import par clé USB : insérez dans le Raspberry Pi le les clés USB contenant les "authentifieurs" (identités numériques) de vos gardiens de clés, et cliquez sur le bouton "Import depuis USB".
Il faut alors choisir entre importer uniquement les clés publiques des authentifieurs - celles nécessaires pour chiffrer les enregistrements - et importer aussi les clés privées - ce qui permet d'utiliser plus tard le logiciel comme station de déchiffrement, en cas d'incident dans la copropriété. Par défaut, même si les clés privées sont protégées par des "phrases secrètes", mieux vaut donc n'importer que les clés publiques, par sécurité. Il sera toujours temps de compléter plus tard l'import des clés, et une procédure plus puissante de déchiffrement via Internet est en cours de développement, mi-2022.
Les gardiens de clé importés devraient ainsi apparaître dans la liste. Vérifiez qu'ils sont bien cochés, afin que le système les prenne en compte lors des futurs enregistrements.
Configuration des options du boîtier
Pour la deuxième étape, il faut vous rendre dans les "Paramètres" (icône "engrenage" de la page principale), afin de :
- Entrer l'url du flux RTSP de votre caméra (la même URL que celle testée avec VLC)
- Choisir le nombre minimum de gardiens de clés qui seront nécessaires pour déchiffrer une vidéo. Il est recommandé de configurer un seuil de 3, au minimum, parmi au moins 4 gardiens de clés à importer dans l'étape précédente. Ainsi, les données sont bien protégées, mais restent déchiffrables si l'un des gardiens est indisponible ou a perdu sa phrase secrète.
- Choisir le dossier pour le stockage de vos vidéos (typiquement la clé USB de haute capacité dédiée à cela)
- Potentiellement changer la durée de rétention des vidéos, légalement 30 jours maximum en France)
- Potentiellement changer la durée maximale d'un clip vidéo, chaque conteneur chiffré en contenant un seul
Lancement de l'enregistrement
Une fois ces configurations réalisées, toutes les vérifications doivent être marquées "OK" sur la page principale du logiciel, et le bouton de lancement/arrêt doit être cliquable.
Comment savoir si l'enregistrement fonctionne, une fois le bouton cliqué ?
- Ce bouton reste activé, au lieu de repasser en "non cliqué"
- Des informations sur le flux vidéo défilent dans la console noire.
- Des fichiers apparaissent dans le dossier de sortie que vous avez configuré, et leur taille augmente régulièrement.
- La miniature de début de clip vidéo, en bas de la fenêtre du logiciel, se met à jour après un moment
- Après un temps suffisant, des conteneurs finalisés apparaissent dans la rubrique "Gestion des conteneurs" du menu.
Vous pouvez alors fermer le logiciel graphique, qui n'est qu'une interface d'administration. Un "processus de service", en tâche de fond, se charge des véritables opérations d'enregistrement.
Ce processus est automatiquement relancé si le Raspberry Pi redémarre, et il reprendra alors l'enregistrement si celui -ci était en marche.
L'écran de papier numérique
Pour avoir des informations plus précises sur l'enregistrement en cours, en particulier lorsque le boîtier n'est plus connecté à un écran HDMI, c'est au niveau du papier numérique que tout se passe.
Cet écran est géré directement par le processus de service, il est donc censé être toujours opérationnel.
Si vous cliquez sur le premier bouton de l'écran (tout en haut à gauche), cela arrête ou lance l'enregistrement.
Si vous cliquez sur le deuxième bouton (en dessous du premier), cela déclenche le rafraîchissement de l'écran de papier numérique.
Il affichera alors :
- Une miniature de l'image capturée au début du dernier clip vidéo
- Si l'enregistrement est en marche ou arrêté
- L'état des interfaces réseau
- L'heure du boîtier (PAS de la caméra !)
- Des informations sur le dernier enregistrement.
- Des statistiques sur les ressources disponibles
Si la miniature est récente et correcte, et si le dernier clip vidéo finalisé est récent et de bonne taille, c'est un indicateur fort que tout fonctionne correctement.
Note : la LED verte sur le connecteur Ethernet du Raspberry Pi devrait aussi clignoter continûment, ce qui indique le transfert correct des données depuis la caméra.
Mais il sera utile de vérifier ponctuellement que la caméra est à l'heure et délivre une image de bonne qualité (ex. en s'y connectant directement avec VLC), et qu'il n'y a pas d'interruptions dans les enregistrements (en passant en revue la liste des fichiers conteneurs stockés).
Les autres boutons de l'écran ne sont pas utilisés pour l'instant.