Avermedia TVCapture 98, tvtime y lirc, convierte tu Ubuntu en una TV

21/05/2006

Avermedia TVCapture98

Hace varios años que poseo la sintonizadora de TV para PC Avermetia TVCapture98. La verdad es no no la he aprovechado demasiado, ni antes que tenía Windows, ni mucho menos ahora que tengo Ubuntu y aún no la tenía siguiera configurada.

Pues bien, hasta aquí hemos llegado. Ya va siendo hora de ponerse manos a la obra y “echar a andar” esta tarjetita en mi sistema actual.

Configuración de la tarjeta

La tarjeta en cuestion posee el chip Bt878 y es reconocida directamente por el kernel que trae Ubuntu (al menos la versión 5.10), como podemos comprobar en la salida del comando dmesg:


[4294700.168000] Linux video capture interface: v1.00
[4294700.231000] bttv: driver version 0.9.15 loaded
[4294700.231000] bttv: using 8 buffers with 2080k (520 pages) each for capture
[4294700.236000] bttv: Bt8xx card found (0).
[4294700.236000] ACPI: PCI Interrupt 0000:00:0c.0[A] -> Link [LNKA] -> GSI 5 (level, low) -> IRQ 5
[4294700.236000] bttv0: Bt878 (rev 2) at 0000:00:0c.0, irq: 5, latency: 32, mmio: 0xee012000
[4294700.236000] bttv0: detected: AVerMedia TVCapture 98 [card=13], PCI subsystem ID is 1461:0004
[4294700.236000] bttv0: using: AVerMedia TVCapture 98 [card=13,autodetected]
[4294700.236000] bttv0: gpio: en=00000000, out=00000000 in=00047ff3 [init]
[4294700.239000] bttv0: Hauppauge/Voodoo msp34xx: reset line init [11]
[4294700.353000] bttv0: Avermedia eeprom[0x4011]: tuner=5 radio:no remote control:yes
[4294700.353000] bttv0: using tuner=5
[4294700.353000] bttv0: i2c: checking for MSP34xx @ 0x80… not found
[4294700.355000] bttv0: i2c: checking for MSP34xx (alternate address) @ 0x88… not found
[4294700.357000] bttv0: i2c: checking for TDA9875 @ 0xb0… not found
[4294700.360000] bttv0: i2c: checking for TDA7432 @ 0x8a… not found
[4294700.372000] tvaudio: TV audio decoder + audio/video mux driver
[4294700.372000] tvaudio: known chips: tda9840,tda9873h,tda9874h/a,tda9850,tda9855,tea6300,tea6320,tea6420,tda8425,pic16c54 (PV951),ta8874z
[4294700.412000] bttv0: i2c: checking for TDA9887 @ 0x86… not found
[4294700.432000] tuner 0-0061: chip found @ 0xc2 (bt878 #0 [sw])
[4294700.432000] tuner 0-0061: type set to 5 (Philips PAL_BG (FI1216 and compatibles))
[4294700.478000] bttv0: registered device video0
[4294700.479000] bttv0: registered device vbi0
[4294700.479000] bttv0: PLL: 28636363 => 35468950 .. ok
[4294700.512000] bttv0: add subdevice “remote0”
[4294700.664000] bt878: AUDIO driver version 0.0.0 loaded
[4294700.669000] bt878: Bt878 AUDIO function found (0).
[4294700.669000] ACPI: PCI Interrupt 0000:00:0c.1[A] -> Link [LNKA] -> GSI 5 (level, low) -> IRQ 5
[4294700.669000] bt878(0): Bt878 (rev 2) at 00:0c.1, irq: 5, latency: 32, memory: 0xee010000
[4294701.061000] irda_init()

Como la tarjeta es reconocida, lo que ahora necesitamos, es un software que nos permita utilizarla. Aquí es donde entra en juego tvtime.

Instalación de tvtime

tvtime
tvtime es una aplicación de televisión de álta calidad para ser utlizada con tarjetas capturadoras de video (como la TVCapture 98) en sistemas Linux. tvtime procesa la entrada de una tarjeta capturadora y la muestra en el monitor del ordenador. Al contrario que otras aplicaciones de televisión, tvtime se centra en la alta calidad visual haciéndola ideal para el video.

En Ubuntu tenemos un paquete precisamente con ese nombre, “tvtime” que una vez instalado con apt-get o Synaptic, nos generará una entrada en el menú:

“Aplicaciones” –> “Sonido y vídeo” –> “TVtime Television Viewer”

Configuración de tvtime

Una vez abierta la aplicación, podemos hacer una prueba rápida dejando que realice una búsqueda automática de canales, para lo cual haremos lo siguiente:

  • Click con el botón derecho
  • Gestión de canales
  • Escanear canales en busca de señal

Con un poco de suerte, el programa ya nos habrá almacenado todos los canales. Ahora nos podemos mover entre ellos utilizando los cursores (arriba/abajo) y también modificar el volumen (izquierda/derecha).

NOTA: Si no puedes escuchar el sonido, asegúrate de tener conectado el cable que va de la sintonizadora de TV a la entrada de línea de la tarjeta de sonido y de tener activada dicha entrada en el control de volumen de Gnome.

Control de Volumen

Bueno, hasta aquí todo muy sencillo, y así nos podríamos quedar, pero la capturadora de TV de Avermedia incluye un mando a distancia que es una pena desperdiciar.

Instación de lirc

Mando de la TVCapture 98
LIRC es un paquete que te permite decodificar y enviar señales infra-rojas de los controles remotos más comunmente utilizados (entre ellos el que acompaña a la TVCapture 98).

La instalación y configuración de lirc, por su extensión y complejidad, la he puesto en otra anotación.

Configurando tu propio archivo .lircrc

Una vez que tenemos instalado y configurado lircd y sabemos cómo arrancar irexec e irxevent, solamente nos queda un último paso, la configuración de nuestro .lircrc personalizado que transforma los comandos del mando en comandos del programa tvtime.

Para conseguir controlar tvtime con el mando tenemos dos opciones:

  • Utilizar únicamente irexec y la utilidad de línea de comandos tvtime-command que permite controlar una instancia ya arrancada de tvtime (esta será la única opción válida si no hemos compilado utilizando las librerías del entorno gráfico X ya que no estrá disponible irxevent).
  • O bien, utilizar irexec e irxevent y así “simular” pulsaciones de teclas y clicks de ratón como si lo estuviésemos haciendo directamente con el teclado y ratón conectados a nuestro equipo.

Configuración utilizando irexec y tvtime-command

Creamos el archivo:

$ gedit ~/.lircrc

Y escribimos el siguiente contenido:

# MAIN BEGIN – Application Selection Mode
# ———————————————————–

begin
prog = irexec
remote = TVPhone98
button = TV/FM
# Start TVtime
config = tvtime –window &
# Enter tvtime mode
mode = tvtime
end

# —————
# MAIN END

# APP MODES BEGIN
# —————

# tvtime mode
begin tvtime
begin
prog = irexec
button = POWER
config = tvtime-command QUIT
# Exit tvtime mode
flags = mode
end
begin
prog = irexec
button = TELETEXT
config = tvtime-command SHOW_MENU
end
begin
prog = irexec
button = AUTOSCAN
config = tvtime-command CHANNEL_SCAN
end
begin
prog = irexec
button = VIDEO
config = tvtime-command TOGGLE_INPUT
end
begin
prog = irexec
button = AUDIO
config = tvtime-command SET_AUDIO_MODE
end
begin
prog = irexec
button = DISPLAY
config = tvtime-command DISPLAY_INFO
repeat = 0
end
begin
prog = irexec
button = FULLSCREEN
config = tvtime-command TOGGLE_FULLSCREEN
end
begin
prog = irexec
button = MUTE
config = tvtime-command TOGGLE_MUTE
end
begin
prog = irexec
button = VOL_UP
config = tvtime-command RIGHT
repeat = 0
end
begin
prog = irexec
button = VOL_DOWN
config = tvtime-command LEFT
repeat = 0
end
begin
prog = irexec
button = CH_UP
config = tvtime-command UP
repeat = 0
end
begin
prog = irexec
button = CH_DOWN
config = tvtime-command DOWN
repeat = 0
end
begin
prog = irexec
button = 1
config = tvtime-command CHANNEL_1
end
begin
prog = irexec
button = 2
config = tvtime-command CHANNEL_2
end
begin
prog = irexec
button = 3
config = tvtime-command CHANNEL_3
end
begin
prog = irexec
button = 4
config = tvtime-command CHANNEL_4
end
begin
prog = irexec
button = 5
config = tvtime-command CHANNEL_5
end
begin
prog = irexec
button = 6
config = tvtime-command CHANNEL_6
end
begin
prog = irexec
button = 7
config = tvtime-command CHANNEL_7
end
begin
prog = irexec
button = 8
config = tvtime-command CHANNEL_8
end
begin
prog = irexec
button = 9
config = tvtime-command CHANNEL_9
end
begin
prog = irexec
button = 0
config = tvtime-command CHANNEL_0
end
end tvtime

Configuración utilizando irexec e irxevent

Creamos el archivo:

$ gedit ~/.lircrc

Y escribimos el siguiente contenido:

# MAIN BEGIN – Application Selection Mode
# ———————————————————–

begin
prog = irexec
remote = TVPhone98
button = TV/FM
# Start TVtime
config = tvtime –window &
# Enter tvtime mode
mode = tvtime
flags = once
end

# —————
# MAIN END

# APP MODES BEGIN
# —————

# tvtime mode
begin tvtime
begin
prog = irxevent
button = POWER
config = Key q tvtime
# Exit tvtime mode
flags = mode
end
begin
prog = irxevent
button = TELETEXT
config = Key F1 tvtime
end
begin
prog = irxevent
button = CAPTURE
config = Key s tvtime
end
begin
prog = irxevent
button = VIDEO
config = Key i tvtime
end
begin
prog = irxevent
button = AUDIO
config = Key e tvtime
end
begin
prog = irxevent
button = FULLSCREEN
config = Key f tvtime
end
begin
prog = irxevent
button = MUTE
config = Key m tvtime
end
begin
prog = irxevent
button = VOL_UP
config = Key plus tvtime
end
begin
prog = irxevent
button = VOL_DOWN
config = Key minus tvtime
end
begin
prog = irxevent
button = CH_UP
config = Key Up tvtime
end
begin
prog = irxevent
button = CH_DOWN
config = Key Down tvtime
end
begin
prog = irxevent
button = 1
config = Key 1 tvtime
end
begin
prog = irxevent
button = 2
config = Key 2 tvtime
end
begin
prog = irxevent
button = 3
config = Key 3 tvtime
end
begin
prog = irxevent
button = 4
config = Key 4 tvtime
end
begin
prog = irxevent
button = 5
config = Key 5 tvtime
end
begin
prog = irxevent
button = 6
config = Key 6 tvtime
end
begin
prog = irxevent
button = 7
config = Key 7 tvtime
end
begin
prog = irxevent
button = 8
config = Key 8 tvtime
end
begin
prog = irxevent
button = 9
config = Key 9 tvtime
end
begin
prog = irxevent
button = 0
config = Key 0 tvtime
end
end tvtime

Probando todo el sistema

Ahora, con cualquiera de las dos opciones anteriores, podemos probarlas:

  • Si no tenemos iniciado el demonio lircd, lo iniciamos:

    $ sudo /etc/init.d/lirc start

    NOTA: podemos comprobar si el demonio está arrancado usando el comando:

    $ ps aux | grep lircd

  • Nos aseguramos que no estaba arrancado irexec:

    $ ps aux | grep irexec

    y si está arrancado lo matamos:

    $ kill -9 irexec_ID

    Lo arrancamos para que coja la nueva configuración del fichero .lircrc:

    $ irexec --daemon

  • Si ahora pulsamos la tecla “TV” del mando a distancia, se debería arrancar el programa tvtime y, según nuestro archivo de configuración, entrar en modo “tvtime”, donde solamente se tienen en cuenta los comandos que están entre “begin tvtime” y “end tvtime”, para no interferir con las configuraciones de otros programas (o modos).
  • Para entrar/salir del menú pulsaremos la tecla que no tiene etiqueta situada entre “CD” y “POWER” (que en el mando de la tarjeta TVPhone98 pone TELETEXT -el mando es el mismo, pero el de la TVCapture98 no tiene alguna serigrafía-)
  • Para movernos por las opciones de menú utilizaremos “VOLUMEN +/-” y “CHANNEL </>”
  • Con la tecla “POWER” cerramos el programa y volvemos al modo “irexec”, donde podemos arrancar de nuevo el programa.

Algunos enlaces de interés

http://tvtime.sourceforge.net/usage.html#tvtimecommand
http://tvtime.sourceforge.net/lirc.html
http://lirc.sourceforge.net/remotes/avermedia/
http://tvtime.sourceforge.net/example.lircrc
http://www.chat.carleton.ca/~kvomdorf/sager/.lircrc

12 Responses to “Avermedia TVCapture 98, tvtime y lirc, convierte tu Ubuntu en una TV”

  1. Antonio Moreno Says:

    ¡Excelente nota! Uso KDE y ya habia logrado configurar el control remoto, pero solamente podía manejar programas de KDE con el IRKick y yo quería usar el control remoto con TVTime, gracias por compartir tus conocimientos con la comunidad y sigue adelante.


  2. […] Hola, tengo esta tarjeta capturadora en linux, la Avermedia TV98, y siguiente este post me la instaló correctamente, ahora veo Teta5 y anteta3 y soy más feliz. Me gustaría poner todas las pantallas explicando paso a paso, pero es muy aburrido y si tenéis algún problema, siempre podéis poner un comentario, intentaré responder a dudas. […]

  3. domingo miguel Says:

    Tengo el mismo problema , ni me la reconoce , ni puedo hacerla ,funcionar , me he bajado un monton de drivers para ubuntu 6.06 ls , y ni en broma funciona , la verdad es que ya me tiene desesperado

    un saludo

  4. Leonardo Rozas Says:

    Gracias a todos los que postearon… tengo ubuntu, 6.10 y estoy luchando para poder hacer andar mi ENLTV, con chip phillips… la desventaja es que no tengo internet en casa asi que cada cosa que falta, es un viaje al ciber…

    Saludos y gracias por todos los que nos aprobechamos de sus conocimientos

  5. Juan Says:

    Buenas ,soy nuevo con linux y quería preguntar como limpiar todos los modulos compilados, fuentes del kernel y demás, una vez instalado todo para recuperar espacio. Gracias.

  6. Carlos Says:

    Tengo la avermedia capture98 desde hace años, la he cambiado de PC, este con WinXP, y no puedo instalar los drivers ni el programa de Tv, me he bajado drivers de la web oficial de Avermedia y sigue sin instalarse. ¿que puedo hacer?

    Un saludo.

  7. Jorge Says:

    Cuando escribo:

    jorge@jorge-desktop:~$ sudo /etc/init.d/lirc start
    ##################################################
    ## LIRC IS NOT CONFIGURED ##
    ## ##
    ## read /usr/share/doc/lirc/html/configure.html ##
    ##################################################
    Starting lirc daemon:.

    Parece que no tengo configurado el Lirc, sabés qué puede estar pasando?
    Gracias, Jorge.

  8. jess Says:

    Saludos,
    El enlace para la instalación y configuración de lirc en Avermedia + Tvtime + lirc + ubunto está roto.Puedes solucionarlo por favor, estoy muy interesado

  9. Jordi Says:

    Hola, a mi el mando me funciona pero por defecto con la configuracion de ubuntu, por mucho ke intento configurar el lirc no lo utiliza. intento buscar los archivos de configuracion que tiene ubuntu por defecto pero no encuentro nada, ni tampoco ningun programa. tengo ubuntu 7.10 kernel 2.6.22-14, mi targeta avermedia capture98. Si alguien sabe algo se lo agradezco ke lo comparta Gracias a todos

  10. Anaspeople Says:

    Hola, a mi me ocurre lo mismo que a Jordi con la misma distro y kernel.
    Puedo cambiar el volumen y los botones de los numeros, mute y power me funcionan. Pero me he dado cuenta que al archivo .lircrc no le hace caso. Alguien conoce la razón?

    para jess: https://rubensa.wordpress.com/2006/05/24/ubuntu-lirc/
    Pero si usas ubuntu 7.10 puedes instalar lirc desde los repositorios: “sudo apt-get install lirc lirc-x”

    Gracias por el tuto!

  11. Antonio Says:

    Hola, buenas.
    Tengo un tarjeta avermediatv usb 2.0 que no soy capaz de hacerla funcionar, uso guadalines 4.0. La tarjeta funciona, pues en el mismo ordenador tengo guindos y en este si que va. los sintomas principales:
    Con tvtime, me dice que no hay señal de entrada
    T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8
    B: Alloc= 2/800 us ( 0%), #Int= 1, #Iso= 0
    D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
    P: Vendor=0000 ProdID=0000 Rev= 2.06
    S: Manufacturer=Linux 2.6.22-14-generic ehci_hcd
    S: Product=EHCI Host Controller
    S: SerialNumber=0000:00:1d.7
    C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
    I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
    E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms

    T: Bus=05 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=480 MxCh= 0
    D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
    P: Vendor=07ca ProdID=0026 Rev= 0.01
    S: Manufacturer=AVerMedia
    S: Product=AVerTV USB 2.0
    Gracias de antemano
    Un saludo

  12. maedca Says:

    mira segui los pasos pero no puedo cambiar los canales ni con el cursor del teclado


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: