Guía VDR en Gentoo Linux
1.
Información general de DVB
¿Qué es DVB?
DVB es el acrónimo de Digital Video Broadcasting
(Difusión de Vídeo Digital). DVB describe métodos para transferir
información digital de TV, radio, servicios interactivos como MHP, EPG
y teletexto. Usando compresión de datos MPEG-2 o H.264 para HDTV, es
posible transferir varios canales en la misma frecuencia. A mayor
compresión de datos, mayor número de canales que pueden ser
transferidos, pagando por ello una pérdida en la calidad.
DVB puede transferirse de varias formas. La última letra identifica el
método de transferencia, p.e. DVB-T para transmisiones
terrestres. Existen otros tipos:
- DVB-S para transmisión vía satélite
- DVB-C para transmisión por cable
- DVB-H para transmisión a dispositivos móviles (terrestres)
- DVB-IPI para transmisión sobre redes IP, p.e. internet
-
DVB-RC(S/C/T) canal de retorno para la transmisión de servicios de
datos, p.e. internet de banda ancha
Tipos y requisitos de las tarjetas DVB
Aparte de los diferentes métodos existentes para recibir un stream
DVB, las tarjetas son clasificadas por el tipo de the salida
producida. Hay tarjetas con decodificador implementado que ofrece
acceso directo al stream por medio del dispositivo
/dev/video. Estas tarjetas son tarjetas completas
(full featured). Otras tarjetas no tienen decodificador, requieren
un software instalado en el ordenador y son de bajo coste. Esto
implica mayores requisitos del sistema. La CPU de su ordenador debe
funcionar al menos a 600 MHz y disponer de al menos de 256MB de
RAM.Esta lista
puede ser útil para identificar su tarjeta.
2.
Preparar el sistema
Configurar el núcleo
En primer lugar, debemos asegurarnos de que su núcleo soporta DVB y el
dispositivo DVB instalado. Desde la versión 2.6 los controladores
necesarios están incluidos. Compruebe la configuración de su núcleo y
asegúrese de seleccionar las siguientes opciones como controladores
estáticos o como módulos.
Listado de Código 2.1: Opciones del núcleo necesarias |
Input Device Support --->
* Event Interface
Device Drivers --->
Multimedia Devices --->
Digital Video Broadcasting Devices --->
[*] DVB For Linux
* DVB Core Support
M [Your driver]
|
Igualmente debemos seleccionar el controlador adecuado para su
hardware. Para localizar el módulo correcto para su tarjeta, deberá
marcar cada controlador como módulo. Si posee una tarjeta PCI, instale
pciutils si no lo ha hecho ya. Si quiere los controladores ya
instalados o no posee una tarjeta PCI, sáltese este paso y continúe
con Comprobando la salida del núcleo.
Listado de Código 2.2: Instalar pciutils |
# emerge pciutils
|
Despues de arrancar el nuevo núcleo, ejecutaremos pcimodules
para listar los módulos requeridos.
Listado de Código 2.3: Listar los modulos requeridos |
# pcimodules
ohci-hcd
ehci-hcd
sis900
snd-emu10k1
b2c2-flexcop-pci
nvidia
nvidiafb
|
En este caso tendremos que cargar el módulo
b2c2-flexcop-pci.Añadiremos el nombre a
/etc/modules.autoload.d/kernel-2.6.
Listado de Código 2.4: Añadir el nombre del módulo |
# echo b2c2-flexcop-pci >> /etc/modules.autoload.d/kernel-2.6
|
Comprobando la salida del núcleo
Se recomienda marcar cada controlador como módulo, de esta forma podrá
añadir el módulo requerido dinámicamente, especialmente si no conoce
el nombre del módulo. Si ya sabe el nombre de módulo, marque el
controlador para ser compilado en el núcleo. Compile el núcleo,
instale los módulos y arránquelo. Puede comprobar si su núcleo ha
detectado correctamente su tarjeta usando dmesg.
Listado de Código 2.5: Comprobar la salida del núcleo |
# dmesg | grep DVB
DVB: registering new adaptor (TerraTec/qanu USB2.0 Highspeed DVB-T Receiver).
input: TerraTec/qanu USB2.0 Highspeed DVB-T Receiver remote control as /class/input/input2
|
3.
Instalar VDR
Para instalar VDR, simplemente hacemos emerge.
Listado de Código 3.1: Instalar VDR |
# emerge vdr
|
Ahora puede continuar con Instalar el
Mando a Distancia.
4.
Instalar el Mando a Distancia
Hay al menos dos formas de controlar VDR usando un mando a distancia
infrarrojo. Si su tarjeta de televisión tiene un receptor IR
integrado, puede usar vdr-remote. De lo contrario casi seguro
que necesitará usar LIRC.
Instalar vdr-remote
Primero instalaremos el plugin usando emerge:
Listado de Código 4.1: Instalar vdr-remote |
# emerge vdr-remote
# eselect vdr-plugin enable remote
|
Cuando use el plugin para el puerto IR en su tarjeta DVB todo debería
funcionar correctamente con la configuración por defecto. Este plugin
utiliza automáticamente el dispositivo de entrada que contiene "dvb"
en su nombre. Para usos más avanzados eche un vistazo a
/etc/conf.d/vdr.remote.
Ahora, continúe con Métodos de Salida de Vídeo.
Alternativa: Instalar LIRC
Si su tarjeta puede ser controlada remotamente (pero no puede o no
quiere usar vdr-remote), puede configurar LIRC. LIRC interpreta
las teclas pulsadas y devuelve un nombre para cada una. Un programa
que soporte LIRC esperará por los eventos y ejecutará la acción
configurada en el fichero de configuración, casi siempre almacenado en
el directorio de configuración del programa que se está ejecutando
(p.e. mplayer carga el fichero
~/.mplayer/lircrc). Antes de instalar LIRC, deberá añadir
lirc a los indicadores USE y añadir una entrada adicional a
/etc/make.conf: LIRC_DEVICES. Use esta lista para
encontrar los argumentos apropiados para la opción.
Listado de Código 4.2: Instalar LIRC |
# nano -w /etc/make.conf
LIRC_DEVICES="devinput"
USE="lirc"
# emerge lirc
|
Al comienzo, deberemos definir cada código de tecla con un nombre. La
mayoría de los mandos a distancia soportados ya están configurados,
eche un vistazo a la lista de
mandos. Descargue el fichero necesario y guárdelo como
/etc/lircd.conf. Ahora deberemos encontrar donde se
encuentra el mando a distancia. Ejecute el siguiente comando para
obtener una lista de los dispositivos de entrada actuales (asegúrate
de que su dispositivo se está ejecutando).
Listado de Código 4.3: Lista de los dispositivos de entrada actuales |
# cat /proc/bus/input/devices
I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="TerraTec/qanu USB2.0 Highspeed DVB-T Receiver remote control"
P: Phys=usb-0000:00:1d.7-1/input0
S: Sysfs=/class/input/input2
H: Handlers=kbd event1
B: EV=100003
B: KEY=108fc210 2043 0 0 0 0 8000 2080 1 9e1680 0 0 ffc
|
En este caso tenemos el dispositivo Terratec Cinergy T2 conectado, por
lo tanto podemos acceder al dispositivo en
/dev/input/event1. Reemplace event1 por el
dispositivo correspondiente en su salida.
lircd necesita saber qué dispositivo usar. Añada la siguiente
línea a /etc/conf.d/lirc.conf. Recuerde reemplazar
devinput por el nombre de su controlador y event1 por el
controlador en sí.
Listado de Código 4.4: Añadir opciones a lircd |
LIRCD_OPTS="-H devinput -d /dev/input/event1"
|
Es el momento de arrancar lircd:
Listado de Código 4.5: Arrancar lircd |
# /etc/init.d/lircd start
|
Ahora debería ser posible observar lircd capturando y
decodificando pulsaciones de teclas. Simplemente ejecute el comando
irw. Párelo presionando Ctrl+C cuando se canse.
Listado de Código 4.6: Comprobar LIRC |
# irw
0000000000001aa2 00 Exit Technisat_TTS35AI.conf
0000000000001a8d 00 Mute Technisat_TTS35AI.conf
0000000000000a97 00 OK Technisat_TTS35AI.conf
0000000000000a97 01 OK Technisat_TTS35AI.conf
0000000000000a92 00 Menu Technisat_TTS35AI.conf
|
Lo siguiente es añadirlo al nivel de ejecución predeterminado para que
comience automáticamente en el arranque.
Listado de Código 4.7: Añadir lircd al nivel de ejecución por defecto |
# rc-update add lircd default
|
Para poder usar su mando a distancia, debe habilitar el soporte LIRC
en VDR. Añada la siguiente línea a /etc/conf.d/vdr:
Listado de Código 4.8: Habilitar el soporte para LIRC |
# nano -w /etc/conf.d/vdr
IR_CTRL="lirc"
|
5.
Métodos de Salida de Vídeo
Ahora debe decidir uno (¡y sólo uno!) de los siguientes dispositivos
de salida de vídeo que muestra la imagen y el On Screen Display (OSD)
superpuesto
Decodificación Hardware: Tarjetas DVB completas (full featured)
Los usuarios de estas caras tarjetas no necesitan instalar nada más,
por lo que pueden continuar con Configurando
su lista de canales.
Decodificación Hardware: Tarjetas DXR3/Hollywood+
Para usar una tarjeta DXR3 para salida VDR necesitamos el plugin
vdr-dxr3.
Listado de Código 5.1: Instalar el plugin |
# emerge vdr-dxr3
# echo em8300 >> /etc/modules.autoload.d/kernel-2.6
|
El módulo em8300 necesita alguna configuración que depende de la revisión
exacta de la tarjeta.
Continúe con Configurando su lista de
canales.
Decodificación Hardware: Tarjetas PVR350
Debido a que las tarjetas PVR350 incorporan un chip dedocificador
MPEG-Decoder querremos hacer uso de él. Necesitamos instalar el plugin
vdr-pvr350. plugin. Si ivtv-driver no está aún
instalado, emerge lo instalará automáticamente. Para tener el módule
ivtv cargado al arrancar, lo añadiremos a
/etc/modules.autoload.d/kernel-2.6:
Listado de Código 5.2: Instalar el pluing PVR350 |
# emerge vdr-pvr350
# echo ivtv >> /etc/modules.autoload.d/kernel-2.6
|
Continúe con Configurando su lista de
canales.
Decodificación Software: vdr-softdevice
Para instalarlo, tenemos que hacer emerge de vdr-softdevice. No
olvide habilitar el plugin
Listado de Código 5.3: Instalar el plugin softdevice |
# emerge vdr-softdevice
# eselect vdr-plugin enable softdevice
|
Para seleccionar las salidas de vídeo y audio adecuadas,
edite/etc/conf.d/vdr.softdevice.
Por ahora, únicamente describiremos el método shm ("shared
memory"). Es el que está habilitado por defecto en el fichero de
configuración (Entrada SOFTDEVICE_VIDEO_OUT). Más tarde necesitará
arrancar ShmClient para obtener una ventana mostrando la
imagen.
Nota:
Si no quiere preocuparte de una plantilla de teclado aparte para
controlar VDR, existen ficheros de configuración remota disponibles en
devspace de
Matthias Schwarzott. Hay ficheros para softdevice/shm y xineliboutput
(habrá más). Necesitará el fichero adecuado para
/etc/vdr/remote.conf y ejecutar chown vdr:vdr
sobre el fichero para hacerlo funcionar.
|
Continúe con Configurando su lista de
canales.
Decodificación Software: vdr-xineliboutput
Algunas personas prefieren usar vdr-xineliboutput, porque
también puede funcionar remotamente. Ahora le enseñaremos cómo
configurar vdr-xineliboutput en su servidor y cliente. Primero,
la parte del servidor:
Listado de Código 5.4: Instalar vdr-xineliboutput |
# emerge vdr-xineliboutput
# eselect vdr-plugin enable xineliboutput
|
Añadiendo opciones de línea de comandos en este punto, es crucial para
que xineliboutput funcione. Para ver más opciones, usar vdr
--help.
Listado de Código 5.5: Añadir opciones de línea de comandos a /etc/conf.d/vdr.xineliboutput |
_EXTRAOPTS="--local=none --remote=37890"
|
El siguiente paso es editar
/etc/vdr/svdrphosts.conf. Este fichero describe un número
de direcciones de servidor a las cuales está permitido conectarse la
puerto SVDRP del grabador de vídeo disco corriendo en el sistema
servidor.
Listado de Código 5.6: Editar /etc/vdr/svdrphosts.conf |
127.0.0.1
192.168.1.0/24
#204.152.189.113
#0.0.0.0/0
|
Si sólo quiere usar vdr-xineliboutput para ver la imagen en el
mismo ordenador que el que está corriendo VDR puede continuar con Configurando su lista de canales.
De lo contrario simplemente emerge
media-plugins/vdr-xineliboutput en su cliente:
Listado de Código 5.7: Configuración del cliente |
# emerge vdr-xineliboutput
|
Después (habiendo arrancado VDR) puede usar el comando vdr-sxfe
xvdr://hostname para conectarse a VDR y ver su imagen y OSD.
Continúe con Configurando su lista de
canales.
Nota:
Existe también un plugin que simplemente simula la existencia de un
dispositivo real de salida (vdr-dummydevice) para algunos usos
imaginativos como servidores sólo grabación, pero es más avanzado que
una configuración normal VDR.
|
6.
Creando una lista de Canales
Para hacer VDR realmente útil, necesita crear una lista apropiada de
canales. Hay más de una forma de conseguir una lista de canales que
funcione (Aparte de descargarse una). La lista de canales instalada
por defecto es para la recepción DVB-S en Astra en 19.2°E.
Usando dvbscan desde linuxtv-dvb-apps
Listado de Código 6.1: Instalar linuxtv-dvb-apps |
# emerge linuxtv-dvb-apps
|
Encuentre la frecuencia correcta para su región y tipo de
recepción. Estos ficheros están ordenados bajo
/usr/share/dvb/scan. Para recepción con DVB-T en
Alemania, Región Nuernberg necesita usar
/usr/share/dvb/scan/dvb-t/de-Nuernberg.
Listado de Código 6.2: Escanear con dvbscan |
$ dvbscan -o vdr /usr/share/dvb/scan/dvb-t/de-Nuernberg > /etc/vdr/channels.conf
|
Usando vdr-reelchannelscan
Primero borre el contenido de la lista existente de canales.
Listado de Código 6.3: Limpiar la lista antigua de canales |
# rm /etc/vdr/channels.conf
|
Listado de Código 6.4: Instalar y activar vdr-reelchannelscan |
# emerge vdr-reelchannelscan
# eselect vdr-plugin enable reelchannelscan
|
Canales para sistemas usando using vdr-analogtv
Probablemente querrá configurar sus canales en este punto. El proyecto
VDR proporciona algunos ejemplos que puede encontrar en
/usr/share/doc/vdr-analogtv-$version/examples/, siempre
que haya instalado >=media-plugins/vdr-analogtv-1.0.00-r1.
7.
Arrancando VDR
Después de tener todas las partes básicas de software preparadas en su
sistema, necesitará configurar VDR con su OSD.
Si usó un decodificador hardware para salida de imagen, deberá en este
momento encender la televisión conectada. Si usó salida software, el
cliente debe ser arrancado después de VDR.
Primero, debe aprender sus definiciones de teclas; esto es, conectando
las teclas de su mando a distancia a los comandos internos de VDR.
Nota:
En caso de que necesite editar la configuración de teclado, o (mejor)
quiere borrarla para volver a memorizar las teclas: VDR almacena sus
definiciones de teclas en /etc/vdr/remote.conf.
|
Comenzamos arrancando VDR:
Listado de Código 7.1: Arrancar VDR |
# /etc/init.d/vdr start
* Preparing start of vdr:
* config files ... [ ok ]
* Waiting for prerequisites (devices nodes etc.) ... [ ok ]
* Starting vdr ... [ ok ]
* First start of vdr: No check for running vdr possible
* until control device (remote/keyboard) keys are learnt!
|
Nota:
Los usuarios de decodificadores software deben ahora arrancar el
programa cliente que abre la ventana para mostrar la imagen de TV y el
OSD.
|
Listado de Código 7.2: Activar el decodificador software para el cliente |
# ShmClient
# vdr-sxfe xvdr://hostname
|
Las teclas más útiles para VDR son:
- Teclas del cursor (Izquierda/Derecha/Arriba/Abajo)
- Menu/Salir/Ok
- Colores (Rojo/Verde/Amarillo/Azul)
- Teclas numéricas (0-9)
Importante:
Si no tiene muchas teclas, asegúrese de asignar éstas. (Algunos mandos
tienen las teclas Play/Pause/etc. en las mismas teclas que los
colores, por lo que deberá usarlas para los colores).
|
Ahora que la instalación básica ha terminado, necesitará configurar
VDR. Cambie a su pantalla de salida y sigua las instrucciones en
pantalla. VDR le pedirá que presione varias teclas en su mando a
distancia para aprender los códigos correctos de las teclas. Si no
tiene un mando a distancia puede usar el teclado.
Ahora puede añadir el script de inicio al nivel de ejecución
predeterminado para ejecutarlo cada vez que arranque el ordenador.
Listado de Código 7.3: Añadir vdr al nivel de ejecución predeterminado |
# rc-update add vdr default
|
8.
Solución de Problemas
Nota:
Si necesita ayuda, puede preguntar en
#gentoo-vdr,
o echar un vistazo en nuestros
forums.
|
El contenido de este documento está registrado bajo los términos de
la licencia
Creative Commons - Reconocimiento / Compartir Igual
|