Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

documentation:videosurveillance [2012/10/19 20:30] (Version actuelle)
Ligne 1: Ligne 1:
 +====== 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  ​