obrigado platao!
[ Editado 20/05/2012:
Há uma versão destes scripts para Ubuntu 12.04 Precise Pangolin no post #17
]
(ícone monitor da sua câmera e outros -
versão corrigida)
[os scrpipts deste post (#10) são para Ubuntu 10.04]
Criei scripts que permitem que você determine comandos quando a webcam é inserida e quando é retirada.
Resolvem também o conflito gerado pela troca entre /dev/video0 e /dev/video1 nas várias inicializações do Ubuntu. Resolvido renomeando estes dispositivos para
/dev/camera e
/dev/tv
Ainda tem comandos colocados para:
1) colocar um ícone na área de notifição quando a camera está inserida e retirar o ícone quando a camera é retirada
2) colocar um double buffer na quickcam, para cheese e outros
3) desativar o debug da quickcam para não ficar listando lost frames
Você pode colocar outros comandos.
Quanto aos itens 2 e 3), se você utilizar o driver gspca ao invés de quickcam eles apenas não terão efeito.
Pode deixar os comandos lá para quando você utilizar o driver quickcam,
mas convém comentá-los (#).
baixe os scripts do link...
http://www.divshare.com/download/24671880-d2bagora acho que está tudo ok, mas qualquer problema postem aí.
[
errata: (para downloads antes de 04/05/2011)
Vá na pasta ~/bin e edite o script show_webcam_on
Na linha 17 substitua...
exec 3> >(zenity --notification --window-icon=bin/cameramonitor.xpm --text="Webcam ON!" --listen)
por...
exec 3> >(zenity --notification --window-icon=$HOME/bin/cameramonitor.xpm --text="Webcam ON!" --listen)
(sem essa correção o ícone na área de notificação aparece como um "i")
][ Editado:Vá na pasta ~/bin , edite o script show_webcam_on
e substitua todas as ocorrências de sleep 3 por sleep 5 para economizar CPU.
][ Editado (01/2012):No script...
75-quickcam_usuario.rules...verifique com o comando...
udevadm info -a -p $(udevadm info -q path -n /dev/video
N)
... quais os parâmetros corretos para...
ATTRS{idVendor}
ATTRS{idProduct}
conforme está em
[Editado 21/10/2013] abaixo no post.
Esses parâmetros do barramento PCI não são adequados pois podem variar:
ATTRS{vendor}
ATTRS{device}E no script...
91-quickcam_usuario.rulessudo udevadm info --query=env --name='/dev/seu_dispositivo'
... para saber a variável para colocar em ENV
][ Editado:Para quem seguiu o link a partir do 'Tutorial Instalação PlayTV PVR e Controle Remoto':
Em
75-quickcam_usuario.rules
Substitua...
#KERNEL=="video*", SUBSYSTEM=="video4linux", ATTR{name}=="cx88*", ATTRS{vendor}=="0x14f1", ATTRS{device}=="0x8800", SYMLINK+="tv"
...por...
KERNEL=="video*", SUBSYSTEM=="video4linux", ATTR{name}=="cx88*", ATTRS{vendor}=="0x14f1", ATTRS{device}=="0x8800", SYMLINK+="tv"
][ de reboot após instalar tudo ][ Editado 21/10/2013: Ocorreu que o número do
{device} do PCI mudou de 0x4397 para 0x4396.
Então não é um parâmetro bom para usar pois muda de tempos em tempos.
1)Na regra que cria o link simbólico chamado "camera", substituí o parâmetro {device} e {vendor} do PCI, que são variáveis, pelos
ids da câmera que são absolutamente invariáveis, assim...
script 75-quickcam_usuario.rules:# essa é a regra da webcam
KERNEL=="video*", SUBSYSTEM=="video4linux", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="0840", SYMLINK+="camera"
(Note que têm que ser os
ids da câmera e não do host controller)
2)Na regra que coloca e retira o ícone da câmera no painel de controle, quando ela é inserida ou retirada, os
ids da câmera não funcionaram, pois ao retirar a câmera o ícone não é retirado do painel de controle.
A solução que achei foi colocar apenas o ENV que já diz que é a "Logitech QuickCam USB".
Depois na ACTION apenas o KERNEL=="video*"
E evitei também aqui colocar o parâmetro {vendor} e {device} do PCI, pois pelo menos o {device} se modifica de tempos em tempos. A regra ficou assim...
script 91-quickcam_usuario.rules:ENV{ID_V4L_PRODUCT}=="Logitech QuickCam USB"
ACTION=="add", KERNEL=="video*", RUN+="/bin/bash -c '/usr/local/bin/comandos_quickcam_in.sh'"
ACTION=="remove", KERNEL=="video*", RUN+="/bin/bash -c '/usr/local/bin/comandos_quickcam_out.sh'"
Agora sim esse modelo de regra está bem consistente.
E você pode usar esse modelo para controlar a inserção remoção de outras câmeras também, da mesma forma.
Testei com uma Multilaser e funcionou perfeitamente utilizando o mesmo esquema mostrado aqui em
1) e
2).
]