Skip to content

Câmera Microdia no Ubuntu 8.04

Eu já havia postando anteriormente como fazer funcionar câmeras Microdia usando um driver proprietário e cheio de restrições. Boas novas. Agora desenvolvedores se uniram para construir um driver livre para essa série de câmeras e o driver livre já está bem melhor que o proprietário!

Câmera integrada

Antes de mais nada, nesse post eu estou usando o Ubuntu 8.04, seguindo de perto os passos do blog de Indra Gunawan, um notebook Amazon PC FL 31, a minha câmera é essa da foto acima e ela é lista em um lsusb como:

Bus 005 Device 002: ID 0c45:624f Microdia

Os números 0c45: já indicam que essa é uma câmera Microdia. No momento em que eu escrevo, o driver livre suporta as câmeras Microdias 6242, 624e, 624f, 6270, 627b, 62bb, 145f:013d e 045e:00f4. Para uma lista mais atualizada dê uma olhada no site oficial do driver livre.

Então o primeiro passo é você abrir um terminal e dar um lsusb e observar a saída. Outra coisa importante para você saber é a versão do seu Kernel. Dê um uname -a no terminal e observe a saída. Essa é a minha:

2.6.24-16-generic

Se essa não é sua versão do Kernel, não há alarde, é possível que também funcione com você, mesmo se com outra versão do Kernel ou mesmo outro sabor de Linux.

Vamos precisar de alguns pacotes adicionais, use o seu gerenciador de pacotes (no meu caso o APT) para instalar alguns pacotes que vamos precisar. A partir daqui você precisará estar logado como root.

apt-get install git-core gitk git-gui git-doc curl ctags build-essential

Se você também quiser compilar a documentação do driver, adicione o doxygen à lista. Agora baixamos a última versão do driver usando o git. De preferencia execute esse comando no seu diretório home, pois ele vai criar um diretório microdia que você pode querer preservar.

git clone http://repo.or.cz/r/microdia.git

Se você não recebeu nenhuam mensagem de erro e todo o código-fonte foi baixado, entre no diretório microdia e simplesmente digite:

make

Se tudo deu certo o código-fonte será compilado e você encontrará entre outras coisas um arquivo microdia.ko. Se você teve algum erro, provavelmente foi por algum pacote que você não tinha, baixe esse pacote tente compilar novamente.

Vamos carregar o módulo, como root:

modprobe videodev
insmod microdia.ko

Depois disso, dê um dmesg |grep Microdia -i.

[   39.799824] microdia: Microdia USB2.0 webcam driver startup
[   39.799873] microdia: Microdia USB2.0 Webcam – Product ID 624F.
[   39.799876] microdia: Release: 0100
[   39.799878] microdia: Number of interfaces : 1
[   39.801100] microdia: Microdia USB2.0 Camera is now controlling video device /dev/video0
[   39.801133] usbcore: registered new interface driver usb_microdia_driver
[   39.801138] microdia: v0.0.0 : Microdia USB Video Camera

Se você teve uma saída assim, então as coisas vão indo bem. Você já pode testar sua câmera. Você pode usar um software específico para isso como o Camorama ou usar o próprio Mplayer:

mplayer tv:// -tv driver=v4l:width=640:height=480:device=/dev/video0 -vo x11

Eu sugiro testar primeiro o Camorama porque esses parâmetros do Mplayer funcionam comigo e eu não posso garantir que vão funcionar também com a sua câmera. Principalmente, por conta da resolução que eu usei.

Mas não vá embora agora, quando você reiniciar o computador tudo isso vai pelo espaço. Vamos fazer para que esse módulo seja carregado sempre que você ligar o computador. Vamos cópiar o arquivo .ko para o diretório de módulos do kernel.

cp microdia.ko /lib/modules/`uname -r`/kernel/drivers/media/video/usbvideo/

Se você executou a algusn passos atrás o insmod, então limpe o driver da memória com um rmmod microdia. Agora rode depmod -a para gerar um novo modules.dep e mapear os arquivos no diretório de módulos.

Para terminar, adicione o módulo ao kernel com um

modprobe microdia

Agora o módulo vai ser carregado sempre que você iniciar o computador.

Agora alguns outros e brincadeiras úteis para você fazer com sua webcam. :-D

Espelho: muito útil no dia-a-dia, vale a pena criar um atalho na barra de tarefas ou no seu Desktop. Para usar o Mplayer como um espelho:

mplayer tv:// -tv driver=v4l:device=/dev/video0:width=640:height=480:noaudio -x 800 -y 600 -vf-add pp=hb:a/vb:a,hqdn3d,mirror

Effectv: O effectv é o melhor brinquedo para quem tem uma webcam. E agora ele já está disponível nos repositórios do Ubuntu:

apt-get install effectv

Para usa-lo, aqui eu chamo assim:

effectv -device /dev/video0 -size 640×480

Use as teclas para baixo ou para cima para mudar os efeitos. A tecla espaço reseta o efeito. As teclas numéricas acionam variações. Tab inverte horizontalmente, como em um espelho. Aqui alguns efeitos legais.

Edgeblurtv

HolographicTv

OpTv

SimuraTv

MatrixTv

Published inportuguês

56 Comments

  1. Nuno Nuno

    Caro Silveira,

    estou usando o debian e uma webcam (nao embutida no laptop) da Microdia, que é reconhecida pelo lsusb como:

    0c45:613b Microdia Win2 PC Camera

    O passo a passo é igual para o ubuntu? notei que o arquiv .ko gerado pelo comando make é “sn9c20x.ko” e nao “microdia.ko”, mas seguindo seu procedimento tudo deu certo (sem msg de erro), mas a camera na funciona. Vc pode ajudar?

    Valeu!

  2. wagner gomes wagner gomes

    Ao tentar realizar os passos obtenho o seguinte erro:
    make -C /lib/modules/2.6.32-22-generic/build SUBDIRS= modules
    make[1]: Entrando no diretório `/usr/src/linux-headers-2.6.32-22-generic’
    CHK include/linux/version.h
    CHK include/linux/utsrelease.h
    SYMLINK include/asm -> include/asm-x86
    make[2]: *** Sem regra para processar o alvo `kernel/bounds.c’, necessário por `kernel/bounds.s’. Pare.
    make[1]: ** [prepare0] Erro 2
    make[1]: Saindo do diretório `/usr/src/linux-headers-2.6.32-22-generic’
    make: ** [driver] Erro 2

    Saberia me ajudar?

  3. Carlos Henrique Carlos Henrique

    você instalou os headers do seu kernel para compilar o driver? Acho que você não deve ter o pacote que contém os headers. Caso você, de fato, não o tenha, é só executar o seguinte:

    $ sudo apt-get install linux-headers-$(uname -r)

    Depois, tente compilar novamente o driver da webcam.

    []‘s

  4. Geraldo Geraldo

    Olá!
    Silveira, estou com um problema aqui… sou usuário recente de Ubuntu, minha versão é 11.10, meu notebook é Leadership M745S com cam integrada. A questão é essa:
    o cheese e o camorama abrem minha a imagem, isso significa que o driver está beleza, certo?
    mas quando tento usar conversas de video, no empathy abre a janela, mostra a minha tela, mas acusa incompatibilidade para a outra pessoa receber, e no amsn, ele diz que a cam não existe.
    Você teria alguma ideia do que fazer?
    valeu cara.

  5. Marcos Marcos

    Boa noite, meu velho.

    Estou no Elementary OS, e está mostrando a seguinte mensagem, ao tentar fazer o make:
    make -C /lib/modules/5.3.0-53-generic/build SUBDIRS= modules
    make[1]: Entering directory ‘/usr/src/linux-headers-5.3.0-53-generic’
    make[2]: *** No rule to make target ‘arch/x86/tools/relocs_32.c’, needed by ‘arch/x86/tools/relocs_32.o’. Pare.
    arch/x86/Makefile:232: recipe for target ‘archscripts’ failed
    make[1]: *** [archscripts] Error 2
    make[1]: Leaving directory ‘/usr/src/linux-headers-5.3.0-53-generic’
    Makefile:33: recipe for target ‘driver’ failed
    make: *** [driver] Error 2

    Se puder me ajudar, ficarei muito agradecido.

    Forte abraço.

Leave a Reply

Your email address will not be published. Required fields are marked *