He vuelto a recuperar uno de mis juegos favoritos en el ordenador, la webcam con temporizador que ya hiciera en Windows ahora desde Linux, en otro apunte os cuento como montar un servidor de videostreaming, en este muy brevemente os cuento como montar un temporizador para capturar imagenes a intervalos con la webcam y a continuación crear un mpeg del conjunto de fotogramas.
El juego que puede dar esto es enorme, desde filmar la apertura de una flor a camara rapida o como en este caso, las visitas de los gorriones del patio. La calidad no es nada del otro mundo, pero aqui teneis el resultado (los numeritos corresponden a la hora de captura)[youtube http://www.youtube.com/watch?v=UjFGSDXVs9c]

Doy por supuesto que ya tienes tu webcam lista y funcionando en tu Linux (lo cual puede llegar a ser complicado). Para la captura tienes multitud de programas, cada uno con sus pros-contras, yo he optado por Gqcam que viene con SuSE y permite capturar desde la linea de comandos (el propio programa dispone de un menú para automatizar la captura a intervalos de tiempo, pero me daba un error de buffer overflow que no fuí capaz de arreglar, si alguien ha sido capaz de arreglarlo que se manifieste!!).
Crea un script con este contenido (ojo con las comillas):#!/bin/bash
while :
do
minutos=`date +'%M'`
hora=`date +'%H'`
segundos=`date +'%S'`
ahora=`date +'%H%M%S'`
`gqcam -c 1 -b 136 -s -d /home/trebol-a/Desktop/captura.jpg`
sleep 5

`convert -pointsize 24 -gravity South -draw 'text 0,0 "'$hora:$minutos:$segundos'"' -sharpen 30 /home/trebol-a/Desktop/captura.jpg /home/trebol-a/capturas/captura_$hora$minutos$segundos.jpg`

`convert -pointsize 32 -gravity South -draw 'text 0,0 "'$hora:$minutos:$segundos'"' -resize 160 -quality 30 -sharpen 30 /home/trebol-a/Desktop/captura.jpg /home/trebol-a/public_html/captura_webcam.jpg`

sleep 2
done

(El script se podría modificar para que guarde directamente el jpg con un numero en serie, pero me interesaba poder consultar rapidamente la hora de creación y puesto que renombrarlos es muy facil…)

El script hace una captura mediante gqcam, con contraste=1, brillo=136 y swap (aqui tendreis que hacer pruebas para vuestra propia configuración) y lo guarda en el escritorio como captura.jpg
Duerme 5 segundos
A continuación usando convert (ImageMagik) añadimos el texto con la hora, enfocamos algo la imagen y la copiamos a una carpeta donde se ván almacenando con el nombre compuesto de la hora de creacion.
Hace otra copia reescalada y muy comprimida que la imagen original que copia a public_html donde se sobreescribe. Esta imagen la uso para descargarla desde el telefono movil.
Duerme 2 segundos

El proceso se repite cada 7 segundos mientras no lo pare con CTLR+C. Abro una consola CTLR+ALT+F2 (p. ejem) y lanzo el script que se queda todo el dia capturando imagenes.

Por la noche cuando vuelvo a casa, suspendo la ejecución y renombro todos los ficheros generados con Krename para crear la serie numerada de jpgs (fra_0001, fra_0002, fra_0003, etc…) y en linea de comandos ejecuto:jpeg2yuv -Ip -L0 -f 25 -R 0 -j fra_%04d.jpg -b 1 | mpeg2enc -f3 -b 1152 -o video1.m2vCon esto convertimos los jpg a un mpeg (m2v) a 25fps. Un par de minutos para 1500 imagenes.

Ahora a jugar!!

He usado una Spycam M100 Trust comprada en las tiendas de Segunda Mano por 18 euros.