Logitech Notebook Deluxe QuickCam y v4l v2

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.

Chat de vídeo y voz en Gmail sólo para Windows

Está claro que para muchas compañías los usuarios de Linux somos ciudadanos de segunda. Primero para Windows, como mucho para MacOSX y a nosotros si hay tiempo y dinero pues igual nos hacen caso, y si no, pues nada, ajo y agua. La idea es buena: dar soporte de vídeo y audio a Gmail/Gtalk a través de un plugin que funciona en Firefox bajo Windows y Firefox bajo MacOSX. Un plugin que no usa Flash, al parecer, sino tecnología propietaria.

Puedes probarlo desde aquí (con los S.O. privativos que he indicado).

La inclusión de esta funcionalidad ya se rumoreaba desde que en abril de 2007 Google adquiriera Marratech, una empresa que además de chat de vídeo y voz, desarrollaba una especie de pizarra para compartir contenidos y aplicaciones o dibujar sobre ella, integrado con conferencias de vídeo y audio, como puede verse en este pantallazo.

 

 

 

 

 

Copia de seguridad de un DVD paso a paso

Quiero crear una copia de seguridad de un DVD en Linux. Sin más, no quiero pelear con la línea de comandos ni con los codecs, ni con nada. Darle al botoncito y que el DVD se copie a otro (o en mi caso, primero a disco duro y luego al DVD virgen). He probado nautilus-cd-burner y no ha funcionado (se para a mitad del proceso sin mensaje de error). He probado Thoggen y sólo he conseguido ripear el DVD a .ogg , y sin menú principal. Hasta que he descubierto k9copy. La verdad es que a nivel de grabación de CD’s y DVD’s, k3b y k9copy en mi opinión son superiores a las alternativas GNOME (Brasero, nautilus-cd-burner, y Thoggen), en facilidad de uso y prestaciones. Pero si podemos usar aplicaciones de GNOME y de KDE a la vez, sin que se nos caigan los anillos, ¿por qué no habríamos de hacerlo?

Antes de rippear un DVD , es necesario que tu Linux esté configurado para al menos poder verlo 😉 Si no es así, deja de leer este post y empieza con éste otro. ¿Listo? Ok, prosigamos (a continuación sigo la receta de LifeHacker)

Descarga e instala k9copy ( con un simple $ sudo apt-get install k9copy basta).
Mete el DVD del que quieres hacer la copia de seguridad.
Verás algo como lo siguiente:

Pulsa el botón azul (carpeta) para elegir el DVD a copiar.
Pulsa el botón de la llave inglesa. En la pestaña DVD, elige la carpeta donde se guardará la información temporal (la copia del DVD, sin comprimir). En la pestaña MPEG-4 elige el codec de video que te interese (XVid, por ejemplo) y el de audio (AC3, por ejemplo).
Pulsa OK.
En la parte derecha, donde pone «DVD Playback Options», asegúrate de que está seleccionada la casilla «Keep original menus» (a no ser que sólo quieras rippear algunos pasajes del DVD).
En el menú superior (Output Device) asegúrate de que está seleccionada la opción «Iso Image».
¡Listo! Sólo queda darle al botón Copy (o MPEG-4 para rippear y convertir).

Grabar un programa de Zattoo

Siempre he querido grabar programas de TV a través de Zattoo . Tras mucho trastear, he llegado a una solución no-óptima, pero razonable . Bueno, razonable para mí al menos 🙂

Se basa en el uso de recordMyDesktop, una estupenda aplicación para la grabación de todo lo que acontece en la pantalla de tu Linux, incluído el sonido que entre por el micrófono.

Vamos con la super-línea de comandos:


$ recordmydesktop -windowid `xwininfo -name "Zattoo Player" |grep "Window id:"|sed -e "s/xwininfo: Window id: // ;s/ .*//"` -o /tmp/out-$(date +%d-%m-%Y).ogg -fps 15 -channels 1 -freq 22050 -v_quality 63 -s_quality 10 -workdir /tmp -device plughw:0,0

-windowid ID : le indica a recordmydesktop que comience a grabar la ventana con identificador ID

`xwininfo -name «Zattoo Player» |grep «Window id:»|sed -e «s/xwininfo: Window id: // ;s/ .*//»` : esta ristra de código busca el ID de una ventana cuyo título es «Zattoo Player» . Unido a la anterior es evidente lo que hace.

-o /tmp/out-$(date +%d-%m-%Y).ogg : guarda en el directorio tmp el resultado de la grabación, siguiendo el patrón date-fecha.ogg

-fps 15 -channels 1 -freq 22050 -v_quality 63 -s_quality 10 : parámetro de calidad de la grabación. fps: frames por segundo. channels: canales de audio. freq: frecuencia de grabación de audio. v_quality: calidad de vídeo (máx: 63). s_quality: calidad de audio (máx. 10)

-workdir /tmp : directorio de trabajo /tmp, donde recordmydesktop guardará los archivos temporales

-device plughw:0,0 : grabar desde el dispositivo de sonido por defecto (habría que cambiar los números en caso de tener más de una tarjeta de sonido)

Problema: la grabación se lleva a cabo, el fichero se genera, el vídeo se ve y el audio se oye, PERO, el audio se graba de la entrada de MIC (micrófono) del PC. Lo cual es una pena, porque la calidad baja bastante. ¿Alguien sabe cómo grabar la salida de audio directamente?

Extraer información de codecs de un vídeo

Tienes un fichero .AVI y no sabes exactamente el codec que han usado para la parte del vídeo (DivX, Xvid3, Xvid4, MJPEG, …) ni para la parte del audio (PCM, MPEG, AC3…) . ¿Cómo obtener esa información? Una buena utilidad para esta tarea es mediainfo. Entre otros datos, nos mostrará los siguientes:

* General: título, autor, director, album, track, fecha, duración….
* Video: codec, aspect, fps, bitrate…
* Audio: codec, sample rate, canales, idioma, bitrate…
* Text: idioma de subtítulos
* Capítulo: número y listado de capítulos

El uso es desde la línea de comandos:


$ mediainfo nombreDelVideo.avi