Videosurveillance
**ARTICLE EN COURS DE REDACTION - 20 mars 2011**
L'objectif de ce tutoriel est de vous présenter une manière simple de configurer une vidéo-surveillance sous Linux avec une webcam qui diffuse en temps réel sur une page web (surveillance) et qui enregistre sous forme d'images ou de vidéo en cas de détection de mouvement (capture).
prérequis :
un pc sous GNU/linux (même un vieux, j'ai testé sur un Pentium3-450 de 1999!)
une webcam
une connexion internet (pour la surveillance à distance)
un peu de temps (disons 30 minutes la première fois…5 la deuxième)
les logiciels utilisés pour ce tuto sont :
Motion - pour la capture et la diffusion du flux
l'applet java
Cambozola - pour l'intégration du flux à une page web
tous deux sous licence GNU-GPL v2
Installation de motion
sous debian :
# apt-get install motion
si vous utilisez une autre distribution reportez vous à la doc de votre distribution afin d'installer le paquet adéquat
Copie du fichier de configuration standard : un fichier de configuration pré-existant se trouve dans /etc/motion/motion.conf copiez-le dans /home/“votre_nom_d'utilisateur”/.motion
Configuration de motion
les options sont nombreuses et le fichier de configuration bien commenté, pour une utilisation typique, modifier les options suivantes devrait suffire :
daemon on/off #fonctionner en tâche de fond ou pas
width 640 #largeur de l'image capturée - se reporter à la doc de la webcam pour connaître les dimensions supportées
height 480 #hauteur de l'image capturée
framerate 5 #nombre d'images capturées par seconde - plus ce nombre est grand plus l'image sera fluide mais plus le débit de votre connexion devra être important
threshold 1500 #règle la sensibilité de la détection de mouvement - plus la valeur est faible plus la détection sera sensible
ffmpeg_cap_new on #active la capture de vidéos en cas de mouvement
ffmpeg_video_codec mpeg4 #choisir le format des vidéos enregistrées - mpeg4 pour du .avi mais la capture en flv ou mov sont possibles également
target_dir /chemin/vers/un/repertoire/de/votre/choix #spécifie où seront enregistrées les vidéos et les photos
webcam_port 8081 #choisir le port de diffusion de la vidéo
webcam_maxrate 5 #idem que framerate mais pour la diffusion de la vidéo
webcam_localhost off #mettre sur off pour autoriser les connexions depuis l'extérieur
Lancer motion
(en mode utilisateur)
$ motion
Tester en local
Tester à distance
pensez à régler votre pare-feu et à rediriger le port 8081 (ou autre si vous en avez choisi un autre) de votre routeur : http://votre.ip.publique:8081
Intégrer la vidéo dans une page web
-
copier le fichier cambonzola.jar (qu'on trouve dans le répertoire /dist du fichier .tar.gz) dans le répertoire où se trouve la page web à laquelle vous voulez intégrer la vidéo
insérer le code suivant dans votre page web :
<applet code=com.charliemouse.cambozola.Viewer archive=cambozola.jar width="640" height="480"
style="border-width:1; border-color:gray; border-style:solid;"> <param name=url value="[[http://votre.ip.publique:8081|http://votre.ip.publique:8081]]">
</applet>
Faq / Problèmes rencontrés
ATTENTION : il est impossible de se connecter en local avec l'IP publique, le test doit réellement se faire à partir d'un ordinateur externe au réseau local