Text2skin-plugin

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Links)
(Aktuelle Version)
 
(102 dazwischenliegende Versionen von 48 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
 
'''Autor:''' Sascha Volkenandt
 
'''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.  
+
Dieses Plugin lädt xml-basierte Text-Skins zur Anpassung des On-Screen-Display (OSD) des VDR.
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.
+
Die Skins können zur Laufzeit des VDR per Menü ausgewählt werden. Alle Skins können mit Farbvarianten (Theme) erstellt werden.
  
==Skins==
+
===Status===
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. [[SpeicherMod|Auf 4MB erweiterte DVB-FF-Karten]], budget-Karten mit Softdevice oder die PVR350 können dagegen auch 1MB Skins darstellen.
+
Letztes Update 11/2011
  
90kB Skins sind aufwärtskompatibel, soll heißen sie funktionieren auch mit auf [[SpeicherMod|4MB erweiterte DVB-FF-Karten]].
+
==Bilder==
 +
Je nach Ausgabe-Plugin und -device werden unterschiedliche Speichergrößen bei den Skins benutzt werden:
 +
* DVB Full-Featured SD Karten können Skins mit einer max. Größe von 90 kB darstellen
 +
* DVB Full-Featured SD Karten mit [[FF-Karten Speichererweiterung|4 MB OSD RAM]], normale Ausgabe-Plugins und die PVR350 können dagegen auch 1-MB-Skins darstellen.
  
Einiege Skins (256) sind wiederrum abwärtskompatibel, die README des Skins weiß meistens mehr!
+
Einige Skins (256) sind auch für DVB Full-Featured SD Karten nutzbar.
  
===256 / 1MB===
+
;Hochauflösend
{|
+
<gallery>
|[[Bild:skin-256-lightblue-0.jpg|thumb|none|''lightblue256'']]
+
PearlHD_Screenshot.png|[[PearlHD]]
|[[Bild:skin-256-roundblue-0.jpg|thumb|none|''roundblue256'']]
+
</gallery>
|[[Bild:skin-256-roundorange-0.jpg|thumb|none|''roundorange256'']]
+
|-
+
|[[Bild:skin-256-gold-0.jpg|thumb|none|''gold'']]
+
|[[Bild:skin-256-steel-0.jpg|thumb|none|''steel'']]
+
|[[Bild:skin-256-hightech-0.jpg|thumb|none|''hightech'']]
+
|-
+
|[[Bild:skin-256-enigma-0.jpg|thumb|none|''enigma'']]
+
|
+
|
+
|}
+
  
===16 / 90kB===
+
;256 / 1 MB
{|
+
<gallery>
|[[Bild:skin-16-hightech-0.jpg|thumb|none|''hightech'']]
+
skin-256-lightblue-0.jpg|lightblue256
|[[Bild:skin-16-demo-0.jpg|thumb|none|''demo'']]
+
skin-256-enigma-1.jpg|enigma
|[[Bild:skin-16-deepblue-0.jpg|thumb|none|''deepblue'']]
+
</gallery>
|-
+
|[[Bild:skin-16-lightblue-0.jpg|thumb|none|''lightblue16'']]
+
|[[Bild:skin-16-enelchi-0.jpg|thumb|none|''enelchi'']]
+
|}
+
  
==Hardwareanforderungen==
+
;16 / 90 kB
Das Plugin selbst hat keine besonderen Hardware-Anforderungen, jedoch gibt es zwei Arten von Skins:
+
<gallery>
 +
skin-16-deepblue-0.jpg|deepblue
 +
skin-16-lightblue-0.jpg|lightblue16
 +
skin-16-enelchi-0.jpg|enelchi
 +
skin-256-enigma-1.jpg|enigma (mit reduzierter OSD-Größe, max. ca. 460 Pixel Höhe)
 +
skin-16-motz.jpg|Motz
 +
Skin-16-silvergreen.jpg|SilverGreen
 +
</gallery>
  
* "90kb" Standard-OSD
+
==Für Skin-Entwickler==
* "1mb" OSD für gemoddete full-featured Karten (siehe [[SpeicherMod]])
+
Für Entwickler von Text2Skin Skins gibt es eine Dokumentation im text2skin-Paket und weiterhin
 +
* [[Text2skin-Skin erstellen]]
 +
* [[Text2skin-Skin Referenz]]
  
wenn ein Skin mit zu vielen Farben auf einer nicht umgebauten
+
==Software-Anforderungen==
DVB-Karte verwendet wird, kann das Skin entweder gar nicht
+
* ImageMagick
oder nur mit massiven Fehlern dargestellt werden -
+
* libpng
bei kleinem Skin auf großem OSD natürlich problemlos.
+
* pkgconfig
 
+
* imlib2 (optional)
==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
 
* freetype
  
==Installation==
+
==Konfiguration==
<pre>
+
Die Skins sind einfach in das Konfigurationsverzeichnis der Plugins zu entpacken. Bei einigen DIstributionen liegen diese Skins auch in /usr/share/vdr/text2skin.
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
+
mkdir -p [[Struktur|$VDRCONFIG]]/plugins/text2skin
cd ImageMagick-<VERSION>
+
tar xvzf /wo/auch/immer/demo.tgz -C [[Struktur|$VDRCONFIG]]/plugins/text2skin
./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 -
+
==Probleme und Wünsche==
tar zxvf freetype-<VERSION>.tar.gz
+
# {{bug tracker mantisbt}}
cd freetype-<VERSION>
+
# [http://projects.vdr-developer.org/projects/plg-text2skin/issues/new Ticket-System]
./configure --prefix=/usr/local
+
make
+
make install
+
ldconfig
+
  
cd -
+
===Snapshot===
tar xvzf expat-<VERSION>.tar.gz
+
git clone git://projects.vdr-developer.org/vdr-plugin-text2skin.git
cd expat-<VERSION>
+
./configure --prefix=/usr/local
+
make
+
make install
+
ldconfig
+
</pre>
+
  
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:
+
==Aktuelle Version==
in '''$SOURCEDIR/VDR/dvbosd.c''' ändern:
+
[http://projects.vdr-developer.org/attachments/download/783/vdr-text2skin-1.3.2.tgz Version 1.3.2]
  
<pre>
+
[http://www.vdr-portal.de/board17-developer/board97-vdr-core/p1284571-produktive-problem-und-pluginl%C3%B6sungen-f%C3%BCr-vdr-2-3-2-und-h%C3%B6her/#post1284571 Patch für VDR 2.3.2]
#define MAXOSDMEMORY 1000000
+
</pre>
+
  
anschließend im VDR Sourceverzeichnis
+
==Anpassung an 2.1.x==
  
 
<pre>
 
<pre>
make clean
+
vdr3 text2skin-140929 # diff -u render.c.org render.c
make
+
--- render.c.org        2014-09-29 21:02:50.000000000 +0200
</pre>
+
+++ render.c    2015-02-07 11:53:41.702665891 +0100
 +
@@ -837,7 +837,7 @@
 +
        switch (Token.Type) {
 +
        case tFreeDiskSpace: {
 +
                        int FreeMB;
 +
-                      VideoDiskSpace(&FreeMB);
 +
+                      cVideoDirectory::VideoDiskSpace(&FreeMB);
 +
                        Dprintf("FreeMB: %d, attrib type is %d\n", FreeMB,Token.Attrib.Type);
 +
                        return Token.Attrib.Type == aString && Token.Attrib.Text.length() > 0
 +
                              ? (cxType)DurationType(FreeMB * 60 / MB_PER_MINUTE,
 +
@@ -847,13 +847,13 @@
  
Ab VDR-1.3.17 ist das nicht mehr nötig.
+
        case tUsedDiskSpace: {
 +
                        int FreeMB, UsedMB;
 +
-                       VideoDiskSpace(&FreeMB, &UsedMB);
 +
+                      cVideoDirectory::VideoDiskSpace(&FreeMB, &UsedMB);
 +
                        return (cxType)UsedMB;
 +
                }
  
==Skins==
+
        case tTotalDiskSpace: {
Die Skins sind einfach in das Konfigurations-Verzeichnis der Plugins zu entpacken.
+
                        int FreeMB, UsedMB;
 
+
-                       VideoDiskSpace(&FreeMB, &UsedMB);
mkdir -p [[struktur|/etc/vdr/plugins/text2skin]]
+
+                      cVideoDirectory::VideoDiskSpace(&FreeMB, &UsedMB);
tar xvzf /wo/auch/immer/demo.tgz -C [[struktur|/etc/vdr/plugins/text2skin]]
+
                        return (cxType)FreeMB+UsedMB;
 
+
                }
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
+
* [[Text2skin-Skin erstellen]]
+
* [[Text2skin-Skin Referenz]]
+
 
+
Nach getaner Arbeit sollte man über eine Veröffentlichung auf [http://www.vdrskins.org/vdrskins 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:
+
 
+
<pre>
+
rpm -qa | grep ImageMagick | xargs rpm -e --nodeps
+
 
</pre>
 
</pre>
  
Bei doppelten freetype Versionen (soll ja vorkommen) ist der '''PATH''' vorm uebersetzen des Plugins zu "verschieben":
+
==Links==
 +
# [http://projects.vdr-developer.org/projects/show/plg-text2skin Homepage]
 +
# [[Skins]]
 +
# [http://vdr.bluox.org/download/Logos Hqlogos (FR)]
  
export PATH=/usr/local/bin:$PATH
+
[[Kategorie:Plugins]]
 
+
[[Kategorie:Skin-Plugins]]
Heißt, das '''freetype-config''' erst in '''/usr/local/bin''' gesucht wird, siehe Makefile des Plugins.
+
[[Kategorie:XML-Skins]]
 
+
{{i18n|text2skin-plugin}}
<pre>
+
ifneq ($(shell which freetype-config),)
+
                      ^^^^^^^^^^^^^^^^^^^^^
+
INCLUDES += $(shell freetype-config --cflags)
+
                                    ^^^^^^^^^^^^^^^^^^^^^^^^
+
LIBS += $(shell freetype-config --libs)
+
                                ^^^^^^^^^^^^^^^^^^^^^^
+
</pre>
+
 
+
==Optionen==
+
{| border=1 cellpadding=2 cellspacing=0
+
|-
+
| bgcolor=#efefef | HAVE_IMAGEMAGICK=1
+
|
+
|-
+
| bgcolor=#efefef | HAVE_IMLIB2=1
+
|
+
|-
+
| bgcolor=#efefef | 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
+
|}[[Kategorie:Plugins]]
+

Aktuelle Version vom 28. Januar 2017, 15:42 Uhr

Inhaltsverzeichnis

[Bearbeiten] Beschreibung

Autor: Sascha Volkenandt

Dieses Plugin lädt xml-basierte Text-Skins zur Anpassung des On-Screen-Display (OSD) des VDR. Die Skins können zur Laufzeit des VDR per Menü ausgewählt werden. Alle Skins können mit Farbvarianten (Theme) erstellt werden.

[Bearbeiten] Status

Letztes Update 11/2011

[Bearbeiten] Bilder

Je nach Ausgabe-Plugin und -device werden unterschiedliche Speichergrößen bei den Skins benutzt werden:

  • DVB Full-Featured SD Karten können Skins mit einer max. Größe von 90 kB darstellen
  • DVB Full-Featured SD Karten mit 4 MB OSD RAM, normale Ausgabe-Plugins und die PVR350 können dagegen auch 1-MB-Skins darstellen.

Einige Skins (256) sind auch für DVB Full-Featured SD Karten nutzbar.

Hochauflösend
256 / 1 MB
16 / 90 kB

[Bearbeiten] Für Skin-Entwickler

Für Entwickler von Text2Skin Skins gibt es eine Dokumentation im text2skin-Paket und weiterhin

[Bearbeiten] Software-Anforderungen

  • ImageMagick
  • libpng
  • pkgconfig
  • imlib2 (optional)
  • freetype

[Bearbeiten] Konfiguration

Die Skins sind einfach in das Konfigurationsverzeichnis der Plugins zu entpacken. Bei einigen DIstributionen liegen diese Skins auch in /usr/share/vdr/text2skin.

mkdir -p $VDRCONFIG/plugins/text2skin
tar xvzf /wo/auch/immer/demo.tgz -C $VDRCONFIG/plugins/text2skin

[Bearbeiten] Probleme und Wünsche

  1. bug tracker mantisbt
  2. Ticket-System

[Bearbeiten] Snapshot

git clone git://projects.vdr-developer.org/vdr-plugin-text2skin.git

[Bearbeiten] Aktuelle Version

Version 1.3.2

Patch für VDR 2.3.2

[Bearbeiten] Anpassung an 2.1.x

vdr3 text2skin-140929 # diff -u render.c.org render.c
--- render.c.org        2014-09-29 21:02:50.000000000 +0200
+++ render.c    2015-02-07 11:53:41.702665891 +0100
@@ -837,7 +837,7 @@
        switch (Token.Type) {
        case tFreeDiskSpace: {
                        int FreeMB;
-                       VideoDiskSpace(&FreeMB);
+                       cVideoDirectory::VideoDiskSpace(&FreeMB);
                        Dprintf("FreeMB: %d, attrib type is %d\n", FreeMB,Token.Attrib.Type);
                        return Token.Attrib.Type == aString && Token.Attrib.Text.length() > 0
                               ? (cxType)DurationType(FreeMB * 60 / MB_PER_MINUTE,
@@ -847,13 +847,13 @@

        case tUsedDiskSpace: {
                        int FreeMB, UsedMB;
-                       VideoDiskSpace(&FreeMB, &UsedMB);
+                       cVideoDirectory::VideoDiskSpace(&FreeMB, &UsedMB);
                        return (cxType)UsedMB;
                }

        case tTotalDiskSpace: {
                        int FreeMB, UsedMB;
-                       VideoDiskSpace(&FreeMB, &UsedMB);
+                       cVideoDirectory::VideoDiskSpace(&FreeMB, &UsedMB);
                        return (cxType)FreeMB+UsedMB;
                }

[Bearbeiten] Links

  1. Homepage
  2. Skins
  3. Hqlogos (FR)
In anderen Sprachen