Hallo liebe Gemeinde,
nach langer Arbeit gibt es nun eine groß angelegte Testphase und um diese einzuleiten eine erste Version der künftigen Version 1.0 von Text2Skin.
Plugin:
http://www.magoa.net/linux/contrib/vdr-text2skin-1.0-rc2.tgz
Demo-Skins (Aluminium, HighTech256 und EgalSimple - my favourite :D):
http://www.magoa.net/linux/con…luminium-1.0-demo.tar.bz2
http://www.magoa.net/linux/con…hTech256-1.0-demo.tar.bz2
http://www.magoa.net/linux/con…alSimple-1.0-demo.tar.bz2
CVS:
cvs -d:pserver:anoncvs@text2skin.vdr-developer.org:/var/cvsroot login
cvs -d:pserver:anoncvs@text2skin.vdr-developer.org:/var/cvsroot co text2skin
danach nur noch im text2skin-Verzeichnis:
cvs update
UPDATE -rc2
Fehlermeldung im OSD und Fallback auf Classic wenn Skin nicht darstellbar
HasXXX und IsXXX Tokens umbenannt um Kontext besser darzustellen (alte Namen sind Aliase auf bisherige Bedeutung)
Neue Tokens FollowingHasXXX und FollowingIsXXX
Neue Tokens PresentHasVPS, FollowingHasVPS
Verschachtelte Blöcke und Listen
Scrolling im Audio-Menü
Neues Token {ChannelID}
trans() Funktion funktioniert wieder,bzw ist wieder erforderlich
Auto-Translator übersetzt nur Texte die in <text> notiert sind, das auch nur wenn der Text nicht nur aus Tokens besteht
Neue Funktion ne (Ungleichheit)
Neue Tokens {ReplayIsShuffle} und {ReplayIsLoop} für Wiedergabe im MP3-Modus
Attribut clean für {ReplayTitle} entfernt [LS] vom Titel bei MP3-Wiedergabe
Neue Tokens {AudioTrack} (derselbe Text der im Audio-Menü erscheint) und {AudioChannel} ("stereo", "left" oder "right", oder "" falls die Information nicht verfügbar ist)
<blink> ohne blinkColor blinkt jetzt einfach nur (an/aus)
Neue Funktionen lt, gt, le, ge (less than, greater than, less or equal, greater or equal), die direkt mit numerischen Werten arbeiten können
Neues Token {FreeDiskSpace}, welches sowohl als Zahl in MB als auch in Stunden/Minuten (wie z.B. PresentProgress) verfügbar ist
intern wird (als Vorbereitung auf einige weitere Funktionen und Tokens) konsequent ein eigener Typ für Strings und Zahlen verwendet. Bitte auf Nebeneffekte prüfen!
Ein kleiner Patch (Einzeiler) vdr-1.3.17-osdbase-maxitems.diff erlaubt dyn. Veränderungen bei <list> (per condition)
UPDATE -rc1
Einige Segfaults behoben
Items <marquee> und <blink> sollten endgültig auch in Listen funktionieren
Übersetzungen funktionieren jetzt
UPDATE -pre6
Attribut Breite bei fonts: font="bla.ttf:Größe,Breite"
Attribut delay für <marquee>
Neues Item <blink>, analog zu <text>, mit Attributen delay und blinkColor um Blinkfrequenz und -farbe festzulegen
Es sollte kein Neustart mehr erforderlich sein wenn die Settings vom OSD verändert wurden.
{PresentProgress:%H\:%M\:%S} u.ä. sollten jetzt korrekt funktionieren.
ReplayMode "mplayer" geht wieder
{CurrentRecording} liefert im zwei Sekunden Takt die aktuell laufenden Aufnahmen. Alternativ {CurrentRecording:n} für die n-te laufende Aufnahme
<marquee> alternativ zu <text> scrollt überlange Texte hin und her
UPDATE -pre5
Im Replay und Channeldisplay gibt es jetzt auch Colorbuttons (Channels: z.Zt. unbenutzt, Replay: Ich habe einen Patch beigelegt der das für den DVB-Player illustriert. Andere Plugins müssten die SetButton-Aufrufe nachrüsten)
Neue Tokens {PresentRemaining} und {ReplayRemaining}, die Zeit bis zum Ende einer Wiedergabe (gibt immernoch Probleme, die werd ich übers WE bearbeiten)
Leerstellen-Problem bei Menülogos beseitigt (funzt jetzt auch für "Disk abspielen" :])
Neuer Token-Cache, der die Sache auf langsamen Maschinen noch nen Tick beschleunigen sollte
VDR stürzt nicht mehr ab wenn etwas versucht ein OSD zu öffnen wenn bereits eins offen ist
UPDATE -pre4
Font-Engine unterstützt jetzt multiple character sets (je nach eingestellter Sprache)
Bilder können skaliert und runtergerechnet werden
Bildercache dementsprechend revidiert (damit ist auch der alpha-Bug bei Logos weg)
file-Funktion berücksichtigt nun auch schon im Cache vorhandene Bilder um Plattenzugriffe zu vermeiden
Neue Tokens {ChannelBouquet} und {ChannelPortal}
UPDATE -pre3
Neue Funktion plugin(...) für Menülogos bei Plugin-Einträgen, Bsp.: equal({MenuCurrent:clean},plugin('mp3')) (macht noch zicken bei Leerstellen im Text)
XML Kommentare werden korrekt interpretiert
MenuCurrent-Fehler der zum Absturz führte ist beseitigt.
{IsMute} korrigiert
UPDATE -pre2
Scroller wurde nie neu gesetzt bei geänderten Texten
{IsMenuCurrent}, z.B. für hervorgehobene aktuelle Elemente korrigiert
Farben für den Schnittmodus eingefügt (siehe zweites Beispielskin
Abfrage der file() Funktion beschleunigt
KEY-FEATURES
- Komplett neu entworfene, XML-basierte Rendering-Engine
- Support für Funktionen und zusammengesetzte Texte
- neues Dateiformat erlaubt wesentlich differenziertere Ausgestaltung von Skins
- TrueType-Font Support (dank an Kenny!)
- Bildskalierung und Farbreduzierung (dank an Kenny!)
- Blink- und Lauftexte
- Funktionen, um Logodarstellung zu ermöglichen
TODO
- Konvertierung und Erweiterung bestehender Skins (geht an die Skin-Maintainer :D)
- Vergleichen der Geschwindigkeit alt/neu (dazu gibts auch noch ein Flag ganz oben in screen.h namens DIRECTBLIT - bitte auch probieren)
Im Plugin enthalten ist ein Script contrib/skin_to_10.pl, welches eine Hilfestellung beim Konvertieren eines Skins gibt. Es nimmt aber niemandem die Arbeit vollständig ab!! Speziell im Menü vermag das Script keine Wunder zu vollbringen.
Eine komplette Einführung in das neue Skin-Format am Beispiel des konvertierten und modifizierten Aluminium inkl. einiger neuer Möglichkeiten gibt es im Docs Verzeichnis und in den dort gespeicherten Wiki-Seiten (Deutsch und Englisch)