En este artículo voy a demostrar cómo detectar una Webcam (cámara Web) y verificar su funcionamiento en GNU/Linux con la aplicación Webcamoid.

Más específicamente se trata de una Webcam USB. Antes de conectarla existen los siguientes dispositivos USB en el sistema:

root@vaio:/home/emi# lsusb
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 5986:02d3 Acer, Inc 
Bus 001 Device 005: ID 0489:e036 Foxconn / Hon Hai 
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

A fin de saber con exactitud cuál dispositivo corresponde con la Webcam, conviene guardar la salida de lsusb antes de conectarla a un puerto USB.

root@vaio:/home/emi# lsusb > /tmp/lsusb.1

Conectar la cámara a un puerto USB. Luego de hacerlo, el kernel Linux debería detectar el nuevo dispositivo:

root@vaio:/home/emi# tail -n 17 /var/log/messages 
Aug 11 11:23:14 vaio kernel: [  717.997321] usb 2-2: new full-speed USB device number 5 using xhci_hcd
Aug 11 11:23:14 vaio kernel: [  718.146623] usb 2-2: config 1 interface 0 altsetting 1 endpoint 0x6 has invalid wMaxPacketSize 0
Aug 11 11:23:14 vaio kernel: [  718.146628] usb 2-2: config 1 interface 0 altsetting 2 endpoint 0x6 has invalid wMaxPacketSize 0
Aug 11 11:23:14 vaio kernel: [  718.146631] usb 2-2: config 1 interface 0 altsetting 3 endpoint 0x6 has invalid wMaxPacketSize 0
Aug 11 11:23:14 vaio kernel: [  718.146635] usb 2-2: config 1 interface 0 altsetting 4 endpoint 0x6 has invalid wMaxPacketSize 0
Aug 11 11:23:14 vaio kernel: [  718.146639] usb 2-2: config 1 interface 0 altsetting 5 endpoint 0x6 has invalid wMaxPacketSize 0
Aug 11 11:23:14 vaio kernel: [  718.146642] usb 2-2: config 1 interface 0 altsetting 6 endpoint 0x6 has invalid wMaxPacketSize 0
Aug 11 11:23:14 vaio kernel: [  718.146644] usb 2-2: config 1 interface 0 altsetting 7 endpoint 0x6 has invalid wMaxPacketSize 0
Aug 11 11:23:14 vaio kernel: [  718.146647] usb 2-2: config 1 interface 0 altsetting 8 endpoint 0x6 has invalid wMaxPacketSize 0
Aug 11 11:23:14 vaio kernel: [  718.146654] usb 2-2: New USB device found, idVendor=093a, idProduct=2628, bcdDevice= 1.00
Aug 11 11:23:14 vaio kernel: [  718.146657] usb 2-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Aug 11 11:23:14 vaio kernel: [  718.147883] gspca_main: gspca_pac7302-2.14.0 probing 093a:2628
Aug 11 11:23:14 vaio kernel: [  718.148274] input: gspca_pac7302 as /devices/pci0000:00/0000:00:14.0/usb2/2-2/input/input18
Aug 11 11:23:14 vaio mtp-probe: checking bus 2, device 5: "/sys/devices/pci0000:00/0000:00:14.0/usb2/2-2"
Aug 11 11:23:14 vaio mtp-probe: bus: 2, device: 5 was not an MTP device
Aug 11 11:23:14 vaio mtp-probe: checking bus 2, device 5: "/sys/devices/pci0000:00/0000:00:14.0/usb2/2-2"
Aug 11 11:23:14 vaio mtp-probe: bus: 2, device: 5 was not an MTP device

En este caso se observa el mensaje "New USB device found, idVendor=093a, idProduct=2628, bcdDevice= 1.00".

Ahora debería aparecer el nuevo dispositivo en la salida de lsusb:

root@vaio:/home/emi# lsusb
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 5986:02d3 Acer, Inc 
Bus 001 Device 005: ID 0489:e036 Foxconn / Hon Hai 
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 005: ID 093a:2628 Pixart Imaging, Inc. 
Bus 002 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Para identificarlo más rápidamente es conveniente volver a volcar la salida de lsusb a un nuevo archivo:

root@vaio:/home/emi# lsusb > /tmp/lsusb.2

Luego comparar ambos (antes y después de conectar el dispositivo):

root@vaio:/home/emi# diff /tmp/lsusb.1 /tmp/lsusb.2
7a8
> Bus 002 Device 005: ID 093a:2628 Pixart Imaging, Inc. 

Se observa que es dispositivo número 5 en el bus 2: "Pixart Imaging, Inc."

Generalmente no es necesario instalar ningún tipo de controlador para que la cámara funcione, salvo casos muy específicos (ver las referencias al final del artículo).

Prueba de la cámara con Webcamoid

Webcamoid es una de las mejores aplicaciones para Webcam disponibles para GNU/Linux (aunque además está disponible para Mac y Windows). Para instalar Webcamoid en Debian/Devuan y derivados, simplemente ejecutar:

# apt-get install webcamoid

Iniciar la aplicación ejecutando webcamoid o en XFCE desde el menú "Multimedia > Webcamoid":

Para configurar la nueva cámara, hacer clic en el ícono con forma de cámara con la leyenda "Configure sources". Luego presionar el botón "+":

Agregar una descripción y ruta al dispositivo. Típicamente será el dispositivo /dev/video1, /dev/video2, /dev/video3 etc.

Finalmente seleccionar la nueva cámara agregada desde el panel izquierdo:

Como se observa, Webcamoid posee una gran cantidad de efectos a aplicar:

Además permite tomar fotos y grabar video.

Referencias

Compartí este artículo