Avermedia AverTV Go 007 FM 4
Ese nombrajo corresponde a una tarjeta sintonizadora de TV que me ha traido por la calle de la amargura durante los ultimos dias ya que no se dejaba instalar en Linux, pero para cabezota yo. He conseguido hacerla funcionar en Linux.
Antes de desvelar los mágicos arcanos que nos permitiran ver la tele, un poco de culturilla:
Lleva un chip decodificador SAA7131e y un chip sintonizador TDA8275, ambos del fabricante Philips.
En Linux hay soporte completo para estos dispositivos a partir del kernel 2.6.15, como hace unas horas que acaba de salir tenemos un pequeño problema: Ubuntu Breezy Badger incluye el kernel 2.6.10 y la tarjeta es detectada pero no reconocida.
La soluciones esperar a que los de Ubuntu empaqueten el kernel 2.6.15 o superior y actualizar a golpe de apt-get (cosa que puede demorar varios meses) o compilar nosotros mismos el modulo v4l2 del kernel, que contiene toda la recopilación de drivers para un buen puñado de tarjetas de TV analógica y Digital Terrestre.
Las instrucciones necesarias para realizar esta labor se comentan en el Wiki de V4L, pero como estan en ingles haremos un somero repaso por aquello de quedar bien.
Primero necesitamos todas las herramientas de compilación y las cabeceras de nuestro kernel. Normalmente este tipo de cosas no se instalan por defecto:
apt-get install build-essential
apt-get install linux-kernel-headers
Entramos al repositorio CVS:
cvs -d :pserver:anonymous@cvs.linuxtv.org:/cvs/video4linux login
Cuando pida el password, presiona la tecla enter para continuar.
Bajamos el contenido del repositorio con todo el codigo de los drivers actualizados:
cvs -d :pserver:anonymous@cvs.linuxtv.org:/cvs/video4linux co v4l-dvb
Cambiamos al directorio v4l2-dvb:
cd v4l-dvb
Compilamos todas las fuentes:
make
Instalamos los nuevos módulos en el sistema (como root):
make install
Reiniciamos y Linux automaticamente detectará el hardware y cargará los módulos adecuados.
Pero eso no es todo, ahora tenemos imagen en la TV pero no sonido. Resulta que hay un conflicto en la carga de los módulos y el sistema de sonido del kernel 2.6 (ALSA). Los desarrolladores de V4L le han pasado la pelota a los desarrolladores del kernel y parece que todavia no hay una solución.
Hay un pequeño hack que me ha funcionado mientras se soluciona el problema:
modprobe saa7134-oss
sox -t ossdsp -w -c2 -r 32000 /dev/dsp1 -t ossdsp /dev/dsp
Con la primera instrucción cargamos el modulo de compatibilidad con OSS (el antiguo sistema de sonido de Linux) y se crean dos nuevos dispositivos de sonido: /dev/dsp1 y /dev/mixer1 correspondientes a la tarjeta de tv.
La segunda instrucción “redirige” todo lo que salga del dispositivo de la tarjeta de TV a la tarjeta de sonido: /dev/dsp.
De momento hay que hacer todo esto cada vez para tener la TV funcionando, próximamente cuando todos los parches esten aplicados en el kernel, el sistema hotplug de Linux se encargará de todo.
















menéame