Construya una red de cámaras de seguridad de Raspberry Pi

Construya una red de cámaras de seguridad de Raspberry Pi

El módulo de cámara oficial de Raspberry Pi se puede usar como cámara de seguridad. Puede compartir la transmisión de video de la cámara en la red y acceder a ella de forma remota desde cualquier dispositivo en la red de su área local (LAN).

Puede usar el reproductor multimedia VLC para compartir la transmisión de video en un puerto TCP y acceder a él desde cualquier dispositivo en la red de su área local (LAN) utilizando VLC Media Player.

En este artículo, le mostraré cómo construir una cámara de seguridad de Raspberry Pi y transmitir la alimentación de video de la cámara desde Raspberry Pi usando el reproductor multimedia VLC.

Entonces empecemos!

Cosas que necesitarás

Para seguir este artículo, necesitará las siguientes cosas:

  1. Raspberry Pi 3 o Raspberry Pi 4
  2. Módulo de cámara de frambuesa pi
  3. Micro-USB (Raspberry Pi 3) o USB Type-C (Raspberry PI 4) Adaptador de alimentación
  4. Tarjeta microSD de 16 GB o 32 GB con Raspberry Pi OS flasheó
  5. Conectividad de red en Raspberry Pi
  6. Portátil o una computadora de escritorio para el escritorio remoto VNC o el acceso SSH a la Raspberry Pi.

NOTA: Si no desea acceder a su Raspberry Pi de forma remota a través de SSH o VNC, debe conectar un monitor, un teclado y un mouse a su Raspberry Pi también. No necesitaré ninguno de estos, ya que conectaré mi Raspberry Pi de forma remota a través de VNC o SSH. Mi configuración se llama la configuración sin cabeza de Raspberry Pi.

Si necesita ayuda para flashear la imagen de Raspberry Pi OS en la tarjeta microSD, consulte mi artículo: Cómo instalar y usar Raspberry Pi Imager.

Si es un principiante Raspberry Pi y necesita ayuda para instalar Raspberry Pi OS en su Raspberry Pi, consulte mi artículo: Cómo instalar Raspberry Pi OS en Raspberry Pi 4.

Si necesita ayuda en la configuración sin cabeza de Raspberry Pi, consulte mi artículo: Cómo instalar y configurar Raspberry Pi OS en Raspberry Pi 4 sin monitor externo.

Si necesita ayuda para conectar el módulo de cámara Raspberry Pi en Raspberry Pi, consulte mi artículo: Uso del módulo de cámara Raspberry Pi.

Habilitando el módulo de cámara Raspberry Pi

La interfaz de la cámara está deshabilitada de forma predeterminada en el sistema operativo Raspberry Pi. Puede habilitarlo desde la herramienta de configuración de Raspberry Pi, config.

Inicie la herramienta de configuración de Raspberry Pi con el siguiente comando:

$ sudo raspi-config

Seleccionar Opciones de interfaz y presionar .

Seleccionar Cámara y presionar .

Seleccionar y presionar .

Prensa .

Seleccionar y presionar .

Seleccionar y presionar . Su Raspberry Pi debe reiniciarse, y los cambios deben aplicarse.

Instalación del reproductor multimedia VLC

VLC Media Player está disponible en el repositorio oficial de paquetes de Raspberry Pi OS. Por lo tanto, es fácil instalarlo en el sistema operativo Raspberry Pi.

Primero, actualice el caché del repositorio del paquete APT con el siguiente comando:

$ sudo apt actualización

Para instalar VLC Media Player, ejecute el siguiente comando:

$ sudo apt install vlc -y

Se debe instalar el reproductor multimedia VLC. En mi caso, ya está instalado.

Creación de un servidor de cámara con reproductor multimedia VLC

El con tensión El comando se usa para grabar video desde el módulo de cámara Raspberry Pi. He explicado cómo usar el con tensión comandar grabar un video usando Raspberry Pi en mi artículo Uso del módulo de cámara Raspberry Pi.

El reproductor multimedia VLC tiene un reproductor de línea de comandos CVLC. Puedes usar el CVLC Comando para compartir una transmisión de video en un puerto TCP. En este caso, la transmisión de video del módulo de cámara Raspberry Pi.

Para compartir la alimentación de video de la cámara Raspberry Pi en un puerto TCP utilizando el reproductor multimedia VLC, ejecute el siguiente comando:

$ raspivid -o --t 0 -hf -w 1920 -h 1080 -fps 30 | CVLC -VVV Stream: /// dev/stdin
--Sout '#standard access = http, mux = ts, dst =: 9000': demux = h264

El con tensión El comando se usa para grabar el video desde el módulo de cámara Raspberry Pi.

Aquí está el siguiente significado del siguiente comando:

  • El ancho del video será de 1920 píxeles
  • La altura del video será de 1080 píxeles (-H 1080).
  • El video se volteará horizontalmente (-HF).
  • El video se grabará a 30 cuadros por segundo (-FPS 30).
  • El video se grabará para un número ilimitado de segundos (-t 0).
  • La transmisión de video se imprimirá en el terminal en lugar de guardarla en el archivo (-O -).

Puede cambiar cualquiera de estas opciones como mejor le.

El CVLC El comando se utiliza para abrir un puerto TCP y enviar la alimentación de video de la cámara Raspberry Pi en el puerto TCP.

La alimentación de video se toma de la entrada estándar (transmisión: /// dev/stdin) del terminal (usando una tubería |).

VLC usará el códec TS para la multiplexación (-Sout '#Standard ..., mux = ts, ...') La alimentación de video de entrada y el códec H264 para demultiplexing (: demux = h264) La alimentación de video de salida.

La transmisión de video estará disponible en el puerto HTTP 9000 (-Sout '#Standard access = http, ..., dst =: 9000').

Una vez que ejecute el comando y el búfer está completo, puede transmitir el video desde cualquier dispositivo en la red utilizando el reproductor multimedia VLC.

Transmisión de la alimentación de la cámara desde el servidor de cámara Raspberry Pi

Para acceder a la alimentación de la cámara desde otros dispositivos en su red doméstica (LAN), debe conocer la dirección IP de su Raspberry Pi.

Puede encontrar la dirección IP de su Raspberry Pi desde la interfaz de administración web de su enrutador de inicio. En mi caso, la dirección IP es 192.168.0.103. Será diferente para ti. Entonces, asegúrese de reemplazarlo con el tuyo de ahora en adelante.

Si tiene acceso a la consola Raspberry Pi, también puede ejecutar el siguiente comando para encontrar la dirección IP también.

$ hostname -i

Una vez que conozca la dirección IP de su Raspberry Pi, abra la aplicación VLC Media Player y vaya a Medios de comunicación > Abra la transmisión de red .. Como se muestra en la captura de pantalla a continuación.

Escriba la URL del servidor de cámara en el Ingrese una URL de red sección. En mi caso, la URL es http: // 192.168.0.103: 9000.

Una vez que haya escrito la URL, haga clic en Jugar.

El reproductor multimedia VLC debe comenzar a transmitir la alimentación de video desde la Raspberry Pi, como puede ver en la captura de pantalla a continuación.

Ahora, detenga el servidor de cámara presionando + C.

Iniciar el servidor de cámara en el arranque del sistema

Comenzar manualmente el servidor de cámara cada vez, arranca su Raspberry Pi no es muy práctico. Por lo tanto, podemos crear un servicio Systemd para el servidor de cámara que iniciará automáticamente el servidor de cámara en el arranque.

Primero, crea un transmisión de la cámara-Http. Servicio archivo en el /etc/systemd/system/ Directorio de la siguiente manera:

$ sudo nano/etc/systemd/system/cámara-stream-http.servicio

Escriba las siguientes líneas en el Camera-stream-http.servicio archivo.

[Unidad]
Descripción = servidor de transmisión de cámara Raspberry Pi
Después = red.objetivo
[Servicio]
WorkingDirectory =/Home/Pi
Ambiente = app_res_width = 800
Ambiente = app_res_height = 450
Ambiente = app_res_fps = 24
Ambiente = app_port = 9000
Execstart =/bin/bash -c 'raspivid -o --t 0 -hf -w $ app_res_width -h
$ App_res_height -fps $ app_res_fps | CVLC -VVV Stream: /// dev/stdin
--Sout "#Standard access = http, mux = ts, dst =: $ app_port": demux = h264 '
StandardOutput = heredar
StandardError = heredar
Reiniciar = siempre
Usuario = PI
[Instalar]
Wantedby = Multi-user.objetivo

Puede ajustar las siguientes variables de entorno para configurar el servidor de cámara como lo ve.

Ambiente = app_res_width = 800
Ambiente = app_res_height = 450
Ambiente = app_res_fps = 24
Ambiente = app_port = 9000

Una vez que haya terminado, presione + X seguido por Y, y Para salvar el Camera-stream-http.servicio archivo.

Recargar los Daemons Systemd para que los cambios entren en vigencia de la siguiente manera:

$ sudo SystemCtl-Daemon-Reload

Como puedes ver, el Camera-stream-http El servicio Systemd no se está ejecutando en este momento.

$ sudo SystemCTL Status Camera-Stream-HTTP.servicio

Puedes comenzar el Camera-stream-http Servicio del sistema con el siguiente comando:

$ sudo systemctl iniciar cámara-stream-http.servicio

El Camera-stream-http El servicio debe estar activo/en ejecución, como puede ver en la captura de pantalla a continuación. Entonces, Camera-stream-http Systemd Service está funcionando.

$ sudo SystemCTL Status Camera-Stream-HTTP.servicio

Puedes agregar el Camera-stream-http Servicio Systemd al inicio del sistema de Raspberry Pi OS con el siguiente comando:

$ sudo SystemCTL Habilitar Camera-Stream-HTTP.servicio

Para que los cambios entren en vigencia, reinicie su Raspberry Pi con el siguiente comando:

$ sudo reinicio

Una vez que sus botas de frambuesa Pi, la Camera-stream-http El servicio Systemd debe estar activo/en ejecución, como puede ver en la captura de pantalla a continuación.

$ sudo systemctl status raspi-home-automatización.servicio

Conclusión

En este artículo, le he mostrado cómo construir una cámara de seguridad Raspberry Pi y acceder a la alimentación de video desde su red doméstica (LAN) utilizando el reproductor multimedia VLC. Si solo desea una configuración simple de la cámara de seguridad de Raspberry Pi, este artículo debería ayudarlo a comenzar.