Instalación-1.5

De VdrWiki

VDR 1.5.9

¡ Precaución !

En esta página muestro cómo instalé vdr 1.5.9 en mi sistema Linux, basado en Gentoo, con una tarjeta Nvidia, 2 tarjetas sintonizadoras DVB-S y una tarjeta sintonizadora DVB-T. A pesar de ser una configuración muy específica, espero te sirva de referencia. Recuerda que no me responsabilizo de lo que pueda ocurrirle al sistema, esto no es una guía, sólo un ejemplo.

Introducción

En esta página se documenta un ejemplo del proceso de instalación de la versión 1.5.9 de VDR, cómo se prepara y compila el programa principal vdr y como se añade un módulo (del inglés plugin), en nuestro ejemplo el softdevice. Ten en cuenta que la versión 1.5.9 se encuentra (Septiembre de 2007) en fase de desarrollo, por lo que recomiendo instalarla sólo en entornos de pruebas y no de producción.

Preparar la Instalación

Prerequisitos

Es conveniente que tengas una tarjeta sintonizadora, de modo que puedas comprobar (y usar) el correcto funcionamiento de VDR. Hay instalaciones de VDR donde no se necesitan (cliente servidor), sin embargo en mi caso cuento con varias tarjetas sintonizadoras, por lo que en este ejemplo de instalación usaré como ejemplo las siguientes tarjetas:

2 tarjetas DVB-S SkyStar2 PCI card, cada una conectada a una antena parabólica distinta.
1 tarjetas DVB-T SkyStar2 PCI card, conectada a la antena terrestre.

Esta es la salida del comando lspci

02:02.0 Network controller: Techsan Electronics Co Ltd B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card (rev 02)
02:03.0 Network controller: Techsan Electronics Co Ltd B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card (rev 02)
02:04.0 Network controller: Techsan Electronics Co Ltd B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card (rev 02)

Kernel

En el kernel deberías tener configurados los drivers de tu tarjeta. En mi caso son los siguientes, teniendo en cuenta que muestro un ejemplo para el kernel versión 2.6.22 y que mis tres tarjetas usan el mismo driver (Skystar)

Drivers tarjetas DVB y LIRC
  
$ make menuconfig
-> Device Drivers
   Multimedia devices
    <M> DVB for Linux
    [*] DVB/ATSC adapters --->
      <M>   Technisat/B2C2 FlexCopII(b) and FlexCopIII adapters
      <M>     Technisat/B2C2 Air/Sky/Cable2PC PCI
-> lirc <pendiente de documentar>
  Tengo desactivado el uso del puerto SERIE en el kernel para no tener problemas con LIRC.
  LIRC controla el receptor de infrarojos conectado al puerto serie 1.
  
  Tengo pendiente documentar cómo se configura LIRC en el Kernel.


El último paso es realizar la compilación del kernel, nvidia y lirc de forma ordenada. En mi caso utilizo Gentoo por lo que los pasos que realizo son los siguientes:

kernel
======
 cd /usr/src/linux
 make
 make modules_install

nvidia
======
 emerge nvidia-drivers
 eselect opengl set nvidia

lirc
====
 emerge lirc

Instalacion
===========
 cd /usr/src/linux
 cp arch/i386/boot/bzImage /boot/bzImage-2.6.22-gentoo-r8
 cp System.map /boot/System.map-2.6.22-gentoo-r8

Splash
======
 cd /etc/splash
 splash_geninitramfs -g /boot/fbsplash-emergence-1024x768 -v -r 1024x768 emergence

grub.conf
=========
# cat /boot/grub/grub.conf
 timeout 10
 default 0

 # For linux with latest kernel
 title=Gentoo Linux 2.6.22-gentoo-r8
 root   (hd0,0)
 kernel (hd0,0)/bzImage-2.6.22-gentoo-r8 root=/dev/sda3 vga=0x318 splash=verbose,theme:emergence
 initrd (hd0,0)/fbsplash-emergence-1024x768

Nvidia y LIRC

En mi caso utilizo una tarjeta de video NVIDIA y para el control remoto uso LIRC, por lo que es necesario usar los últimos drivers de ambos.

Utilizo xorg-x11 versión x11-base/xorg-x11-7.2 con una tarjeta de video Nvidia. Utilizo el monitor principal para el trabajo normal y la salida secundari S-VIDEO para TV Output (DISPLAY :0.1)

Usuario vdr

Recomiendo utilizar un usuario dedicado a 'vdr'. Crea un usuario vdr, grupo vdr y haz login con él a partir de ahora.

  groupadd -g 1500 vdr
  useradd -u 1500 -g vdr -m -G cron,cdrom,cdrw,users,wheel,audio,video -d /home/vdr -s /bin/bash vdr

Software adicional

Esta es la lista de software adicional que tengo instalado (notar que uso Gentoo)

# emerge -v media-gfx/xv            <== Necesario para el plugin 'softdevice'
# emerge -v app-misc/screen         <== Para arrancar 'vdr' con una ventana virtual

Otros paquetes que he ido instalando con el tiempo, algunos necesarios y otros de utilidad:

media-video/y4mscaler
dev-libs/libebml
media-video/vlc
Para poder hacer GRAB necesitas: "y4mscaler", "y4mtoppm", "pnmcut" y "pnmtojpeg".
 media-libs/netpbm
 media-video/mjpegtools
 media-video/y4mscaler  
 megia-gfx/imagemagick

Directorio de instalación

Crea uno para el software a instalar. Recuerda hacer login con tu nuevo usuario 'vdr'.

Directorio: /home/vdr/vdr-1.5.9
$ cd $HOME (/home/vdr)
$ mkdir vdr-1.5.9
$ cd vdr-1.5.9

Instalación de XINE

Un plugin de VDR muy utilizado es el de salida de video. Existen varios, pero los más usados son:

  1. xine
  2. softdevice
  3. xineliboutput

En esta sección explico cómo preparar XINE.

Descomprimir Xine y Plugin Xine

Crear un directorio XINE y bajarse los tres paquetes necesarios

Directorio: /home/vdr/vdr-1.5.9/XINE
$ cd /home/vdr/vdr-1.5.9
$ mkdir XINE
$ cd XINE

$ wget http://home.vrweb.de/~rnissl/vdr-xine-0.7.11.tgz
$ wget http://home.vrweb.de/~rnissl/xine-lib-cvs-20070829224000.tar.bz2
$ wget http://home.vrweb.de/~rnissl/xine-ui-cvs-20070829224000.tar.bz2

$ tar xfj xine-ui-cvs-*
$ tar xfj xine-lib-cvs-*
$ tar xfz vdr-xine-*

IMPORTANTE: Tras descomprimir todo, hay que aplicar el parche del "plugin xine" al programa "xine":

$ patch -d. -p0 < ./xine-0.7.11/patches/xine-lib.patch

Compilar XINE-LIB y XINE

Notar que las opciones que utilizo a continuación son específicas para mi caso donde tengo una tarjeta NVIDIA. Si tienes otra tarjeta de video te recomiendo que analices los ficheros de documentación para poder encontrar la mejor combinación.


Compilación e instalación de xine-lib

$ cd /home/vdr/vdr-1.5.9/XINE/xine-lib
$ ./autogen.sh --with-xvmc-lib=XvMCNVIDIA --with-xvmc-path=/usr/X11R6/lib \
               --with-xxmc-lib=XvMCNVIDIA --with-xxmc-path=/usr/X11R6/lib
$ make
# make install    (Instala xine-lib en /usr/local/lib por defecto)
# ldconfig -v

Compilación e instalación de xine-iu

$ cd /home/vdr/vdr-1.5.9/XINE/xine-ui
$ export LD_CONFIG=/usr/local/lib
$ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./autogen.sh --enable-vdr-keys
$ make
# make install    (Instala xine-ui en /usr/local/lib por defecto)


Extraer y compilar VDR

Requisitos

VDR requiere ficheros cabecera .h de drivers Linux-DVB para compilar. En el kernel 2.6 (el que utilizo) vienen incluidos y deberían estar bajo /usr/include/linux/dvb. Si tus ficheros de cabecera (.h) de tu DVB están en una ubicación diferente entonces necesitas renombrar el fichero Make.config.template a Make.config y modificar la variable DVBDIR dentro del mismo.

Es necesario contar con las siguientes librerias, así como sus paquetes de desarrollo de modo que VDR pueda contar con los ficheros cabecera .h necesarios y compile correctamente.

 fontconfig
 freetype2
 gettext
 libcap
 libjpeg

Extracción

Primero extraemos el programa vdr

$ cd /home/vdr/vdr-1.5.9
$ wget ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.5.9.tar.bz2
$ tar xfj vdr-1.5.9.tar.bz2

Parches

En mi caso tengo 2 tarjetas DVB-S sin disecq apuntando a dos satélites distintos. Eso significa que necesito aplicar el parche "Sourcecaps", que permite soportar 2 o más tarjetas DVB-S sin disecq apuntando a diferentes Satélites.

Consulta el artículo sobre el parche SourceCaps y su instalación. Recuerda que tienes que usar la versión más moderna del mismo, que encontrarás en la sección de enlaces de dicha página.

Compilación (vanilla)

Primero veamos cómo compilar VDR sin aplicarle ningún parche, sin plugins extra. Esto es lo que en el mundo de los desarrolladores se conoce como la versión vanilla.

Después de la extracción anterior ejecutamos lo siguiente:

$ cd vdr-1.5.9
$ make REMOTE=LIRC NO_KBD=1

Las opciones REMOTE=LIRC NO_KBD=1 son específicas para mi configuración, donde no necesito manejar con el teclado el programa vdr ya que sólo voy a usar el mando remoto (a través de LIRC).

No ejecuto vdr todavía, primero configuro el directorio de video y los ficheros de configuración.

Configuración de vdr

Esta sección es muy importante, te da información sobre cómo preparar los directorios de trabajo y ficheros de configuración en su ubicación correcta para que vdr funcione de forma perfecta.

Directorios de trabajo

El directorio principal de trabajo del VDR es el llamado VIDEODIR o 'video', que por defecto apunta a /video, pero que podemos cambiar.

Directorio: /estudio/video-1.5.9
# cd /estudio
# mkdir video-1.5.9
# chown vdr:vdr video

Ficheros de configuración

Hay varios ficheros de configuración que contienen información sobre los canales, teclas del control remoto, grabaciones (timers), etc. Por defecto se asume que dichos ficheros estarán en el VIDEODIR pero es posible que dicho directorio se encuentre en otra ubicación (habría que usar la opción -c para indicarla).

Otros directorios importantes que se encuentran debajo de VIDEODIR son:

plugins   Ficheros de configuración de los diferentes plugins.

Si estás empezando, te recomiendo que copies todos los ficheros *.conf que vienen con la distribución de VDR al directorio VIDEODIR.

Configuración mínima y arranque

Dado que ya hemos creado el directorio de videodir, copiemos los ficheros de configuración y arranquemos vdr:

$ cd /home/vdr/vdr-1.5.9/vdr-1.5.9
$ cp *.conf /estudio/video-1.5.9
$ mkdir /estudio/video-1.5.9/plugins

$ cd /estudio/video-1.5.9
$ ls -al 
total 40
drwxr-xr-x 3 vdr  vdr    232 Oct  6 18:54 .
drwxr-xr-x 5 root root   128 Oct  6 18:50 ..
-rw-r--r-- 1 vdr  vdr   2225 Oct  6 18:52 channels.conf
-rw-r--r-- 1 vdr  vdr   2505 Oct  6 18:51 diseqc.conf
-rw-r--r-- 1 vdr  vdr    210 Oct  6 18:51 keymacros.conf
drwxr-xr-x 2 vdr  vdr     48 Oct  6 18:50 plugins
-rw-r--r-- 1 vdr  vdr   3788 Oct  6 18:51 sources.conf
-rw-r--r-- 1 vdr  vdr    442 Oct  6 18:53 svdrphosts.conf
-rw-r--r-- 1 vdr  vdr    497 Oct  6 19:01 remote.conf

Además he añadido el fichero remote.conf configurado para mi mando TS35

Arranque usando la opción '-v' para apuntar a un sitio diferente a /video:

$ cd /home/vdr/vdr-1.5.9/vdr-1.5.9
$ vdr -v /estudio/video-1.5.9 -c /estudio/video-1.5.9

Podrás observar en el 'log' del sistema la salida del comando 'vdr'. Puedes consultar este ejemplo del log de arranque de vdr vanilla por si te es de ayuda:

Configuración de plugins

A continuación muestro cómo instalar y compilar algunos plugins. Los más importantes son los de salida de video, es decir que permitan a VDR mostrar la televisión y el OSD. Los más usados son: xine, softdevice y xineliboutput. Empezaremos por softdevice

Plugins

Softdevice

Usaremos softdevice como el primer módulo (del inglés plugin) a instalar y compilar. El módulo softdevice va a permitir mostrar en pantalla (completa) la salida de vdr y poder ver la televisión/canales, así como acceder a los menús a través del OSD).

Estos son los pasos para instalar el plugin:

$ cd /home/vdr/vdr-1.5.9/vdr-1.5.9
$ cd PLUGIN/src

Bajarse la última versión CVS (más información en http://softdevice.berlios.de/)
$ cvs -d:pserver:anonymous@cvs.softdevice.berlios.de:/cvsroot/softdevice login  (Password: Pulsar enter)
$ cvs -d:pserver:anonymous@cvs.softdevice.berlios.de:/cvsroot/softdevice co softdevice
$ cd softdevice
$ ./configure
Xine

Estos son los pasos para instalar el plugin:

$ cd /home/vdr/vdr-1.5.9/vdr-1.5.9
$ cd PLUGIN/src
$ cp -Rufp /home/vdr/ies-1.5.9/XINE/xine-0.7.11 .
$ ln -s xine-0.7.11/ xine
$ mkdir /estudio/video-1.5.9/plugins/xine
$ cp /home/vdr/vdr-1.5.9/XINE/xine-0.7.11/data/noSignal.mpg /estudio/video-1.5.9/plugins/xine

Compilación PLUGINs

Ya tenemos compilado vdr y ahora vamos a compilar todos los plugins del directorio PLUGINS/src.

$ cd /home/vdr/vdr-1.5.9/vdr-1.5.9
$ make plugins

Arrancar vdr con módulo Softdevice

Para arrancar vdr con nuestro primer plugin compilado:

$ cd /home/vdr/vdr-1.5.9/vdr-1.5.9
$ ./vdr -v /estudo/video-1.5.9 -c /estudo/video-1.5.9 -g /tmp -w 60 '-Psoftdevice -vo xv:full'"

Arrancar vdr con módulo Xine

Para arrancar vdr con Xine primero hay que arrancar vdr y después xine (desde otra ventana).

$ /usr/local/bin/xine -f vdr:/tmp/vdr-xine/stream#demux:mpeg_pes
$ cd /home/vdr/vdr-1.5.9/vdr-1.5.9
$ ./vdr -v /estudio/video-1.5.9 -c /estudio/video-1.5.9 -g /tmp -w 60 '-Pxine -r'"


Vdradmin

Un módulo muy recomendado es el Vdradmin-AM.

Enlaces

[1] http:// Página de referencia



--Luis 11:45 6 oct 2007 (CEST)


Herramientas personales