Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos

Já pensou em poder monitorar câmeras ONVIF no seu Linux sem precisar instalar aplicativos e deixar o seu sistema limpo e ainda poder gravar as imagens? Atualmente há opções de software que monitoram essas câmeras mas muitos deles são instáveis e não muito amigáveis com o usuário o que me fez buscar uma solução, digamos raiz.

[ Hits: 567 ]

Por: Andrigo Pinho em 12/08/2025


Gerar script para acessar e gravar várias câmeras de uma vez



Que tal se fazermos um script com acesso à várias câmeras ao mesmo tempo com possibilidade de gravação?
Vou supor que você tenha três câmeras na sua casa: Garagem, Quintal e Entrada.

Para servir de exemplo, esses são os endereços RTSP com usuário e senha definidos de cada uma das suas câmeras:

Entrada rtsp://admin:1234@192.168.1.10/onvif1
Garagem rtsp://admin:1234@192.168.1.11/onvif1
Quintal rtsp://admin:1234@192.168.1.12/onvif1

Antes de colocarmos a mão na massa, vamos criar um diretório para salvar as suas gravações e os arquivos necessários. Vou chamá-lo de Monitoramento. Você pode escolher o nome que quiser, basta substituir o meu exemplo pelo seu nome.

Crie o diretório onde quiser no seu computador. Após isso, vá ao diretório criado, abra o seu editor de textos e vamos criar o primeiro arquivo. Copie o conteúdo abaixo e salve com o nome cameras.conf
# Formato: Nome_da_Câmera rtsp://usuario:senha@IP/onvif1

Entrada rtsp://admin:1234@192.168.1.10/onvif1
Garagem rtsp://admin:1234@192.168.1.11/onvif1
Quintal rtsp://admin:1234@192.168.1.12/onvif1

No mesmo editor de texto, apague todo o conteúdo e vamos criar o script com o nome menu_cameras.sh com o conteúdo abaixo:

#!/bin/bash

CONFIG_FILE="cameras.conf"
PASTA_GRAVACAO="./gravacoes"
mkdir -p "$PASTA_GRAVACAO"


menu() {
echo
echo "===== MENU DE MONITORAMENTO ====="
echo "1) Ver câmeras (ao vivo)"
echo "2) Gravar uma câmera"
echo "3) Sair"
echo "================================="
echo
read -rp "Escolha uma opção: " opcao
}


carregar_cameras() {
i=1
unset nomes links
while IFS='|' read -r nome rtsp; do
if [[ "$nome" =~ ^#.* || -z "$nome" || -z "$rtsp" ]]; then
continue
fi
nomes[$i]="$nome"
links[$i]="$rtsp"
echo "$i) $nome"
((i++))
done < "$CONFIG_FILE"
}


ver_cameras() {
echo
echo "Abrindo câmeras ao vivo..."
carregar_cameras
for idx in "${!links[@]}"; do
echo "Abrindo ${nomes[$idx]}..."
ffplay -fflags nobuffer -flags low_delay -vf "drawtext=text='${nomes[$idx]}':fontsize=20:fontcolor=white:x=10:y=10" "${links[$idx]}" &
done
wait
}


gravar_camera() {
echo
echo "Escolha a câmera para gravar:"
carregar_cameras
echo
read -rp "Digite o número da câmera: " escolha
nome="${nomes[$escolha]}"
link="${links[$escolha]}"

if [ -z "$link" ]; then
echo "Câmera inválida. Tente novamente."
return
fi

arquivo="$PASTA_GRAVACAO/${nome}_$(date +%Y%m%d_%H%M%S).mp4"
echo "Gravando $nome em: $arquivo"
echo "Pressione CTRL+C para parar a gravação."
ffmpeg -i "$link" -vcodec copy -acodec copy "$arquivo"
}

# Loop principal do menu
while true; do
menu
case "$opcao" in
1) ver_cameras ;;
2) gravar_camera ;;
3) echo "Saindo..."; exit 0 ;;
*) echo "Opção inválida. Tente novamente." ;;
esac
done


Não se esqueça de tornar esse script como executável conforme explicado antes.
Página anterior     Próxima página

Páginas do artigo
   1. O que é ONVIF?
   2. Como é possível visualizar câmeras ONVIF no Linux sem Apps
   3. O que é RTSP
   4. Preparativo para a execução do script
   5. Criando o script para visualizar as imagens
   6. Gravando as imagens
   7. Gerar script para acessar e gravar várias câmeras de uma vez
   8. Como usar o script para várias câmeras
Outros artigos deste autor

Topgrade - Atualize seu sistema Linux inteiro com um único comando

Atualizando o Passado: Linux no Lenovo G460 em 2025

Leitura recomendada

Criar um Servidor TeamSpeak no Ubuntu Server

Computador e Placas Antigas Nvidia em Pleno 2019

Habilitar a aceleração por hardware AMD AMF no OBS

Utilização de Webcams Antigas no Sabayon Linux com Kernel 5.7 - 2020

SimpleScreenRecorder - Gravar Vídeos do seu Desktop

  
Comentários

Nenhum coment�rio foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts