Módulo text2skin
De VdrWiki
Tabla de contenidos |
Descripción
El Módulo (del inglés Plugin) text2skin va a permitirnos cargar e interpretar un conjunto de ficheros que definen el aspecto (que llamaremos "piel") de los menús OSD. Es decir, disfrutaremos de la posibildiad de usar los menús con otro aspecto y colores diferentes al original, incluso podremos crear nuestras propias "pieles" (mira en la sección para desarrolladores de pieles en este mismo artículo) o simplemente emplear las que ya ha creado la comunidad (ver sección Pieles)
Las pieles son ficheros hechos en formato XML y se pueden instalar todas las pieles que se deseen para luego poder elegir entre ellas desde los menús de VDR. Todas son susceptibles de asociarse a un determinado estilo o tema (del inglés Theme), por lo que podras crear tu propio estilo de colores o incluso traducirlas a tu gusto.
Podremos incluir imágenes en las pieles, incluso imágenes animadas, sin embargo vamos a necesitar un software adicional para poder soportar esta funcionalidad, en concreto podremos elegir entre dos librerias: ImageMagick o Imlib2 (ver los enlaces). Se especificará qué libreria usar a la hora de compilar el Módulo. El autor recomienda usar ImageMagick, dado que Imlib2 no soporta imágenes animadas.
Además de lo dicho, una ventaja adicional es que nos va a permitir emplear fuentes de tipo true-type (ancho máximo de los caracteres de 32 pixeles), en cuyo caso también se apoya en la librería externa "freetype2-library". Si no queremos emplear estas fuentes entonces se puede desactivar en el Makefile, y aquellas pieles que referencien fuentes truetype, usarán las de por defecto.
Requisitos hardware
Requisitos de Memoria: Dependiendo del tipo de pieles (hay dos versiones de pieles) que utilicemos junto con el módulo text2skin, se requerirá más o menos memoria en tu equipo VDR:
- "90kb" para OSD, tarjetas normales
- "1MB" para OSD, tarjetas (full feature) modificadas
Si una piel tiene más colores de los soportados por la memoria de OSD, puede que no se consiga leer y no se visualice el menú en pantalla (OSD).
Requisitos software
Si deseamos que se soporten imágenes en diversos formatos entonces necesitamos tener instaladas algunas de las dos librerías siguientes:
- libpng
- expat
- ImageMagick : muchos formatos de imágenes distintos (más lento que imlib2)
- Imlib2 : muchos formatos de imágenes distintos (ver la sección problemas en este mismo artículo). Pueden usarse juntos, pero no es lo usual.
En el caso de no tener ninguna de las dos entonces sólo se soportarán imágenes en formato XPM, sin soporte de transparencias (canal alpha).
Instalación
Antes de ver cómo se instala el Módulo text2skin veamos la instalación de los requisitos de software antes mencionados. Tienes dos opciones, la primera es utilizar el sistema de gestión de paquetes de software de tu distribución: apt (debian), rpm (muchos), emerge (gentoo), etc. Y la segunda opción es descargarte la última versión de los fuentes y compilarlos a mano.
Obviamente te recomiendo que emplees un gestor de paquetes de software para instalar cualquier sofltware en Linux, y que sólo emplees la compilación manual si 1) no está disponible el paquete o 2) estás trabajando con versiones de desarrollo y te gusta trabajar al filo del precipicio, como con VDR ;-)
Instalación de requisitos con los fuentes
- Instalación de la librería libpng
cd $SOURCEDIR tar jxvf libpng-<VERSION>.tar.bz2 cd libpng-<VERSION> make prefix=/usr/local -f scripts/makefile.linux make install -f scripts/makefile.linux ldconfig cd -
- Instalación de ImageMagick
cd $SOURCEDIR
tar jxvf ImageMagick-<VERSION>.tar.bz2
cd ImageMagick-<VERSION>
./configure --prefix=/usr/local \
--without-dps \
--without-fpx \
--without-gslib \
--without-jbig \
--without-jp2 \
--without-lcms \
--without-tiff \
--without-xml \
--without-x
make
make install
ldconfig
- Instalación de freetype
cd $SOURCEDIR tar zxvf freetype-<VERSION>.tar.gz cd freetype-<VERSION> ./configure --prefix=/usr/local make make install ldconfig
- Instalación de expat
tar xvzf expat-<VERSION>.tar.gz cd expat-<VERSION> ./configure --prefix=/usr/local make make install ldconfig
Instalación en distribuciones
Hay tantas distribucines que sería imposible documentarlas, por lo que te enseñamos algunos de los mecanismos más típicos para algunas distros:
-Arch-Linux: pacman -S imagemagick -Crux: prt-get depinst imagemagick -Debian: apt-get install libmagick++9-dev -Gentoo: emerge imagemagick -SuSE: yast -i ImageMagick-devel ImageMagick-Magick++
Instalación del Módulo Text2skin
La instalación de los módulos de VDR es siempre igual, es decir, todos los módulos se instalan de la misma manera, aunque algunos de ellos necesitan cierta adaptación o modificación del Makefile o retoque.
Para instalar text2skin te recomiendo que leas los pasos generales descritos en el artículo Instalación de Módulos, de modo que entenderás mucho mejor el resumen que se muestra a continuación:
Paso 1. Descargar y descomprimir el Módulo
$ cd /tmp $ wget http://www.magoa.net/linux/files/vdr-text2skin-1.0.tgz $ cd $HOME/prog/src/vdr/PLUGINS/src $ tar -xfz /tmp/vdr-text2skin-1.0.tgz $ ln -s text2skin-1.0 text2skin
Nota: Si prefieres utilizar la última versión del desarrollador consulta la sección CVS en este mismo artículo.
Paso 2. Adaptar el Módulo
Parches
Tradicionalmente los Módulos solían incluir parches que se aplicaban a VDR, pero últimamente la tendencia (muy lógica) es que los Módulos NO PARCHEEN VDR. En el caso de Text2skin se trata de los últimos y no necesitas parchear VDR.
Sólo si utilizar una tarjeta DVB con ampliación de memoria a 4MB debes modificar el fichero $SOURCEDIR/VDR/dvbosd.c para aprovechar la mejoría en el OSD (más colores, ventanas mayores)
Busca y cambia la línea donde se define el máximo de memoria y luego recompila VDR:
#define MAXOSDMEMORY 1000000
Opciones
Antes de compilar el módulo es conveniente verificar el fichero Makefile y adaptarlo de acuerdo a tus preferencias respecto a qué librería gráfica utilizar y a las fuentes TrueType.
| HAVE_IMAGEMAGICK=1 | Ponerlo a 1 si hemos instalado ImageMagick. |
| HAVE_IMLIB2=1 | Ponerlo a 1 si tenemos Imlib2. Nota: Si tienes también ImageMagick y está a 1 entonces usará ImageMagick. Te recomiendo que uses ImageMagick y dejes esta línea comentada. |
| HAVE_FREETYPE=1 | Comentar esta opcion si no deseas usar fuentes del tipo TrueType |
Una vez modificado el Makefile ya estamos preparados para compilar el módulo.
Paso 3. Compilar el(los) Módulo(s)
$ cd $HOME/prog/src/vdr $ make plugins
Configuración
Como ya hemos dicho las Pieles son los ficheros que interpretados por el Módulo text2skin nos muestran otro aspecto de VDR, con menús en diferente color y forma, con imágenes, etc. La comunidad ha creado muchas pieles diferentes que puedes utilizar y en esta sección te contamos cómo.
Instalación de las Pieles
Como seguramente ya sabrás, VDR utiliza el directorio VIDEODIR (ver Estructura) como su directorio de configuración principal, y debajo de él se encuentra el directorio plugins. El directorio $VIDEODIR/plugins está dedicado a los ficheros de configuración de los módulos.
Veamos con un ejemplo cómo instalar una piel. He elegido la piel "Enigma" para ver el proceso completo:
- Crea el directorio llamado "text2skin" debajo de $VIDEODIR/plugins.
Debajo de él crea un directorio por cada "piel". Estos directorios para pieles deben llamarse igual que el nombre de la piel que va a residir debajo de él. Cada piel debe tener al menos un fichero con el mismo nombre, pero acabando en la extensión ".skin".
$ cd $VIDEODIR/plugins $ mkdir text2skin
- Descargate la piel que más te guste
Mira en la página de Pieles en la (sección de los enlaces) y descargate la que más te guste. Por ejemplo:
$ cd text2skin $ wget http://www.vdrskins.org/vdrskins/albums/userpics/10208/vdrskin-enigma-0.1.tar.gz
- Descomprime la piel en su directorio
$ tar xvzf vdrskin-enigma.tar.gz $ cd Enigma <== Aquí encontrarás todos los ficheros de esta piel
Instalar Logos
Algunas pieles soportan el mostrarte el logo del canal, y en el caso de "Enigma" pasa lo mismo. De hecho Enigma incluye varios logos debajo del directorio 'Enigma/hqlogos'. Por desgracia no se incluyen demasiados, por lo que tendrás que hacer un trabajo de búsqueda de logos por la red.
Los logos, para Enigma, tienen que ser de 80x80 con transparencia. En la sección de enlaces tienes algunas referencias para buscar logos.
Si no se encuentra un logo apropiado en el directorio 'Enigma/hqlogos' intentará encontrarlo en el directorio 'Enigma/logos' por lo que igual deseas copiar ahí dentro tus logos (o hacer un enlace simbólico).
Veamos un ejemplo:
$ cd $VIDEODIR/plugins/text2skin
$ mkdir logos <== Enigma incluye un enlace simbólico a este directorio, que
todavía no existía.
Si te falta el enlace simbólico entonces ejecuta:
$ cd Enigma
$ ln -s logos ../logos
$ cd ..
$ wget http://www.vdrskins.org/vdrskins/albums/userpics/10138/logos-0.2.tar.gz
$ tar xvfz logos-0.2.tar.gz
$ cd logos
$ ls -al <== Verás un montón de ficheros, cada uno es un logo para un canal.
|
¡ Precaución ! |
|
No he conseguido que los logos del fichero logos-0.2.tar.gz que están en formato .xpm funcionen con Enigma. Todavía estoy investigándolo (Mar'06) |
Instalar Fuentes
La piel Enigma en concreto utiliza un par de fuentes TrueType que no están incluidas y tendrás que conseguir desde algún otro sitio y copiar al directorio de fuentes del módulo o de la piel
$ cd $VIDEODIR/plugins/text2skin $ mkdir fonts $ cd fonts $ cp /path/a/mis/fuentes/tahoma.ttf . $ cp /path/a/mis/fuentes/tahomabd.ttf .
Para desarrolladores de pieles
Para los que quieran crear una piel, o modificarla, hay documentación en el paquete del módulo y en estos enlaces:
Después de crear una piel, debería considerar publicarla en www.vdrskins.org[1].
Ejecución
Para cargar el módulo hay que utilizar -P text2skin durante la carga de vdr:
$ cd $HOME/prog/src/vdr $ ./vdr -P text2skin
Problemas
- Se ha notificado que al emplear la librería Imlib2 junto con el módulo graphtft pueden producirse errores.
CVS
Si deseas instalar la última versión disponible en el servidor CVS del desarrollador, en vez de la última estable, entonces tienes que utilizar los comandos siguientes:
$ cd $HOME/prog/src/vdr/PLUGINS/src $ cvs -d:pserver:anoncvs@text2skin.vdr-developer.org:/var/cvsroot login $ cvs -d:pserver:anoncvs@text2skin.vdr-developer.org:/var/cvsroot co text2skin
Fíjate que no necesitas hacer el enlace simbólico, ya que el directorio que se creará se llama text2skin directamente.
Enlaces
| [1] | http://www.magoa.net/linux/index.php?view=text2skin | Página del módulo |
| [2] | http://www.vdrskins.org/vdrskins | Pieles (y Logos) para el módulo text2skin |
| [3] | http://senderlogos.vdr-developer.org | Logos ofrecidos por Thomas (del vdr portal) |
| [4] | http://www.enlightenment.org/ | Proyecto Enlightenment, donde se encuentra la librería Imlib2 |
| [5] | http://www.imagemagick.org | Página de imagemagick |
--Eduardo 12:04 10 mar, 2006 (CET) -- Traducción inicial.
--Luis 07:28 13 mar, 2006 (CET) -- Ampliación con detalles.

