Como se ha visto a lo largo del mes y medio que llevo manejando cheese, las aplicaciones gráficas generan o sufren limitaciones que muchas veces solo podemos superar con el terminal. La primera limitación era la dependencia de evitar la suspensión del monitor, que habíamos superado en gnome 3 con unas ordenes simples en terminal
xset s off # Disable X windows screen saver
xset -dpms
# Disable display power management system
setterm -blank 0
Sin embargo, la limitación que no he podido superar ha sido la limitación del número de fotos extraídas por cheese. Sin embargo, gracias a motion, un programa de vigilancia y monitorización mediante cámaras GPL2, y a mi amigo hckorootx ya no hay ningún límite a las fotos en ráfaga, salvo el que nos imponga el hardware del que disponemos.
La instalación de motion en Fedora es tan simple como
$ su -
palabra
# yum install motion
La ejecución sería algo más compleja, pero hckorootx nos ha preparado un itinerario simplificado que yo he seguido al pie de la letra y funciona perfectamente
1. Crea un directorio "motion" (o cualquier otro nombre) en home
2. Dentro del directorio crear un archivo "motion.conf" con el siguiente contenido:
process_id_file /var/run/motion/motion.pid
# 1 captura por segundo:
snapshot_interval 1
output_normal off
# tipo de paleta a utilizar (3 = JPEG):
v4l2_palette 3
framerate 2
brightness 0
contrast 0
hue 0
saturation 0
# anchura de la imagen
width 1280
# altura de la imagen
height 720
# calidad de la imagen (porcentaje de 0 a 100)
quality 75
# directorio de destino de las capturas
target_dir /home/lince/motion
# formato para los nombre de los archivos
snapshot_filename %d-%m-%Y/%H-%M-%S
3. Desde terminal, ejecuta:
$ motion -c /home/usuario/motion/motion.conf
Como se puede ver solo he cambiado sobre el original de hckorootx la anchura y altura de las fotos, ya que ahora mismo estoy usando una Logitech 525, que me permite mayor resolución.
El resultado es magnífico; una foto por segundo, sin tener que preocuparse por el apagado del monitor.
Además, tal como ha diseñado el fichero hckorootx las fotos se van guardando en un directorio diferente cada día, con lo cual podemos ir eliminando los días no válidos con un simple rm en terminal o de manera gráfica en nautilus. No recomiendo el uso del explorador gráfico, ya que estamos hablando de decenas de miles de ficheros y nautilus tarda mucho en escanear los ficheros y responder.
El siguiete objetivo será conseguir sacar fotos desde dos cámaras distintas con un solo ordenador. Nos ponemos a ello.
Muchas gracias a Kenneth Lavrsen por escribir esta magnífica aplicación y a hckorootx por estudiarla por mi y facilitarnos su uso.
Para utilizar dos cámaras hay que modificar ligeramente motion.conf y crear un archivo de configuración para cada una.
ResponderEliminar1. Cambios en motion.conf:
process_id_file /var/run/motion/motion.pid
snapshot_interval 1
output_normal off
v4l2_palette 3
framerate 2
brightness 0
contrast 0
hue 0
saturation 0
width 1280
height 720
quality 75
snapshot_filename %d-%m-%Y/%H-%M-%S
thread /home/usuario/motion/thread1.conf
thread /home/usuario/motion/thread2.conf
Como puedes observar, eliminamos la opción "target_dir", ya que cada cámara va a grabar en un directorio distinto, así que eso lo configuraremos en el archivo correspodiente a cada dispositivo; además, declaramos un thread (hilo) para cada cámara.
2. Contenido de thread1.conf:
#nombre de dispositivo para la primera cámara
videodevice /dev/video0
#directorio donde se guardarán las capturas de esta cámara
target_dir /home/usuario/motion/cam1
3. Contenido de thread2.conf:
#nombre de dispositivo para la segunda cámara
videodevice /dev/video1
#directorio donde se guardarán las capturas de esta cámara
target_dir /home/usuario/motion/cam2
Por último, motion se ejecutaría del mismo modo que para una sola cámara:
$ motion -c /home/usuario/motion/motion.conf
Saludos.
Este comentario ha sido eliminado por el autor.
ResponderEliminarSin embargo encuentro un problema en ese motion.conf. Mi intención es usar las dos cámaras de las que dispongo, y una es una c200, que no tiene la resolución 1280x720, si no que solamente puede hacer 640x480. ¿Será posible llevar esa parte de la configuración a los ficheros individuales de cada cámara? Por lo que he visto aquí (http://www.lavrsen.dk/foswiki/bin/view/Motion/MotionGuideGettingItRunning) me parece factible, con lo que sería, por ejemplo el contenido de thread1.conf:
ResponderEliminar#Resolucion
width 1280
height 720
#Calidad
quality 75
#nombre de dispositivo para la primera cámara
videodevice /dev/video0
#directorio donde se guardarán las capturas de esta cámara
target_dir /home/usuario/motion/cam1
y el de la thread2.conf:
#Resolucion
width 640
height 480
#Calidad
quality 75
#nombre de dispositivo para la primera cámara
videodevice /dev/video1
#directorio donde se guardarán las capturas de esta cámara
target_dir /home/usuario/motion/cam2
¿Sería factible?
Así es.
ResponderEliminarEl contenido de motion.conf es una configuración común a todos los dispositivos. Si queremos una configuración diferente para cada cámara, por ejemplo distintas resoluciones, eliminamos los parámetros "width" y "height" de motion.conf y los añadimos a thread1.conf y thread2.conf, tal y como detallas en tu ejemplo.
De hecho, podrías tener un motion.conf sólo con las dos líneas "thread..." y el resto de la configuración en cada threadX.conf (pero sería repetir la parte común).
buenas tengo una tarjeta geovision GV600 para 16 camaras y el sistema motion configurado y corriendo, mi problema se presenta porque tengo 10 camaras y no se como hacer para que linux me permita incluirlas todas, es decir tengo thread1.conf,thread2.conf ... thread10.conf pero el parametro input solo me permite incluir 8 camaras (input 0
ResponderEliminarinput 1 ... input 7, 8=disabled)
La pregunta es que debo poner en los archivos de configuracion para que las camaras 9 y 10 funcionen?
Necesitaríamos saber si se muestra algún error al configurar e intentar activar esa novena cámara o si hay algún mensaje cuando las lanzas. Mientras tanto, la página original de motion (http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHome) tiene mucha información y una FAQ interesante.
ResponderEliminar