Motion

Da GolemWiki.
Versione del 15 apr 2017 alle 18:53 di Giulio (discussione | contributi) (Creata pagina con '<code>motion</code> è un software libero per realizzare piccoli sistemi di videosorveglianza casalinghi facendo uso di una o più webcam. Oltre alla possibilità di collegars...')
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

motion è un software libero per realizzare piccoli sistemi di videosorveglianza casalinghi facendo uso di una o più webcam. Oltre alla possibilità di collegarsi da remoto, motion può rilevare movimenti sospetti e salvare su disco sia istantanee che video, permettendo una successiva analisi, o addirittura inviare mail o messaggi.

motion è al momento in testing nella nostra Officina Informatica!

Installazione ed esecuzione di base

# apt-get install motion
# pacman -S motion

Il programma è già utilizzabile con il file di configurazione di default, a patto di lanciarlo da root (sconsigliato, se non per fare qualche test iniziale).

Innanzitutto bisogna conoscere qual è il nome del device webcam

$ ls /dev/video*

Se il precedente comando non dovesse mostrare alcun device, potrebbe esserci qualche problema. Il device preimpostato in motion è /dev/video0, ma è possibile cambiarlo dal file /etc/motion/motion.conf alla riga videodevice.

# motion

Per vederlo funzionare non c'è nient'altro da configurare, motion autoavvierà un webserver che risponde alla porta :8081. Ci si può collegare digitando sul proprio browser

http://127.0.0.1:8081

Per motivi di sicurezza l'accesso è autorizzato solo dal computer su cui gira motion.

Configurazione

Di seguito viene illustrato come configurare motion per essere lanciato da utente non amministratore.

Cartelle e privilegi

All'installazione viene creata la coppia utente/gruppo motion. È opportuno marchiare files e directory di lavoro come accessibili e scrivibili dal suddetto gruppo.

  • Aggiunta al gruppo motion
# usermod -a -G motion utente
  • File di log - di default il log viene dato nella shell. È preferibile salvare eventuali messaggi di errore ed altre informazioni.
# touch /var/log/motion.log
# chown :motion /var/log/motion.log
# chmod g+w /var/log/motion.log

Editare il file /etc/motion/motion.conf, decommentando la riga ;logfile (il punto e virgola e il cancelletto denotano i commenti) ed impostando il precedente file di log:

logfile /var/log/motion.log
  • File di lock - quando avviato, motion crea un file che indica che è stato preso il controllo della webcam ed evita conflitti con altre eventuali istanze dello stesso programma.
# mkdir -p /var/run/motion
# chown -R :motion motion
# chmod -R g+w motion
  • Archivio immagini - deve essere predisposta una cartella scrivibile dove salvare le immagini e le registrazioni. In questo caso si è scelta una sottocartella nella home (si noti che i comandi che seguono sono dati come utente non privilegiato):
$ cd ~
$ mkdir motion

Anche questa cartella deve essere specificata nel file di configurazione, alla riga target_dir:

target_dir /home/utente/motion


Altre configurazioni importanti

  • Accesso dall'esterno: questo parametro è on per default, dunque la webcam è inaccessibile da altri computer, anche se nella stessa rete del pc server. Una volta terminati gli esperimenti si può commutarlo ad off
stream_localhost off
  • Avviare l'applicazione come demone in background (rimane attiva anche se si fa il logout). Ovviamente al riavvio l'applicazione deve essere ri-eseguita manualmente
daemon on


  • Numero di immagini al secondo da catturare (framerate). È richiesto non scendere sotto 2fps. Da calibrare a seconda della velocità della propria rete.
framerate 2
  • Autenticazione: richiedere una password per vedere la webcam. Qui intervengono due parametri:
# 0 = no password
# 1 = autenticazione di base
stream_auth_method 1
# utente:password
stream_authentication golem:golem