Text2skin-plugin
Inhaltsverzeichnis |
Beschreibung
Autor: Sascha Volkenandt
Dieses Plugin wurde erstellt, um das Aussehen des On-Screen-Display des VDR mit XML Skin-Dateien zu verändern, welche über Einstellungen -> OSD zur Verfügung stehen. Es ist möglich, mehrere Skins zu laden und bei laufendem VDR auszuwählen. Alle Skins können themeable erstellt werden (die Farbvarianten können geändert werden) und können Sprachübersetzungen enthalten.
Skins
Ab der Entwicklerversion VDR 1.3.7 unterstützt der VDR auch Skins, die eine Gestaltung des OSD erlauben. Es gibt z.Z. zwei Arten von Skins die vom verfügbaren Speicher des OSD abhängig sind. DVB-full-featured Karten können Skins mit einer max. Größe von 90kB darstellen. Auf 4MB erweiterte DVB-FF-Karten, budget-Karten mit Softdevice oder die PVR350 können dagegen auch 1MB Skins darstellen.
90kB Skins sind aufwärtskompatibel, soll heißen sie funktionieren auch mit auf 4MB erweiterte DVB-FF-Karten.
Einiege Skins (256) sind wiederrum abwärtskompatibel, die README des Skins weiß meistens mehr!
256 / 1MB
16 / 90kB
Hardwareanforderungen
Das Plugin selbst hat keine besonderen Hardware-Anforderungen, jedoch gibt es zwei Arten von Skins:
- "90kb" Standard-OSD
- "1mb" OSD für gemoddete full-featured Karten (siehe SpeicherMod)
wenn ein Skin mit zu vielen Farben auf einer nicht umgebauten DVB-Karte verwendet wird, kann das Skin entweder gar nicht oder nur mit massiven Fehlern dargestellt werden - bei kleinem Skin auf großem OSD natürlich problemlos.
Softwareanforderungen
- ImageMagick >= libpng >= pkgconfig
- imlib2
letzteres kann im Makefile des Plugins auskommentiert werden, laut README macht es keinen Sinn beide Bibliotheken gleichzeitig zu nutzen.
- freetype
Installation
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 - tar jxvf ImageMagick-<VERSION>.tar.bz2 cd ImageMagick-<VERSION> ./configure --prefix=/usr/local \ --without-perl \ --without-dps \ --without-fpx \ --without-gslib \ --without-jbig \ --without-jp2 \ --without-lcms \ --without-tiff \ --without-xml \ --without-x make make install ldconfig cd - tar zxvf freetype-<VERSION>.tar.gz cd freetype-<VERSION> ./configure --prefix=/usr/local make make install ldconfig cd - tar xvzf expat-<VERSION>.tar.gz cd expat-<VERSION> ./configure --prefix=/usr/local make make install ldconfig
Falls eine mit 4MByte ausgerüstete full-featured DVB-Karte mit VDR <= 1.3.16 zum Einsatz kommt, muss VDR noch gepatcht und neu kompiliert werden: in $SOURCEDIR/VDR/dvbosd.c ändern:
#define MAXOSDMEMORY 1000000
anschließend im VDR Sourceverzeichnis
make clean make
Ab VDR-1.3.17 ist das nicht mehr nötig.
Skins
Die Skins sind einfach in das Konfigurations-Verzeichnis der Plugins zu entpacken.
mkdir -p /etc/vdr/plugins/text2skin tar xvzf /wo/auch/immer/demo.tgz -C /etc/vdr/plugins/text2skin
Hinweis: Die Version des Skins muss zur Version von Text2skin passen, ab Version 1.0.x werden nur noch Skins im 1.0 Format unterstützt.
Für Skin-Entwickler
Für alle die sie berufen fühlen einen neuen Skin zu entwickeln, oder einen bestegenden an eigene Vorstellungen anzupassen gibt es Dokumentation im text2skin Paket und hier
Nach getaner Arbeit sollte man über eine Veröffentlichung auf www.vdrskins.org nachdenken.
Tipps
Vor der Installation sollten vorhandene ImageMagick-Versionen deinstalliert werden. Bei einer RPM basierten Distri (z.B. SuSE) wären das folgende Befehle:
rpm -qa | grep ImageMagick | xargs rpm -e --nodeps
Bei doppelten freetype Versionen (soll ja vorkommen) ist der PATH vorm uebersetzen des Plugins zu "verschieben":
export PATH=/usr/local/bin:$PATH
Heißt, das freetype-config erst in /usr/local/bin gesucht wird, siehe Makefile des Plugins.
ifneq ($(shell which freetype-config),) ^^^^^^^^^^^^^^^^^^^^^ INCLUDES += $(shell freetype-config --cflags) ^^^^^^^^^^^^^^^^^^^^^^^^ LIBS += $(shell freetype-config --libs) ^^^^^^^^^^^^^^^^^^^^^^
Optionen
HAVE_IMAGEMAGICK=1 | |
HAVE_IMLIB2=1 | |
HAVE_FREETYPE=1 | comment this out if you don't want to use FreeType font rendering |
Probleme
- Nutzung von Imlib2 kann zu Abstürzen führen, wenn gleichzeitig das graphtft-plugin zum Einsatz kommt.
- vdr <= 1.3.17: bitte Version 0.0.8.1 verwenden (bugfix), ab vdr-1.3.18: cvs oder Version 1.0.x
- OSD merklich langsamer
CVS
cvs -d:pserver:anoncvs@text2skin.vdr-developer.org:/var/cvsroot login cvs -d:pserver:anoncvs@text2skin.vdr-developer.org:/var/cvsroot co text2skin
Links
[1] | http://www.enlightenment.org/pages/imlib2.html | imlib2 |
[2] | http://www.imagemagick.org | imagemagick |
[3] | http://www.freetype.org | freetype |
[4] | http://expat.sourceforge.net | expat |
[5] | http://www.libpng.org/pub/png/libpng.html | libpng |
[6] | http://www.magoa.net/linux | Homepage des Plugins |
[7] | http://www.vdrskins.org/vdrskins | Skin-Galerie mit upload möglichkeit |
[8] | http://smue.org/vdr | randys Skins |
[9] | http://www.fdm-ware.de/vdrskin | Lola's Skins |
[10] | http://home.pages.at/brougs78 | Brougs78 Enigma Skin |
[11] | http://vdr.pfroen.de | Steffx Deepblue Skin |
[12] | http://www.saunalahti.fi/~rahrenbe/vdr/patches | Enelchi Skin |
[13] | http://home.arcor.de/bjoern.sturzrehm/vdr/overview.html | SilverGreen Skin |
[14] | http://skins.vdr-developer.org | izegrey Skin |