Pular para o conteúdo

Stream de Video no Linux Maemo para uso do N900 como Webcam

Dica publicada em Linux / Avançado
Alan apsxe
Hits: 7.990 Categoria: Linux Subcategoria: Avançado
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Stream de Video no Linux Maemo para uso do N900 como Webcam

Pesquisando bastante na Internet como utilizar meu N900 como Webcam ou Câmera de Segurança, não encontrei muita informação e após muitos testes estou aqui para dividir esta dica com a galera do VOL.

Esta dica foi feita para a distribuição Linux Maemo que é baseada no Debian.

O stream utilizará o VLC como cliente para acesso ao vídeo.

Será necessário o download do pacote gstreamer-tools.

Vamos aos passos:

1) Conectado a Internet e logado como root baixe o pacote gstreamer-tools:

# apt-get install gstreamer-tools

2) Em /usr/local/bin, crie os seguintes scripts:

Script: stream-camera0

# cd /usr/local/bin
# nano stream-camera0

Dentro do arquivo stream-camera0, copie e cole estas linhas:
gst-launch v4l2src \ ! videoscale ! video/x-raw-yuv,width=320,height=240,framerate=30/1 ! dsph264enc ! rtph264pay ! udpsink host=x.x.x.x port=5000
#x.x.x.x é o ip do computador
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Obs.: Todo o comando precisa estar em uma única linha ou será necessário quebrar o comando com a barra "\".

Script: stream-camera1

#nano stream-camera1

Dentro do arquivo stream-camera1, copie e cole estas linhas:
gst-launch-0.10 v4l2src device=/dev/video1 ! dsph264enc ! rtph264pay ! udpsink host=x.x.x.x port=5434
#x.x.x.x é o ip do computador

O primeiro script irá habilitar o stream de vídeo na câmera do fundo do aparelho o segundo irá habilitar a câmera da frente do aparelho.

Precisamos deixar os dois scripts executáveis:

# chmod +x /usr/local/bin/stream-camera0
# chmod +x /usr/local/bin/stream-camera1

Para testar vamos usar um dos scripts:

# stream-camera1

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock


Isso quer dizer que já está funcionando. No caso da câmera da frente, o Led indicador ficará vermelho informando que está funcionando.

Aperte CTRL+C para cancelar a execução do script.

Agora vamos testar. Você precisa ter o VLC instalado no computador.

Para a câmera secundaria, crie o arquivo abaixo.

Obs.: Usuário do Windows pode criar o arquivo em bloco de notas, clicar em salvar, em formatos escolher "todos os arquivos" e no nome do arquivo colocar "vlc-camera0.sdp", o mesmo serve para o outro arquivo.

Arquivo vlc-camera0:
v=0
m=video 5000 RTP/AVP 96
c=in IP4 x.x.x.x #ip do celular
a=rtpmap:96 H264/90000

Arquivo vlc-camera1:
v=1
m=video 5434 RTP/AVP 96
c=IN IP4 x.x.x.x #ip do celular
a=rtpmap:96 H264/90000

Depois é só abrir com o VLC o arquivo da câmera em execução no N900.

Mais dicas:
  • A porta de acesso pode ser a porta de preferencia do usuário, desde que seja alterada nos arquivos do VLC e do N900.
  • Para melhor qualidade na câmera do fundo, abra a lente e não feche o programa de captura de fotos, depois execute o script da devida câmera, o celular irá apresentar um erro e irá fechar o programa de captura para abrir o stream de vídeo, porém agora a qualidade estará bem melhor.
Quem souber como melhorar a iluminação e cores do stream, eu agradeço.


O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Instalando aMSN no Slackware 12 e 12.2 da forma mais simples possível

Controlando nova interface com HTB + controle de download com upload automático por usuário

Instalando EyeOS no Slackware 12 e 12.2 sem mistérios

VPN PPTP Windows 2003 Server + GRE + Slackware 12

Boot sem interface gráfica (pelo Shell)

Limpando pacotes órfãos e desnecessários com o deborphan

OpenSuSE 10.2 e Windows XP no mesmo HD

Failed to enable unit: Refusing to operate on alias name or linked unit file: bind9.service [RESOLVIDO]

Customizando o Grub no Fedora 33

#1 Comentário enviado por barklome em 07/07/2011 - 18:17h
Muito bom mano!
Vou testar logo,sou programador e tenho esse celular!
#2 Comentário enviado por rogeriojlle em 07/07/2011 - 23:01h
nesse modelo de telefone, as câmeras são acessadas via /dev/videoX ou o gst-launch "emula um dev/video" e captura as imagens de outra forma?
#3 Comentário enviado por barklome em 09/07/2011 - 14:37h
são acessadas sim pelos device nodes
Esse celular é um Linux realmente,não um Android(quem entende de EmbeddedLinux sabe bem a diferença)

Contribuir com comentário

Entre na sua conta para comentar.