Webcam Philips PCA646 en Linux

Nestor aka lchvdlch me prestó la webcam para ver si lograba hacerla funcionar, un webcam algo antigua, Philips PCA646 con conexión USB, no sonaba mal asi que puse manos a la obra.

Luego de buscar un poco encontré que el módulo que necesitaba cargar era pwc, no lo tenía disponible en mi kernel, voy a recompilar y primer problema, no aparecía en la lista de opciones, tengo que decir que estoy usando un kernel 2.6.11. Luego de un poco más de investigación descubrí que el bendito pwc era un driver del cual solo habían binarios, mas no código fuente, ese era el motivo por el cual no aparecía como opción dentro del kernel.

Los drivers en cuestión se pueden encontrar en: http://www.smcc.demon.nl/webcam/ donde se puede leer que el autor ha decidido no mantener mas esos el driver, algo realmente lamentable porque por lo visto el driver era muy bueno; normalmente no me molestaría usar un driver antiguo, pero el problema es que el driver fué creado para kernels 2.4 y yo tengo uno que es 2.6 por lo tanto no es compatible a menos que haga un dirty hack y lamentablemente mis conocimientos no llegan a tanto.

Mi búsqueda continuo y llegué a los foros de Gentoo que probablemente sea el mejor foro de Linux que existe y así me enteré de la existencia de un nuevo driver, esta vez open source y con licencia GPL que sirve de reemplazo para el pwc original. El nuevo driver se consigue en: http://www.saillard.org/pwc/ y sirve para un amplio rango de webcams, incluído el modelo que tengo, claro esta.

Para los afortunados usuarios de gentoo bastará con hacer:

# emerge usb-pwc-re

los que no, tendrán que bajar los parches para su versión de kernel u optar por bajar el código fuente, compilarse su propio módulo y agregarlo a su kernel.

Si ya tenemos el módulo entonces llego la hora de la verdad, conecto la webcam y verifico que haya sido reconocida.


# lsusb
Bus 002 Device 004: ID 0471:0303 Philips PCA646VC WebCam
Bus 002 Device 001: ID 0000:0000

Muy bien, mi kernel sabe que la webcam ha sido conectada, ahora vamos a cargar el módulo


# modprobe pwc

Y luego ejecuté un dmesg para verificar que todo estaba bien


# dmesg | tail

pwc Philips webcam module version 10.0.6-unofficial loaded.
pwc Supports Philips PCA645/646, PCVC675/680/690, PCVC720[40]/730/740/750 & PCVC830/840.
pwc Also supports the Askey VC010, various Logitech Quickcams, Samsung MPC-C10 and MPC-C
30,
pwc the Creative WebCam 5 & Pro Ex, SOTEC Afina Eye and Visionite VCS-UC300 and VCS-UM10
0.
pwc Default image size set to vga [640x480].
pwc Trace options: 0x00a1
pwc Philips PCA646VC USB webcam detected.
pwc Registered as /dev/video1.
usbcore: registered new driver Philips webcam

Gotcha! parece que todo esta bien, llegó la hora de probarla, para ello me instalé Camstream, lo ejecuté y todo estaba bien! la webcam funcionaba perfectamente, peeeeero habí un pequeño detalle que me inquietaba, la resolución era muy baja 🙁

Leyendo la documentación del módulo encontré que podí lanzar varios parámetros junto con el modulo, incluído el size 😉

When you load the module you can set some default settings for the
camera; some programs depend on a particular image-size or -format and
don’t know how to set it properly in the driver. The options are:

size
Can be one of ‘sqcif’, ‘qsif’, ‘qcif’, ‘sif’, ‘cif’ or
‘vga’, for an image size of resp. 128×96, 160×120, 176×144,
320×240, 352×288 and 640×480 (of course, only for those cameras that
support these resolutions).

Probé con vga y cif, pero no tuve éxito, asi que he tenido que conformarme con sif que es equivalente a 320×240


# modprobe pwcx size=sif

Finalmente para que la webcam este online instalé camE programa que me permite automatizar el proceso de hacer upload de los frames a un sitio web y así poder compartirlo con los amigos.

SlayerX webcam

Como aún no he quedado satisfecho voy a seguir investigando para obtener una mejor resolución, probablemente me animé a hacer el dirty hack para usar el driver binario, stay tuned 😉

Compartir

2 thoughts on “Webcam Philips PCA646 en Linux

Deja un comentario