En mi nuevo PC (Inspiron 530) he instalado Ubuntu 8.10. Para mis trabajos de investigación estoy ultimamente metiéndome a fondo con Flex, Flash y Red5, por lo que he instalado también toda la parafernalia : Eclipse, Flex Builder, Flash Plugin 10 Debug version, Flash Tracer, Red5, amfphp and the kitchen sink 🙂
En mis trabajos necesito capturar imagen de una webcam a menudo. En Ubuntu 8.04 con Flash Player 10 (idéntica versión que en el caso anterior), la cosa funciona perfectamente. Un ejemplo, el Quick Capture de YouTube (para poder subir vídeos capturados directamente desde la webcam, funciona a la perfección en Ubuntu 8.04)
Si nos fijamos, estoy usando Video4Linux 1 (v4l1), y no v4l2 como viene de serie en Ubuntu 8.10 (Intrepid Ibex).
Vayamos al PC de sobremesa. Ahí, (Intrepid), con misma versión de Flash Player (10, debug), en la misma web (YouTube), resulta que la cámara se detecta (me veo perfectamente), pero cuando pulso el botón de «Record», la imagen se congela y no graba nada de nada. Diferencias que veo: en Intrepid se usa v4l2 (se carga el módulo spca_z3xx) y en Hardy se usa v4l1. ¿Vamos hacia atrás en compatibilidad?
(Hardy)
juanan@cox:~$ lsmod | grep gsp
gspca 643920 1
videodev 29440 2 gspca
usbcore 146028 8 snd_usb_audio,snd_usb_lib,gspca,hci_usb,ehci_hcd,uhci_hcd
(Intrepid)
juanan@cox:/tmp$ lsmod | grep gsp
gspca_zc3xx 55936 0
gspca_main 29312 1 gspca_zc3xx
videodev 41344 1 gspca_main
usbcore 148848 11 snd_usb_audio,snd_usb_lib,gspca_zc3xx,gspca_main,lmpcm_usb,usb_storage,libusual,usbhid,ehci_hcd,uhci_hcd
Mientras escribía este artículo y se maduraba en la sección Drafts, he encontrado un workaround!
Como puede verse en el Launchpad de Ubuntu, los errores en las webcam empezaron desde la actualización del kernel a la 2.6.27 (parece que ahí se integraron los módulos gspca y el soporte v4l2 de serie). Lógicamente no es un bug que afecte sólo a Ubuntu. En Fedora y Mandriva también están dándole vueltas al asunto.
El caso es que tanto en el Launchpad de Ubuntu como en la página anterior de Fedora, dan una solución parcial (que hace que yo pueda grabar mis vídeos en el Quick Capture de YouTube desde Intrepid , por lo que para mí ya es una solución que aplaudo efusivamente)
$ LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so firefox
Donde he puesto firefox, podría ser cualquier otra aplicación con soporte de vídeo a través de webcam que no te funcione con la última versión de tu distro y que antes (de actualizar) sí lo hiciera, por ejemplo, camorama, o skype (con video) o similares. Great.