Text2skin-plugin

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Beschreibung)
(Aktuelle Version)
 
(116 dazwischenliegende Versionen von 56 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
==Beschreibung==
 
==Beschreibung==
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 zu stehen.
+
'''Autor:''' Sascha Volkenandt
Es ist möglich, mehrere Skins 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.
+
  
[[Bild:text2skin-plugin.jpg|thumb|none|''Hightech Skin 256'']]
+
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.
  
==Hardwareanforderungen==
+
===Status===
Das Plugin selbst hat keine besonderen Hardware-Anforderungen, jedoch gibt es zwei Arten von Skins:
+
Letztes Update 11/2011
  
* "90kb" Standard-OSD
+
==Bilder==
* "1mb" OSD für gemoddete full-featured Karten (siehe [[SpeicherMod]])
+
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.
  
wenn ein Skin mit zu vielen Farben auf einer nicht umgebauten
+
Einige Skins (256) sind auch für DVB Full-Featured SD Karten nutzbar.
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==
+
;Hochauflösend
* ImageMagick
+
<gallery>
* imlib2
+
PearlHD_Screenshot.png|[[PearlHD]]
letzteres kann im Makefile des Plugins auskommentiert werden, laut README macht es keinen Sinn beide Bibliotheken gleichzeitig zu nutzen.
+
</gallery>
* freetype
+
  
==Installation==
+
;256 / 1 MB
<pre>
+
<gallery>
cd $SOURCEDIR
+
skin-256-lightblue-0.jpg|lightblue256
tar jxvf ImageMagick-<VERSION>.tar.bz2
+
skin-256-enigma-1.jpg|enigma
cd ImageMagick-<VERSION>
+
</gallery>
./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 -
+
;16 / 90 kB
tar zxvf freetype-<VERSION>.tar.gz
+
<gallery>
cd freetype-<VERSION>
+
skin-16-deepblue-0.jpg|deepblue
./configure --prefix=/usr/local
+
skin-16-lightblue-0.jpg|lightblue16
make
+
skin-16-enelchi-0.jpg|enelchi
make install
+
skin-256-enigma-1.jpg|enigma (mit reduzierter OSD-Größe, max. ca. 460 Pixel Höhe)
ldconfig
+
skin-16-motz.jpg|Motz
 +
Skin-16-silvergreen.jpg|SilverGreen
 +
</gallery>
  
cd -
+
==Für Skin-Entwickler==
tar xvzf expat-<VERSION>.tar.gz
+
Für Entwickler von Text2Skin Skins gibt es eine Dokumentation im text2skin-Paket und weiterhin
cd expat-<VERSION>
+
* [[Text2skin-Skin erstellen]]
./configure --prefix=/usr/local
+
* [[Text2skin-Skin Referenz]]
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:
+
==Software-Anforderungen==
in '''$SOURCEDIR/VDR/dvbosd.c''' ändern:
+
* ImageMagick
 +
* libpng
 +
* pkgconfig
 +
* imlib2 (optional)
 +
* freetype
  
<pre>
+
==Konfiguration==
#define MAXOSDMEMORY 1000000
+
Die Skins sind einfach in das Konfigurationsverzeichnis der Plugins zu entpacken. Bei einigen DIstributionen liegen diese Skins auch in /usr/share/vdr/text2skin.
</pre>
+
  
anschließend im VDR Sourceverzeichnis
+
mkdir -p [[Struktur|$VDRCONFIG]]/plugins/text2skin
 +
tar xvzf /wo/auch/immer/demo.tgz -C [[Struktur|$VDRCONFIG]]/plugins/text2skin
  
<pre>
+
==Probleme und Wünsche==
make clean
+
# {{bug tracker mantisbt}}
make
+
# [http://projects.vdr-developer.org/projects/plg-text2skin/issues/new Ticket-System]
</pre>
+
  
Ab VDR-1.3.17 ist das nicht mehr nötig.
+
===Snapshot===
 +
git clone git://projects.vdr-developer.org/vdr-plugin-text2skin.git
  
==Skins==
+
==Aktuelle Version==
Die Skins sind einfach in das Konfigurations-Verzeichnis der Plugins zu entpacken.
+
[http://projects.vdr-developer.org/attachments/download/783/vdr-text2skin-1.3.2.tgz Version 1.3.2]
  
mkdir -p [[struktur|/etc/vdr/plugins/text2skin]]
+
[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]
tar xvzf /wo/auch/immer/demo.tgz -C [[struktur|/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.
+
==Anpassung an 2.1.x==
 
+
===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>
 
<pre>
rpm -qa | grep ImageMagick | xargs rpm -e --nodeps
+
vdr3 text2skin-140929 # diff -u render.c.org render.c
</pre>
+
--- 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 @@
  
Bei doppelten freetype Versionen (soll ja vorkommen) ist der '''PATH''' vorm uebersetzen des Plugins zu "verschieben":
+
        case tUsedDiskSpace: {
 +
                        int FreeMB, UsedMB;
 +
-                      VideoDiskSpace(&FreeMB, &UsedMB);
 +
+                      cVideoDirectory::VideoDiskSpace(&FreeMB, &UsedMB);
 +
                        return (cxType)UsedMB;
 +
                }
  
export PATH=/usr/local/bin:$PATH
+
        case tTotalDiskSpace: {
 
+
                        int FreeMB, UsedMB;
Heißt, das '''freetype-config''' erst in '''/usr/local/bin''' gesucht wird, siehe Makefile des Plugins.
+
-                       VideoDiskSpace(&FreeMB, &UsedMB);
 
+
+                       cVideoDirectory::VideoDiskSpace(&FreeMB, &UsedMB);
<pre>
+
                        return (cxType)FreeMB+UsedMB;
ifneq ($(shell which freetype-config),)
+
                }
                      ^^^^^^^^^^^^^^^^^^^^^
+
INCLUDES += $(shell freetype-config --cflags)
+
                                    ^^^^^^^^^^^^^^^^^^^^^^^^
+
LIBS += $(shell freetype-config --libs)
+
                                ^^^^^^^^^^^^^^^^^^^^^^
+
 
</pre>
 
</pre>
  
==Optionen==
+
==Links==
{| border=1 cellpadding=2 cellspacing=0
+
# [http://projects.vdr-developer.org/projects/show/plg-text2skin Homepage]
|-
+
# [[Skins]]
| bgcolor=#efefef | HAVE_IMAGEMAGICK=1
+
# [http://vdr.bluox.org/download/Logos Hqlogos (FR)]
|
+
|-
+
| bgcolor=#efefef | HAVE_IMLIB2=1
+
|
+
|-
+
| bgcolor=#efefef | HAVE_FREETYPE=1
+
| comment this out if you don't want to use FreeType font rendering
+
|}
+
  
==Probleme==
+
[[Kategorie:Plugins]]
* Nutzung von Imlib2 kann zu Abstürzen führen, wenn gleichzeitig das [[graphtft-plugin]] zum Einsatz kommt.
+
[[Kategorie:Skin-Plugins]]
* vdr <= 1.3.17: bitte Version 0.0.8.1 verwenden (bugfix), ab vdr-1.3.18: cvs oder Version 1.0.x
+
[[Kategorie:XML-Skins]]
 
+
{{i18n|text2skin-plugin}}
==Links==
+
{|
+
| [1]
+
| http://www.enlightenment.org/pages/imlib2.html
+
| Imlib2 Homepage
+
|-
+
| [2]
+
| http://www.imagemagick.org
+
| imagemagick Homepage
+
|-
+
| [3]
+
| http://www.magoa.net/linux
+
| Homepage des Plugins
+
|-
+
| [4]
+
| http://www.freetype.org
+
| freetype
+
|-
+
| [5]
+
| http://expat.sourceforge.net
+
| expat
+
|-
+
| [6]
+
| [[VDR Skins|Skins]]
+
| Links zu den Skins
+
|}[[Kategorie:Plugins]]
+

Aktuelle Version vom 28. Januar 2017, 14: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