Construa uma rede de câmera de segurança Raspberry Pi

Construa uma rede de câmera de segurança Raspberry Pi

O módulo de câmera oficial do Raspberry Pi pode ser usado como uma câmera de segurança. Você pode compartilhar o fluxo de vídeo da câmera na rede e acessá -lo remotamente a partir de qualquer dispositivo da sua rede local (LAN).

Você pode usar o Media Player VLC para compartilhar o fluxo de vídeo em uma porta TCP e acessá -lo de qualquer dispositivo da sua rede local (LAN) usando o VLC Media Player Player.

Neste artigo, mostrarei como construir uma câmera de segurança Raspberry Pi e transmitir o feed de vídeo da câmera do Raspberry Pi usando o VLC Media Player.

Então vamos começar!

Coisas que você precisará

Para seguir este artigo, você precisará das seguintes coisas:

  1. Raspberry Pi 3 ou Raspberry Pi 4
  2. Módulo de câmera de framboesa pi
  3. Micro-USB (Raspberry Pi 3) ou Usb Type-C (Raspberry Pi 4) Adaptador de energia
  4. Cartão microSD de 16 GB ou 32 GB com Raspberry Pi OS
  5. Conectividade de rede no Raspberry Pi
  6. Laptop ou computador de mesa para desktop remoto VNC ou acesso SSH ao Raspberry Pi.

OBSERVAÇÃO: Se você não deseja acessar seu Raspberry Pi remotamente via SSH ou VNC, você precisa conectar um monitor, um teclado e um mouse ao seu Raspberry Pi. Não precisarei de nada disso, pois estarei conectando meu Raspberry Pi remotamente via VNC ou SSH. Minha configuração é chamada de configuração sem cabeça de Raspberry Pi.

Se você precisar de assistência para exibir a imagem Raspberry Pi OS no cartão microSD, verifique meu artigo: Como instalar e usar o Raspberry Pi Imager.

Se você é um iniciante do Raspberry Pi e precisa de assistência na instalação do Raspberry Pi OS no seu Raspberry Pi, verifique meu artigo: Como instalar o Raspberry Pi OS no Raspberry Pi 4.

Se você precisar de assistência na configuração sem cabeça do Raspberry Pi, verifique meu artigo: Como instalar e configurar o Raspberry Pi OS no Raspberry Pi 4 sem monitor externo.

Se você precisar de ajuda para conectar o módulo de câmera Raspberry Pi no Raspberry Pi, verifique meu artigo: Usando o módulo de câmera Raspberry Pi.

Permitindo o módulo de câmera Raspberry Pi

A interface da câmera está desativada por padrão no Raspberry Pi OS. Você pode habilitá -lo da ferramenta de configuração do Raspberry Pi, Raspi-config.

Inicie a ferramenta de configuração do Raspberry Pi com o seguinte comando:

$ sudo raspi-config

Selecione Opções de interface e pressione .

Selecione Câmera e pressione .

Selecione e pressione .

Imprensa .

Selecione e pressione .

Selecione e pressione . Seu Raspberry Pi deve reiniciar, e as alterações devem ser aplicadas.

Instalando o VLC Media Player

O VLC Media Player está disponível no repositório oficial de pacotes do Raspberry Pi OS. Então, é fácil instalá -lo no Raspberry Pi OS.

Primeiro, atualize o cache do repositório de pacotes apt com o seguinte comando:

$ sudo apt update

Para instalar o VLC Media Player, execute o seguinte comando:

$ sudo apt install vlc -y

VLC Media Player deve ser instalado. No meu caso, ele já está instalado.

Criando um servidor de câmera com vlc mídia player

O raspivid O comando é usado para gravar vídeo do módulo de câmera Raspberry Pi. Eu expliquei como usar o raspivid comando para gravar um vídeo usando o Raspberry Pi no meu artigo Usando o módulo de câmera Raspberry Pi.

O Media Player VLC tem um jogador de linha de comando cvlc. Você pode usar o cvlc comando para compartilhar um fluxo de vídeo em uma porta TCP. Nesse caso, o fluxo de vídeo do módulo de câmera Raspberry Pi.

Para compartilhar o feed de vídeo da câmera Raspberry Pi em uma porta TCP usando o Media Player VLC, execute o seguinte 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

O raspivid O comando é usado para gravar o vídeo do módulo de câmera Raspberry Pi.

Aqui está o seguinte significado do comando abaixo:

  • A largura do vídeo será de 1920 pixels
  • A altura do vídeo será de 1080 pixels (-h 1080).
  • O vídeo será invertido horizontalmente (-HF).
  • O vídeo será gravado em 30 quadros por segundo (-FPS 30).
  • O vídeo será gravado para um número ilimitado de segundos (-t 0).
  • O fluxo de vídeo será impresso no terminal em vez de salvá -lo em arquivo (-o -).

Você pode alterar qualquer uma dessas opções como achar melhor.

O cvlc O comando é usado para abrir uma porta TCP e enviar o feed de vídeo da câmera Raspberry Pi na porta TCP.

O feed de vídeo é retirado da entrada padrão (Stream: /// dev/stdin) do terminal (usando um tubo |).

O VLC usará o codec TS para multiplexação (-Sout '#Standard …, mux = ts,…' ') o feed de vídeo de entrada e o codec H264 para desmultiplexação (: Demux = H264) o feed de vídeo de saída.

O fluxo de vídeo estará disponível na porta HTTP 9000 (-Sout '#Standard Access = http,…, dst =: 9000').

Depois de executar o comando e o buffer está concluído, você pode transmitir o vídeo de qualquer dispositivo da rede usando o vlc media player.

Transmitindo o feed da câmera do servidor de câmera Raspberry Pi

Para acessar o feed da câmera de outros dispositivos em sua rede doméstica (LAN), você precisa saber o endereço IP do seu Raspberry Pi.

Você pode encontrar o endereço IP do seu Raspberry Pi na interface de gerenciamento da web do seu roteador doméstico. No meu caso, o endereço IP é 192.168.0.103. Vai ser diferente para você. Então, certifique -se de substituí -lo por seu a partir de agora.

Se você tiver acesso ao console Raspberry Pi, poderá executar o seguinte comando para encontrar o endereço IP também.

$ hostname -i

Depois de conhecer o endereço IP do seu Raspberry Pi, abra o aplicativo VLC Media Player e vá para meios de comunicação > Fluxo de rede aberto… como mostrado na captura de tela abaixo.

Digite o URL do servidor de câmera no Por favor, insira um URL de rede seção. No meu caso, o URL é http: // 192.168.0.103: 9000.

Depois de digitar no URL, clique em Jogar.

O Media Player VLC deve começar a transmitir o feed de vídeo do Raspberry Pi, como você pode ver na captura de tela abaixo.

Agora, pare o servidor da câmera pressionando + C.

Iniciando o servidor de câmera na inicialização do sistema

Iniciando manualmente o servidor de câmera a cada vez, você inicializa seu Raspberry Pi não é muito prático. Portanto, podemos criar um serviço Systemd para o servidor de câmera que iniciará automaticamente o servidor de câmera na inicialização.

Primeiro, crie um fluxo de câmera-Http. Serviço arquivo no /etc/Systemd/System/ diretório da seguinte maneira:

$ sudo nano/etc/systemd/system/camera-stream-http.serviço

Digite as seguintes linhas no câmera-stream-http.serviço arquivo.

[Unidade]
Descrição = servidor de streaming de câmera Raspberry Pi
Depois = rede.alvo
[Serviço]
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 = herdar
StandardError = herdado
Reinicie = sempre
Usuário = pi
[Instalar]
WantedBy = MultiUser.alvo

Você pode ajustar as seguintes variáveis ​​de ambiente para configurar o servidor da câmera, como achar adequado.

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

Depois de terminar, pressione + X seguido pela Y, e Para salvar o câmera-stream-http.serviço arquivo.

Recarregue os daemons Systemd para que as mudanças entrem em vigor da seguinte forma:

$ sudo systemctl daemon -load

Como você pode ver, o câmera-stream-http O serviço Systemd não está funcionando no momento.

$ sudo Systemctl status camera-stream-http.serviço

Você pode começar o câmera-stream-http Serviço do sistema com o seguinte comando:

$ sudo systemctl Iniciar a câmera-stream-http.serviço

O câmera-stream-http O serviço deve estar ativo/em execução, como você pode ver na captura de tela abaixo. Então, câmera-stream-http Systemd Service está funcionando.

$ sudo Systemctl status camera-stream-http.serviço

Você pode adicionar o câmera-stream-http Serviço Systemd para a inicialização do sistema do Raspberry Pi OS com o seguinte comando:

$ sudo systemctl Ativar câmera-stream-http.serviço

Para que as mudanças entrem em vigor, reinicie seu Raspberry Pi com o seguinte comando:

$ sudo reiniciar

Uma vez que suas botas Raspberry Pi, as câmera-stream-http O serviço Systemd deve estar ativo/em execução, como você pode ver na captura de tela abaixo.

$ sudo Systemctl Status Raspi-Home-Automation.serviço

Conclusão

Neste artigo, mostrei como construir uma câmera de segurança Raspberry Pi e acessar o feed de vídeo da sua rede doméstica (LAN) usando o VLC Media Player. Se você deseja apenas uma configuração simples da câmera de segurança Raspberry Pi, este artigo deve ajudá -lo a começar.