Para montar un servidor de webcam en una Raspberry Pi se puede usar Motion. Si ya se tiene un sistema raspbian corriendo en la rasp solo hace falta instalar y configurar Motion.
Motion está pensado para capturar y almacenar imágenes de una o varias cámaras, con la posibilidad de detectar eventos, y mostrar las imágenes capturadas en tiempo real vía HTTP, para poder acceder a ellas remotamente a través de una URL.
Instalar Motion
pi@raspberry:~$ sudo apt install motion
Configurar Motion
Motion se controla desde el archivo de configuración /etc/motion/motion.conf
.
Hay dos opciones a cambiar en este archivo para poner en funcionamiento el servidor y poder acceder a las cámaras de manera remota:
daemon = on webcam_localhost = off
Y en el archivo /etc/default/motion
:
start_motion_daemon=yes
Iniciar el servidor Motion
Motion se inicia como cualquier otro servicio:
pi@raspberry:~$ sudo service motion start
El servidor está disponible por defecto en el puerto 8081. El puerto se puede cambiar en el archivo /etc/motion/motion.conf
:
stream_port 8081
Configurar varias cámaras
Para añadir varias cámaras hay que configurar cada una de ellas en un archivo en /etc/motion. Se pueden usar los archivos que vienen como ejemplo /etc/motion/camera1.conf
, /etc/motion/camera2.conf
, etc. Las variables básicas a configurar para cada cámara:
# El archivo al que se asocia la cámara: normalmente /dev/video0 para la primera cámara, /dev/video1 para la segunda cámara... videodevice /dev/video0 # Tipo de cámara: -1 para cámaras USB input -1 # puerto al que se lanza el streaming: cada cámara debe ir a un puerto distinto stream_port 8081
Una vez definidos los valores de cada cámara hay que llamar a los archivos de configuración de cada cámara desde /etc/motion/motion.conf:
camera /etc/motion/camera1.conf camera /etc/motion/camera2.conf
Guardar las imágenes capturadas
Cuando el servidor está funcionando puede guardar imágenes de cada cámara. La sección Image File Output del archivo de configuración /etc/motion/motion.conf
permite definir qué imágenes se guardan, con qué calidad y formato:
# los valores de output_pictures: # off. No se guardan imágenes # on. Se guardan todas las imágenes # first. Se guarda la primera imágen de cada evento # best. Se guardan las imágenes con más movimiento # center. Se guardan las imágenes con movimiento en la parte central del encuadre. output_pictures first quality 75 picture_type jpeg
No tengo muy claro cómo define motion un «evento». En cualquier caso tiene que ver con cambios sustanciales y bruscos en la imagen. Por ejemplo un evento puede durar desde que una persona entra en el encuadre hasta que sale de él; desde que se enciende una luz hasta que se apaga…
La ubicación donde guardar las imágenes se define con la opción target_dir:
target_dir /var/lib/motion
1 comentario
Hola, hay alguna opción para que en vez de hacer fotos, grabe video a traves de cámas ip conectadas por wifi, en vez de por cable?
gracias por adelantado por la información