====== Videosurveillance ====== <code>**ARTICLE EN COURS DE REDACTION - 20 mars 2011** </code> 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 : * [[http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHome|Motion]] - pour la capture et la diffusion du flux * l'applet java [[http://www.charliemouse.com/code/cambozola/|Cambozola]] - pour l'intégration du flux à une page web tous deux sous licence GNU-GPL v2 ===== Installation de motion ===== sous debian : <code># apt-get install motion </code> 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) <code>$ motion </code> ===== Tester en local ===== Depuis votre navigateur internet : [[http://localhost:8081|http://localhost:8081]] ===== 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|http://votre.ip.publique:8081]] ===== Intégrer la vidéo dans une page web ===== * télécharger l'applet java [[http://www.charliemouse.com:8080/code/cambozola/cambozola-latest.tar.gz|Cambonzola]] * 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 : <code><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> </code> ===== Faq / Problèmes rencontrés ===== * si le test local est ok et que le test distant ne fonctionne pas, vérifiez le routage du port et le pare-feu 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