Transforme o seu celular Android em webcam sem fio na plataforma Linux

Neste documento veremos como transformar o seu celular Android em dispositivo de vídeo captura, mais especificamente uma webcam. Com este recurso, softwares como skype e outros de videoconferência poderão utilizar o seu celular como uma câmera sem fio.

[ Hits: 58.325 ]

Por: Alessandro de Oliveira Faria (A.K.A. CABELO) em 16/04/2012 | Blog: http://assuntonerd.com.br


Download e instalação



Primeiramente precisamos baixa os fontes do módulo do kernel para versão 32 ou 64 bits disponível no link abaixo:
Após o download descompacte o pacote com o comando:

tar -zxvf nome_do_pacote

Compile e instale seguindo os comando abaixo:

mkdir droidcam
$ cd droidcam
$ tar -zxvf droidcam-x64.tar.gz
$ sudo ./install


Verifique se tudo esta funcionado corretamente, com o comando "lsmod". O mesmo utilizaremos para constatar a presença do módulo do kernel droidcam_v4l em memória.

lsmod| grep droidcam
droidcam_v4l           14331  0
videodev              102250  2 droidcam_v4l,uvcvideo

Vale a pena mencionar, se o sistema operacional for reiniciado, basta utilizar o comando abaixo para iniciar o módulo do kernel:

# modprobe droidcam_v4l

Se desejar modificar a resolução da imagem, basta executar a instrução a seguir para com os respectivos parâmetros:

# /sbin/insmod /lib/modules/`uname -r`/kernel/drivers/media/video/droidcam_v4l.ko width=LARGURA height=ALTURA

Antes de testar o seu funcionamento, para desinstalar o projeto, execute o comando "rmmodm" e apague alguns arquivos.

# rmmod droidcam_v4l
# rm -rf /usr/bin/droidcam
# rm -rf /usr/bin/X11/droidcam
# rm -f /lib/modules/`uname -r`/kernel/drivers/media/video/droidcam_v4l.ko


Não esqueça de instalar o programa droidcamX disponível no Google Market (antigo Google Market) no seu celular android. Para colocar no ar a sua webcam sem fio, primeiramente execute o programa droidcamX no seu celular e logo em seguida o comando droidcam no Linux. Ao executar o programa no celular veremos o IP que devemos informar no programa recém executado no Linux e pronto!
Linux: Transforme o seu celular 
Android em webcam sem fio na plataforma Linux.

Linux: Transforme o seu celular Android 
em webcam sem fio na plataforma Linux.

Para terminar, como sempre um vídeo para visualizarmos a sua funcionalidade:

Criticas e sugestões : cabelo@opensuse.org
Linux: Transforme o seu celular Android em webcam sem fio na 
plataforma Linux.

Sobre o autor: http://www.netitec.com.br/alessandro
Página anterior    

Páginas do artigo
   1. Introdução
   2. Download e instalação
Outros artigos deste autor

Criando aplicativos para o iPhone no Linux (sem Xcode e MacOS X)

SANE: Compartilhe seu scanner na rede

Conheçam a linguagem D (saiu do forno)!

Instalando o poderoso banco de dados IBM DB2!

openSUSE Linux no Windows 10 sem virtualização

Leitura recomendada

Chromecast - Upgrade de sua TV LED sem Wi-Fi

Debian no Android "from scratch"

Zello - Transforme seu Android (e GNU/Linux) num Walkie Talkie

Tranferência rápida de arquivos do Android para PC via FTP

DriveDroid - Transforme o seu Android em um pendrive bootável

  
Comentários
[1] Comentário enviado por fernandoborges em 16/04/2012 - 10:49h

Parabéns! Sempre trazendo artigos bacanas com novidades incríveis!
Vou testar hoje à noite...

[2] Comentário enviado por rogeriojlle em 16/04/2012 - 11:56h

só complementando a dica do cabelo, tem outro programa que utilizo que dá o mesmo resultado; pra quem não tiver cartão de crédito ou não quer/pode gastar (sem desmerecer o trabalho de ninguém, já que o software apresentado pelo pelo nosso colega tem interface gráfica, é bem fácil de usar, etc e tal), existe uma alternativa (originalmente pra ubuntu/arch) mas que pode ser adaptada para sua distro preferida. Eu uso no Opensuse, embora sem som.
https://play.google.com/store/apps/details?id=com.pas.webcam&hl=pt_BR
na página gerada pelo aplicativo tem um link para o github que instala os devidos softwares em seu computador.
o legal é que depois de tudo instalado voce vai perceber que pode transformar qualquer coisa em webcam, não só o seu android, embora o script esteja otimizado para ele.
Tem alguns macetes que é bom dizer:
certifique-se de que você tenha o pacote curl instalado (distros recém-instaladas nem todas tem), pois o script não verifica isso e é interrompido
se você trocar/atualizar de kernel, tem de reinstalar o pacote do driver loopback e reiniciar o computador mais uma vez, embora dê a ideia que isso foi feito pelo script de atualização

link do script:
https://github.com/bluezio/ipwebcam-gst/

[3] Comentário enviado por cabelo em 16/04/2012 - 12:25h

Ola rogeriojlle:

Obrigado pela sugestão, já conhecia o ipwebcam. Para não causar confusão, acho importante deixar algumas considerações (não interprete como crítica ou justificativa):

1 - Existe a versão gratuita do droidCamX conforme mencionada no aqui no artigo:
https://play.google.com/store/apps/details?id=com.dev47apps.droidcam

2 - Existem muitas alternativas similares de com o código fontes disponíveis, como por exemplo SmartCam:
http://sourceforge.net/projects/smartcam/

3 - Avaliei todas as opções, escolhi o droidCamX por ser mais fácil e o mais compatível com varias versões de kernel.

4 - O texto ficaria muito grande se eu mencionasse todas os pacotes disponíveis.

5 - O IP-cam não é transparente ao sistema operacional, ou seja não cria um device /dev/video[N]. Embora seja possível com loopback e outras técnicas. Mas preferi disponibilizar um artigo para leigos. Para acabar com a conversa mole que no Linux é tudo difícil.


Abraços e obrigado novamente.

[4] Comentário enviado por matux em 16/04/2012 - 14:02h

Cabelo,
Parabéns pelo artigo, muito útil.
Fiz o teste aqui, mas deveria abrir algum player do vídeo quando a aplicação fosse iniciada no PC ou é necessário algum outro player para ver o fluxo de vídeo?
Me conecto com a aplicação no celular, mas não abre o vídeo.

Esse é o meu "lsmod", reparei que não aparecer o "uvcvideo" como no seu.

matux@PC-Desktop:~/programas/droidcamx$ lsmod | grep droidcam_v4l
droidcam_v4l 5591 0
videodev 34361 1 droidcam_v4l

Tem algum idéia do que seja?
abraço!

[5] Comentário enviado por cabelo em 16/04/2012 - 14:55h

Matux

Após a execução do aplicativo execute o mplayer, vlc ou um player de sua preferência, lembre-se que se nenhuma webcam embutida existir o dispositivo será /dev/video0 caso contrário /dev/video1.

Abaixo um exemplo com o MPlayer e VLC

mplayer -tv driver=v4l2:width=640:height=480:device=/dev/video1:fps=30:outfmt=yuy2 tv://

vlc -vvv v4l2:// :v4l2-dev=/dev/video1

[6] Comentário enviado por matux em 16/04/2012 - 15:23h

Cabelo,

Testei com a seguinte linha de comando e funcionou:

# mplayer -tv driver=v4l2:width=640:height=480:device=/dev/video0:fps=30:outfmt=yuy2 tv://

Testado e Aprovado!

Ps. Pena que não funciona o áudio para esta aplicação. :(

[7] Comentário enviado por cabelo em 16/04/2012 - 15:56h

matux:

O audio funciona sim, testei aqui com o VLC !

[8] Comentário enviado por matux em 17/04/2012 - 02:08h

Cabelo,

Maravilha!
Pesquisei algumas opções para carregamento do áudio e não consegui.

O último teste que fiz foi com esse comando:

cvlc v4l2:///dev/video1 –v4l2 -caching=6500 –v4l2-width=420 –v4l2-height=320 –input-slave=alsa://hw:1,0 –alsa-samplerate=16000

Mas ainda sim não consegui capturar o áudio. :(

Mais alguma dica? :D

[9] Comentário enviado por marceloviana em 17/04/2012 - 18:23h

Cabelo,
Muito boa a dica!
Se juntar seu documento com o artigo do Silvio (OpenMeeting 1.9.1 - Instalando no Debian Squeeze virtualizado) dará uma implementação e tanto de vídeo-confêrencia com câmera portátil/dinâmica.

Parabéns e muito obrigado.

[10] Comentário enviado por emccomputadores em 17/04/2012 - 18:56h

Muito interessante as modificações que conseguimos fazer nos celulares por ele ser da plataforma linux.

[11] Comentário enviado por Polnoraref em 24/04/2012 - 10:27h

Muito bom o Artigo fiz aqui e deu certo td perfeito mas é o seguinte, é possível configura-lo com o emesene ou amsn ?? se for possível me explica como faz

Outra duvida

Usamos o droidcam até onde o sinal do nosso roteador alcançar para podermos visualiza-lo no PC entretanto seria possivel configura-lo para transmitir som e imagem usando a internet ou uma intranet; ou seja sera possível usa-lo de qualquer canto do mundo como se estivéssemos dentro de casa ?? Seria mais funcional se estiver essa opção

[12] Comentário enviado por andersonf23 em 07/05/2012 - 19:14h

Muito massa!

[13] Comentário enviado por carlosalberto4ti em 02/10/2012 - 17:08h

Bom até o momento não consegui encontrar um software para o celular ancroid com as seguintes funções :

- Auto inicia no boot do celular
- Seja opensource (qualquer licença)

Seria interessante também :
- Que ao ser aberto fosse solicitado senha para administrar o esse software (ou outro software que faça esse bloqueio ao software do android) .
- Atrás de nat , houvesse como o mesmo se comunicar um o seu servidor e conseguir transmitir , isso tem o redirecionamento de ip no firewall .(ou alguma dica de vpn ou outra coisa que conssiga fazer o mesmo)


Motivo , deixar o tablet e celulares de casa , sendo gravados no zoneminder , assim teria um monitoramento em tempo real e gravado , sem precisar instalar cameras de vigilancia .

Se tiverem indicação ficarei feliz em testa-la e reportar

[14] Comentário enviado por alancads em 07/02/2013 - 20:58h

Massa d+ Cabelo!

Até adicionei no tópico a sua dica em nosso canal #android-br na irc.freenode.net

[]'s



[15] Comentário enviado por henryvieri em 12/08/2013 - 14:00h

Interessante cara, vlw pela dica.

[16] Comentário enviado por removido em 01/10/2013 - 01:26h

Dica pra usar com cabo USB

Siga os mesmos passos de instalação citado na postagem do Cabelo
No android baixe o app droidcam cliente, ou faça o download aqui http://www.mediafire.com/?g8yfpx2lsgsg3d8.

No celular vai em Menu -> Configurações -> Conexões sem fio e rede -> Ancoragem e Roteador Wi-Fi e marque a opção Ancoragem USB

No linux digite os comandos:
# ifconfig usb0 up
# dhclient usb0

Obs.: Essa configuração faz com que seu arquivo /etc/resolv.conf seja alterado, basta acrescentar no final do arquivo um nameserver de sua preferência, para que você consiga acessar a internet no seu computador.

Colocando dois servidores em escuta, um para seu celular conectar e outro para o seu computador conectar através do programa droidcam.

$ nc -vv -l -p 4747 | nc -vv -l -p 2000

No celular vai no aplicativo droidcam (cliente) no menu opções clique em "Connect to DroidCam (WI-FI) Server" depois em "Add new Server" e digite o ip da interface usb0, clique em "Save", após isso basta clicar "Description [...]".

Agora no linux abra o droidcam
$ droidcam &

Marque a opção Wi-Fi/LAN
Phone IP: 127.0.0.1
DroidCam Port: 2000
Clique em connect

Pronto!!
Agora faça o teste!!
$ vlc v4l2:// :v4l2-dev=/dev/video0

[17] Comentário enviado por henryvieri em 12/10/2013 - 01:03h

Muito bom artigo, parabéns....

[18] Comentário enviado por airanabdalla em 10/11/2013 - 13:21h

Como faço para instalar o droid cam pelo terminal?

tenho lubuntu 32 bits e da erro ao digitar aquele tar. Quero usar o SUDO

[19] Comentário enviado por pedrox86 em 03/04/2014 - 15:23h

Boa cabelo!

[20] Comentário enviado por dtgfranca em 06/05/2014 - 08:33h

Muito bom , não vejo a hora de chegar em casa para fazer o teste :D !

[21] Comentário enviado por alvaroted em 25/01/2015 - 16:58h

Galera, tenho pouca experiência no linux, e quando tentei instalar o programa apareceu a seguinte:
alvaro@linux-7wf5:~/Desktop> sudo ./install
-- INSTALL: Webcam parameters: '640' and '480'
-- INSTALL: Home directory: /home/alvaro/.droidcam
-- INSTALL: Building v4l2loopback-dc.ko
make -C /lib/modules/`uname -r`/build M=`pwd`
make: *** /lib/modules/3.11.10-25-desktop/build: Arquivo ou diretório não encontrado. Pare.
make: ** [all] Erro 2
-- INSTALL: v4l2loopback-dc.ko not built.. Failure


Como faço para superar esse problema?
Abraços.

[22] Comentário enviado por anjosdepreto em 04/04/2019 - 18:14h

Boa noite
Segui vários tutoriais para instalar e sempre termino no mesmo problema, quando inicio o Droidcam aparece o seguinte erro Device not found (/dev/video[0-9]).
Did you install it?

Alguém já passou por isso?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts