Sistema de grabación de seguridad totalmente funcional, gratuito y con software libre (Actualizado)

Hacker

En este artículo explico cómo podemos montar un sistema de grabación para nuestra empresa, el interior o exterior de nuestra tienda, o para vuestra casa si dejamos a vuestros hijos solos o con una niñera, etc, y todo con utilidades que tenemos en el sistema operativo GNU/Linux que, además de ser libres, son gratis y totalmente estables.

camorama - linux - webcam

camorama - linux - webcam

Para montar este servicio de grabación, yo uso Debian GNU/Linux o Ubuntu, una cámara Logitech Quickcam (la mía es un modelo bastante antiguo, por cierto) que no vale más de 35 euros y la aplicación Camorama, que podéis descargar fácilmente desde los repositorios de Debian o Ubuntu con la orden:


aptitude install camorama

En Debian o en Ubuntu, la Quickcam será reconocida perfectamete pero por si estás usando otra distribución de GNU/Linux puedes instalar un par de paquetes que instalan los drivers de una webcam Logitech Express (en mi caso) o, sin exrpess, y unas utilidades para la webcam. Para ello, ejecuta la orden siguiente:


aptitude install qc-usb-source
aptitude install qc-usb-utils

Para saber si tienes bien configurada y detectada la webcam Logitech, haz un lsusb y analiza la salida:


joan@lenovo:~/Escriptori/test2$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0a5c:2110 Broadcom Corp. Bluetooth Controller
Bus 005 Device 003: ID 046d:0850 Logitech, Inc. QuickCam Web
joan@lenovo:~/Escriptori/test2$

Si no te la detecta, mira primero el dmesg para saber qué está pasando en tu máquina nada más metes el cable USB de tu webcam.

Modalidad de generar las imágenes en el ordenador local. PROS: no necesitas internet y es lo más fácil de hacer. CONTRAS: sólo puedes ver las fotos cuando llegues a tu casa o a tu tienda y es imposible visualizarlas remotamente.

Modalidad de exportar las imágenes por FTP a un servidor: PROS: puedes hacer un seguimiento de seguridad de tu empresa o casa fácilmente desde el servidor o montando un servidor web y previsualizando las imágenes en tiempo real en Internet. CONTRAS: Necesitas un servvidor FTP y tener unos mínimos conocimientos técnicos.

Modalidad de exportar las imágenes a un disco externo: PROS: es muy fácil de configurar y puedes tener una copia de seguridad fácilmente. CONTRAS: a no ser que tu disco duro esté online (lo que comúnmente hoy en día se llama "la nube") no podrás acceder a ellas hasta que no accedas físicamente delante del disco duro externo.

Bueno pues vista la teoría, vayamos a la práctica. Básicamente, estas tres modalidades son las que las empresas de seguridad ofrecen a las tiendas, fábricas y hogares, a parte de un teléfono 24 horas. Pero con camorama, tienes más o menos todo lo que necesitarías para hacer un seguimiento normal de tu hogar.

La aplicación y la ventana de preferencias lucen así:

Camorama - Ubuntu

Desde la ventana de la aplicación (la de la izquierda en la captura de pantala) puedes cambiar los parámetros como saturación, luz, colores, ruido, etc, así como también tomar fotos de forma manual haciendo click sobre el botón.

Y a continuación te muestro las opciones de configuración que necesitamos para montar alguna de las tres modalidades de copia de imágenes comentadas en este artículo.

En esta primera ventana, le diríamos dónde queremos copiar las fotos (ya sea en un directorio local, en una unidad montada remota o en un dispositivo USB externo), a tu elección. Como puedes ver es muy sencillo todo.

Camorama - Preferencias

Y en esta otra pestaña podríamos tener la modalidad de lanzar las imágenes en un servidor remoto FTP, ya sea porque las queremos tener allí por seguridad o por que se trata de un servidor web donde mostramos en tiempo real lo graba la cámara Logitech. Como verás, también es muy intuita esta pestaña:

Camorama - Preferencias

Y en la primera pestaña le podéis decir cada cuanto queréis que haga una captura, por defecto pone un minuto, pero podéis decirle los minutos a vuestra elección.

Grabando vídeo a partir de la webcam Logitech Express

Como ya sabréis, un vídeo no es más que un montón de imágenes apiladas que se distribuyen por frames/segundo, puedes tener 100 imágenes y distribuirlas a frame/segundo y se verá a saltos de un segundo durante 100 segundos, pero si pones 20 frames/segundo hará un vídeo tipo "timelapse" más o menos como los que estamos acostumbrados a ver en vídeos como éste, o incluso podemos aumentar la cantidad de frames por segundo (30/s, 40/s...) para tener todavía una mayor calidad y velocidad en el resultado final del video como solemos ver la televisión o los vídeos en Youtube.

Bien, pues lo único que hay que hacer para obtener vídeo a partir de la webcam es apilar tantas imágenes por minuto como quieras... quizás 60 imágenes por minuto es el resultado típico de las webcams de seguridad, como por ejemplo las que la Generalitat Valenciana tiene desplegadas por toda la Comunidad.
El modo de funcionamiento de este proyecto de la Generalitat Valenciana es la segunda modalidad que explico en este artículo, es decir webcam -> servidor FTP remoto.

Para ello, no usaremos camorama - que sólo graba 1 minuto por foto - sino otra aplicación llamada qcam, que es posible lanzarla siempre que quieras al vuelo desde la consola de comandos o desde un script. Para instalar qcam desde los repositorios de Debian GNU/Linux o Ubuntu hay que lanzar la orden siguiente:


aptitude install qcam

Una vez instalado, si ejecutas la ayuda podrás saber cómo crear las imágenes que deseas, como el tamaño, el color, la altura, el brillo, la escala zoom, etc. Para ello ejecuta qcam --help y obtendrás:


root@lenovo:/home/joan# qcam --help
Usage:
qcam [options]
Options:
-x width Set width
-y height Set height
-p port Set port
-B bpp Set bits per pixel
-c val Set contrast
-w val Set white balance
-W Auto-set white balance
-b val Set brightness
-E "vals" Autoexposure mode, parameters required
-D Remove dark speckling
-e Perform edge detection
-H Display Histogram
-s val Set scaling factor (1, 2, or 4)
-t val Set top line of scan
-l val Set left column of scan
-f file Select configuration file
-u Force unidirectional mode
-V Show version information
-j Output in JPEG format
-J file Output to file in JPEG format
-q val JPEG compression quality - default=50
-L Loop continuously (jpeg only)
-d file Dump cam information to file
root@lenovo:/home/joan#

Bien, pues para crear un sistema de grabación por video sólo es necesario:

[1] Lanzar qcam cada segundo

[2] Guardar las imágenes en /var/www (en caso de tener un servidor web en local y acceso desde Internet) o en un servidor FTP con un servidor web.

[3] Hacer una página que muestre la última imagen de la grabación.

[4] En la cabecera de la página web, antes de cerrar el header pondremos este código que actualiza la web cada segundo y, por lo tanto, veremos una imagen actualizada segundo a segundo en la web que se corresponderá con las fotos que la webcam Logitech hace también segundo a segundo. El código es:



Pues así de fácil. Os he mostrado como podemos tener un servicio casero de seguridad en casa o en nuestra empresa totalmente profesional y utilizando únicamente herramientas de software libre, tanto para grabación con imágenes como grabación con video simulado segundo a segundo.

Espero que os sea útil ;-)

Doncs bé això és tot, espere que trobes útil aquest article i que et motive a compartir els teus trucs, els teus coneixements i els teus experiments amb el Programari Lliure. Pensa-ho, va, que la Comunitat del Programari Lliure va creixent gràcies a la documentació, el disseny, la formació o la programació, sigues part de la Comunitat :-)

La cultura i la lliure circulació de les idees és l'arma més efectiva contra les dictadures del pensament i contra la ignorància.