Différences

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

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
motion [Le 24/09/2010, 04:34]
Gemnoc Mise en forme.
motion [Le 24/03/2024, 19:42] (Version actuelle)
201.171.175.88 [Erreur de segmentation, support ioctl]
Ligne 3: Ligne 3:
 ---- ----
  
-====== Motion ====== 
- 
-**Motion** est un logiciel de détection vidéo et qui permet de diffuser un flux vidéo via internet par le protocole HTTP. Il est une solution simple pour diffuser le flux de sa webcam en ligne, ou de détecter des mouvements dans le champ d'une caméra par exemple. 
  
 ===== Pré-requis ===== ===== Pré-requis =====
Ligne 19: Ligne 16:
 ===== Installation ===== ===== Installation =====
  
-Il suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt://motion|motion]]**+Il suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>motion|motion]]**
  
  
Ligne 32: Ligne 29:
  
 En mode utilisateur (hors daemon), le mieux est de copier le fichier **/​etc/​motion/​motion.conf** dans son propre dossier personnel. Dans un [[terminal]] :​ En mode utilisateur (hors daemon), le mieux est de copier le fichier **/​etc/​motion/​motion.conf** dans son propre dossier personnel. Dans un [[terminal]] :​
-  ​sudo cp /​etc/​motion/​motion.conf ~/ +  cp /​etc/​motion/​motion.conf ~/
-Puis, mettre les bon droits : +
-  sudo chown $USER ~/​motion.conf+
  
  
  
 +==== Configuration de base pour une webcam ====
  
 +<note warning>​ATTENTION:​ la syntaxe utilisée dans **cet exemple n'est plus valide**. La dernière version de //motion// apporte un nombre très important de changements.
  
- +Reportez-vous au fichier /​usr/​share/​motion/​exjamples/​motion-dist.conf ou au site du développeur ​ [[http://​www.lavrsen.dk/​foswiki/​bin/​view/​Motion/​ConfigFileOptions]]r</​note>​
- +
-==== Configuration de base pour une webcam ====+
  
 Maintenant nous allons [[:​tutoriel:​comment_editer_un_fichier|éditer le fichier]] ''​motion.conf''​\\ Maintenant nous allons [[:​tutoriel:​comment_editer_un_fichier|éditer le fichier]] ''​motion.conf''​\\
Ligne 51: Ligne 46:
  
 Voici un exemple de motion.conf : Voici un exemple de motion.conf :
-<​file>​ + 
-daemon off +  daemon off 
-process_id_file /​var/​run/​motion/​motion.pid +  process_id_file /​var/​run/​motion/​motion.pid 
-setup_mode off +  setup_mode off 
-videodevice /​dev/​video0 +  videodevice /​dev/​video0 
-v4l2_palette 8 +  v4l2_palette 8 
-input 8 +  input 8 
-norm 0 +  norm 0 
-frequency 0 +  frequency 0 
-rotate 0 +  rotate 0 
-width 640 +  width 640 
-height 480 +  height 480 
-framerate 2 +  framerate 2 
-minimum_frame_time 0 +  minimum_frame_time 0 
-netcam_tolerant_check off +  netcam_tolerant_check off 
-auto_brightness off +  auto_brightness off 
-brightness 0 +  brightness 0 
-contrast 0 +  contrast 0 
-saturation 0 +  saturation 0 
-hue 0 +  hue 0 
-roundrobin_frames 1 +  roundrobin_frames 1 
-roundrobin_skip 1 +  roundrobin_skip 1 
-switchfilter off +  switchfilter off 
-threshold 1500 +  threshold 1500 
-threshold_tune off +  threshold_tune off 
-noise_level 32 +  noise_level 32 
-noise_tune on +  noise_tune on 
-despeckle EedDl +  despeckle EedDl 
-smart_mask_speed 0 +  smart_mask_speed 0 
-lightswitch 0 +  lightswitch 0 
-minimum_motion_frames 1 +  minimum_motion_frames 1 
-pre_capture 0 +  pre_capture 0 
-post_capture 0 +  post_capture 0 
-gap 60 +  gap 60 
-max_mpeg_time 0 +  max_mpeg_time 0 
-output_all off +  output_all off 
-output_normal on +  output_normal on 
-output_motion off +  output_motion off 
-quality 75 +  quality 75 
-ppm off +  ppm off 
-ffmpeg_cap_new on +  ffmpeg_cap_new on 
-ffmpeg_cap_motion off +  ffmpeg_cap_motion off 
-ffmpeg_timelapse 0 +  ffmpeg_timelapse 0 
-ffmpeg_timelapse_mode daily +  ffmpeg_timelapse_mode daily 
-ffmpeg_bps 500000 +  ffmpeg_bps 500000 
-ffmpeg_variable_bitrate 0 +  ffmpeg_variable_bitrate 0 
-ffmpeg_video_codec swf +  ffmpeg_video_codec swf 
-ffmpeg_deinterlace off +  ffmpeg_deinterlace off 
-snapshot_interval 0 +  snapshot_interval 0 
-locate off +  locate off 
-text_right %Y-%m-%d\n%T-%q +  text_right %Y-%m-%d\n%T-%q 
-text_changes off +  text_changes off 
-text_event %Y%m%d%H%M%S +  text_event %Y%m%d%H%M%S 
-text_double off +  text_double off 
-target_dir /​tmp/​motion +  target_dir /​tmp/​motion 
-snapshot_filename %v-%Y%m%d%H%M%S-snapshot +  snapshot_filename %v-%Y%m%d%H%M%S-snapshot 
-jpeg_filename %v-%Y%m%d%H%M%S-%q +  jpeg_filename %v-%Y%m%d%H%M%S-%q 
-movie_filename %v-%Y%m%d%H%M%S +  movie_filename %v-%Y%m%d%H%M%S 
-timelapse_filename %Y%m%d-timelapse +  timelapse_filename %Y%m%d-timelapse 
-webcam_port 8081 +  webcam_port 8081 
-webcam_quality 50 +  webcam_quality 50 
-webcam_motion off +  webcam_motion off 
-webcam_maxrate 1 +  webcam_maxrate 1 
-webcam_localhost off +  webcam_localhost off 
-webcam_limit 0 +  webcam_limit 0 
-control_port 8080 +  control_port 8080 
-control_localhost on +  control_localhost on 
-control_html_output on +  control_html_output on 
-track_type 0 +  track_type 0 
-track_auto off +  track_auto off 
-track_motorx 0 +  track_motorx 0 
-track_motory 0 +  track_motory 0 
-track_maxx 0 +  track_maxx 0 
-track_maxy 0 +  track_maxy 0 
-track_iomojo_id 0 +  track_iomojo_id 0 
-track_step_angle_x 10 +  track_step_angle_x 10 
-track_step_angle_y 10 +  track_step_angle_y 10 
-track_move_wait 10 +  track_move_wait 10 
-track_speed 255 +  track_speed 255 
-track_stepsize 40 +  track_stepsize 40 
-quiet on +  quiet on 
-sql_log_image on +  sql_log_image on 
-sql_log_snapshot on +  sql_log_snapshot on 
-sql_log_mpeg off +  sql_log_mpeg off 
-sql_log_timelapse off +  sql_log_timelapse off 
-sql_query insert into security(camera,​ filename, frame, file_type, time_stamp, event_time_stamp) values('​%t',​ '​%f',​ %q', '​%n',​ '​%Y-%m-%d %T', '​%C'​) +  sql_query insert into security(camera,​ filename, frame, file_type, time_stamp, event_time_stamp) values('​%t',​ '​%f',​ %q', '​%n',​ '​%Y-%m-%d %T', '​%C'​)
-</​file>​+
  
 <note tip> Pour connaitre les résolutions supportées,​ ou tout simplement pour tester sa webcam, ​ **[[apt://​cheese|cheese]]** est un bon candidat.</​note>​ <note tip> Pour connaitre les résolutions supportées,​ ou tout simplement pour tester sa webcam, ​ **[[apt://​cheese|cheese]]** est un bon candidat.</​note>​
Ligne 147: Ligne 141:
  
  
-Pour démarrer le processus : +Pour démarrer le processus :
  
   motion -c motion.conf   motion -c motion.conf
  
  
-==== Configuration pour plusieurs webcams ==== 
  
-Lorsque plusieurs webcams sont utilisées, il faut dédier un fichier //​threadN.conf//​ par webcam. 
  
-A la fin du fichier //​motion.conf//,​ rajouter ​une ligne par webcam. +===== Mettre en place une vidéosurveillance à distance ===== 
-  ​thread /​chemin_jusque_fichier_thread.conf+==== Grâce à Motion et Dropbox ==== 
 +« Vidéosurveiller son domicile », c'est bien, mais encore faut-il pouvoir consulter les images simplement et rapidement, de l'​extérieur de votre réseau ! Je vous propose donc un petit tutoriel, très simple, qui vous permettra de consulter les images de votre système de surveillance depuis votre smartphone ou tout ordinateur connecté à Internet.
  
 +La démarche ci-dessous a été testée sur Ubuntu 12.04 et sur Debian Wheezy 7.1.
  
-Chaque fichier //​thread.conf//​ reprend des paramètres du //​motion.conf// ​qu'​il ​va forcer pour chacune des webcams. +=== Ce qu'​il ​vous faut === 
-Bien renseigner le paramètre ​**videodevice** qui doit etre different pour chaque fichier //​thread.conf//​.+  Votre ordinateur (avec Ubuntu ou Debian), 
 +  ​Une webcam fonctionnant avec votre ordinateur,​ 
 +  ​Votre smartphone,​ 
 +  ​Un compte Dropbox valide.
  
-Par défaut, ​les scripts de post-capture et de pré-capture ​///usr/local/motion-extras/// ne sont pas fournis lors de l'​installation ​du paquet **motion**.+=== Ce qu'il faut faire === 
 +  * Installez Motion sur votre ordinateur. 
 +  * Configurez Motion (avec les [[:sudo | droits d'​administration]],​[[:​tutoriel:​comment_modifier_un_fichier|modifiez]] **/etc/motion/motion.conf**, comme indiquez plus haut) : personnellement,​ en plus des réglages basiques, j'​ajoute de réaliser 1 capture d'​image toutes les demi-heures (cela peut s'​avérer très pratique si la détection de mouvement ne détecte pas quelque chose) : avec les  
 +  * Installer Dropbox sur votre ordinateur comme indiqué ici : [[https://www.dropbox.com/install2]] 
 +  * Une fois l'​installation ​de Dropbox réalisée, un dossier nommé « Dropbox » est créé dans votre dossier personnel : il vous faut maintenant indiquer à Motion (en modifiant la cible de destination des images enregistrées de Motion dans le fichier ​motion.conf à la ligne : « target_dir ») d'​enregistrer les images dans ce nouveau dossier « Dropbox ». 
 +  ​Enfin, installez Dropbox sur votre smartphone et synchronisez-le.
  
-Exemple ​de fichier thread.conf+=== La mise en route de la vidéosurveillance === 
 +  * Démarrez Dropbox sur votre ordinateur :
  
-  videodevice ​/dev/video1 +<​code>​ $ ~/.dropbox-dist/dropboxd </code>
-  input 8 +
-  text_left CAMERA COULOIR 1 +
-  target_dir ​/tmp/​motion +
-  webcam_port 6881+
  
 +  * Démarrer Motion
 +
 +<​code>​sudo motion -c  /​etc/​motion/​motion.conf </​code>​
 +
 +<note tip> Vérifiez à cet instant que vos photographies sont bien enregistrées automatiquement dans le dossier « Dropbox ». si ce n'est pas le cas, vérifier votre fichier de configuration motion.conf. </​note>​
 +
 +Désormais, vos images enregistrées dans le dossier Dropbox sont automatiquement sauvegardées en lignes vers votre stockage Dropbox ! Il ne vous reste plus qu'à les consulter quand vous le souhaitez avec votre smartphone ! ;-)
 +
 +==== Autres méthodes ====
 +
 +Description à venir.
 +
 +
 +===== Problèmes connus =====
 +==== Erreur de segmentation,​ support ioctl ====
 +Si vous avez une erreur de segmentation au lancement, essayez avec :
 +
 +  LD_PRELOAD=/​usr/​lib/​libv4l/​v4l2convert.so motion -c motion.conf
 +  ​
 + Cette commande peux résoudre suur certaines machines , l'​erreur ci dessous :
 +//​VIDIOC_G_JPEGCOMP not supported but it should be (does your webcam driver support this ioctl?)//
 +
 +[[http://​www.lavrsen.dk/​foswiki/​bin/​view/​Motion/​SupportQuestion2009x01x20x183230]]
 +
 +====Unable to find a palette format====
 +
 +Si votre webcam fonctionne avec d'​autres logiciels (cheese etc...) mais pas avec motion, et que l'on a une erreur du type "​unable to find a palette format",​ la commande suivante peut résoudre ce problème :
 +  LD_PRELOAD=/​usr/​lib/​libv4l/​v4l1compat.so motion:
 +  ​
 +Attention sous Ubuntu 14.04 LTS la commande est la suivante
 +  LD_PRELOAD=/​usr/​lib/​i386-linux-gnu/​libv4l/​v4l1compat.so motion
 +  ​
 +Sous Ubuntu 16.04 LTS pour une architecture 64bits la commande est la suivante
 +  LD_PRELOAD=/​usr/​lib/​x86_64-linux-gnu/​libv4l/​v4l1compat.so motion
  
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
-  * [[http://www.lavrsen.dk/twiki/​bin/​view/​Motion/​WebHome|Site officiel de Motion]] +  * [[https://motion-project.github.io/index.html|Site officiel de Motion]]
-  * qmotion :​http://​slist.lilotux.net/​linux/​qmotion/​index_fr.html qui fait entre autre l'​envoi ftp. +
-  * Kmotion avec interface web http://​kmotion.eu/​mediawiki/​index.php/​Main_Page+
  
 ---- ----
-//​Contributeurs :​ ...//  ​+
  • motion.1285295655.txt.gz
  • Dernière modification: Le 24/09/2010, 04:34
  • par Gemnoc