Skindesigner 0.8.8

  • Moin,


    in der Version 0.8.0 hat sich einiges geändert. Das alles aufzuzählen wäre an dieser Stelle zu viel, das meiste geschah "unter der Haube". Für den Endanwender gibt es erst mal keinen neuen Features, diese Version konzentriert sich auf Optimierung und Bereinigung des Designs.


    Für die Installation ist folgendes zu beachten:

    • skindesigner 0.8.0 (inlk. libskindesignerapi 0.1.0) aus dem Git installieren
    • tvguideng 0.2.0 aus dem Git installieren
    • weatherforecast 0.2.0 aus dem Git installieren
    • dtd Verzeichnis für installerskin Verzeichnis ggf. manuell kopieren
    • Skins, die noch nicht für skindesigner 0.8.0 angepasst sind, löschen


    Die Git Repositories der Plugins und Skins sind alle aktualisiert, die Plugins sind auch für die aktuellen Versionen getaggt. Falls was nicht funktionieren sollte, bitte auf "Altlasten" prüfen, es dürfen nur die aktuellen Versionen verwendet werden.


    "Meine" Skins metrixhd, simplex, Blackhole und nopacity habe ich bereits auf die neuen Verhältnisse angepasst. Alle anderen Skins müssen nich angepasst werden. Die notwendige Änderungen sind die folgenden:

    • das Attribute "detached" für viewelements wurde entfernt und muss aus den Skins entfernt werden. Skindesigner übernimmt jetzt die Steuerung, welche viewelemente (insbesondere im Hauptmenü) aus performancetechnischen Gründen verzögert ausgegeben werden.
    • "name" für scrollelement in <areascroll> darf nicht für mehrere Funktionen definiert sein, sondern nur für die Funktion, für die "current" "true" ist.
    • tvguideng: Im Recordingmenu wurde aus dem Token {value} das Token {stringvalue} für Texte und {intvalue} für conditions.
    • <progressbarback> und <signalqualityback> in displaychannel sind entfallen. Die entsprechenden Areas aus diesen Viewelementen müssen in den Viewelementen <progressbar> bzw. <signalquality> mit dem Attribut background="true" definiert werden.


    Die Fehler in den Skins werden im Log schön ausgegeben. Also bei den Anpassungen immer die Logs im Auge behalten, dann sollten die Änderungen schnell erledigt sein. Für Fragen stehe ich natürlich gerne zur Verfügung ;)


    Eine der internen Änderungen war, alle zur Verfügung gestellten Tokens über eine numerische Konstante zur Compilezeit "bekannt zu machen". Das gilt auch für die Plugins, die die libskindesignerapi benutzen. Deshalb baut das Plex Plugin leider erst mal nicht gegen die neue libskindesignerapi Version. Ich hoffe, Chris passt das demnächst mal an. Was zu tun ist, sieht man am besten an den Änderungen im TVGuideNG, bei Fragen stehe ich natürlich hier ebenfalls gerne zur Verfügung ;)


    Bezüglich Animmationen hat sich auch ein bisschen was verändert. Zum einen können wie bisher ganze Views eingeblendet (fading) bzw. eingefahren werden (shifting). Sollen bestimmte Viewelemente hiervon ausgenommen werden, kann jedes Viewelement (nicht wie früher nur die, die "detached" waren) per entsprechendem fadetime bzw shifttime Attribut > 0 separat behandelt werden. Das Attribut "delay" kann weiterhin benutzt werden, default ist 0. Natürlich können auch nur einzelne Viewelemente eingeblendet bzw. eingefahren werden.


    Als nächstes muss ich dann mal das Wiki an die neuen Gegebenheiten anpassen. Wie schon geschrieben, diese Version ist noch absolut BETA. Ich habe zwar versucht, so viel wie möglich zu testen, aber meine Zeit ist natürlich auch beschränkt ;) Fehler bitte mit einer entsprechenden detaillierten Fehlerbeschreibung melden, damit ich den Fehler nachvollziehen kann. Bei Crashes optimalerweise gleich einen Backtrace mitliefern.


    Na dann...hoffe ich auf einige Neugierige, die sich als Tester zur Verfügung stellen ;)
    Ciao Louis

  • Alle anderen Skins müssen nich angepasst werden.

    Ich vermute, das bedeutet noch?


    Ansonsten Hut ab, ich hoffe, ich komme da bald zum Testen :)

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Sehe ich das richtig, das aus,


    Code
    <progressbar>
            <area x="18%" y="80%" width="81%" height="2%" layer="2">
                <drawimage imagetype="skinpart" path="progressbar" x="2" y="2" width="{elapsed}/{duration}*{areawidth} - {elapsed}/{duration}*{areaheight}" height="{areaheight}-4"/>
            </area>
        </progressbar>
        <progressbarback>
            <area x="18%" y="80%" width="81%" height="2%" layer="2">
                <drawimage imagetype="skinpart" path="progressbarback_replay" x="0" y="0" width="100%" height="100%"/>
            </area>
        </progressbarback>


    das wird?


    Code
    <progressbar>
            <area x="18%" y="80%" width="81%" height="2%" layer="2">
                <drawimage imagetype="skinpart" path="progressbar" x="2" y="2" width="{elapsed}/{duration}*{areawidth} - {elapsed}/{duration}*{areaheight}" height="{areaheight}-4"/>
            </area>
            <area x="18%" y="80%" width="81%" height="2%" layer="2">
                <drawimage imagetype="skinpart" path="progressbarback_replay" x="0" y="0" width="100%" height="100%"/>
            </area>
        </progressbar>


    Allerdings habe ich noch nicht verstanden, was ich mit background="true" anfangen soll?

  • 3PO: genau...das background="true" muss als Attribut in die area, die vorher im anderen viewelement war. Das sorgt dafür, dass die area nur einmal beim ersten Anzeigen gezeichnet wird.


    Ciao Louis

  • ...das background="true" muss als Attribut in die area, die vorher im anderen viewelement war. ...


    So?


    Code
    <progressbar>
            <area x="18%" y="80%" width="81%" height="2%" layer="2">
                <drawimage imagetype="skinpart" path="progressbar" x="2" y="2" width="{elapsed}/{duration}*{areawidth} - {elapsed}/{duration}*{areaheight}" height="{areaheight}-4"/>
            </area>
            <area x="18%" y="80%" width="81%" height="2%" layer="2">
                <background="true" drawimage imagetype="skinpart" path="progressbarback_replay" x="0" y="0" width="100%" height="100%"/>
            </area>
        </progressbar>
  • Denke eher so?!


    Code
    <drawimage background="true" imagetype="skinpart" path="progressbarback_replay" x="0" y="0" width="100%" height="100%"/>

    - Client1: Thermaltake DH 102 mit 7" TouchTFT * Debian Stretch/vdr-2.4.0/graphtft/MainMenuHooks-Patch * Zotac H55-ITX WiFi * Core i3 540 * 4GB RAM ** Zotac GT630 * 1 TB System HDD * 4 GB RAM * Harmony 900 * satip-Plugin

    - Client2: Alfawise H96 Pro Plus * KODI
    - Server: Intel Pentium G3220 * DH87RL * 16GB RAM * 4x4TB 3.5" WD RED + 1x500GB 2.5" * satip-Plugin
    - SAT>IP: Inverto iLNB

  • Also dann so? [Blockierte Grafik: http://forum.fourthirdsphoto.com/images/smilies/uhm2.gif]


    Code
    <progressbar>
            <area x="18%" y="80%" width="81%" height="2%" layer="2">
                <drawimage imagetype="skinpart" path="progressbar" x="2" y="2" width="{elapsed}/{duration}*{areawidth} - {elapsed}/{duration}*{areaheight}" height="{areaheight}-4"/>
            </area>
            <area x="18%" y="80%" width="81%" height="2%" layer="2 background="true" ">
                <drawimage imagetype="skinpart" path="progressbarback_replay" x="0" y="0" width="100%" height="100%"/>
            </area>
        </progressbar>
  • Wenn das scrollen funktioniert, brauchst du nichts ändern. Ansonsten einfach die "name" definition für das "nicht current element" entfernen, siehe z.B. hier.


    Ciao Louis

  • Beim Kompilieren der neuen Version bekomme ich diese Fehlermeldung: :(

    Code
    g++ -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -std=c++11 -std=c++11 -c -DPLUGIN_NAME_I18N='"skindesigner"'  -I/usr/include/libxml2 -DSCRIPTFOLDER='"/usr/lib/vdr/plugins/skindesigner/scripts"' -DLIBSKINDESIGNERAPIVERSION='"0.1.0"' -I/usr/local/src/vdr-2.2.0/include -I/usr/include/freetype2   -pthread -I/usr/include/librsvg-2.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/cairo -I/usr/include/libpng12 -I/usr/include/pixman-1 -I/usr/include/freetype2   -ljpeg -o skindesigner.o skindesigner.c
    In file included from config.h:11:0,
                     from skindesigner.c:12:
    extensions/pluginmanager.h:6:48: fatal error: libskindesignerapi/skindesignerapi.h: Datei oder Verzeichnis nicht gefunden
     #include "libskindesignerapi/skindesignerapi.h"
                                                    ^
    compilation terminated.

    Meine VDRs:
    >>>Mac mini 2010 mit 2x Sundtek SkyTV Ultimate III, Logitech Harmony 300i, yavdr-0.5a mit softhddevice<<< >>>ZOTAC D2550 ITX-WIFI Supreme mit DD Cine S2, Gehäuse OrigenAE M10, Logitech Harmony 300i, yavdr-0.5a mit softhddevice<<< >>>Raspberry Pi
    2 mit Sundtek SkyTV Ultimate IV, raspbian, rpihddevice-Plugin, Logitech Harmony 200<<<

  • Irgendetwas scheint da nicht zu passen:


    Code
    Jan 30 14:20:38 [vdr] [11876] loading plugin: /usr/lib/vdr/plugins/libvdr-skindesigner.so.2.2.0
    Jan 30 14:20:38 [vdr] [11876] ERROR: /usr/lib/vdr/plugins/libvdr-skindesigner.so.2.2.0: undefined symbol: _ZN15skindesignerapi20cSkindesignerOsdMenu14AddStringTokenESsSs


    libskindesigner wurde neu ausgecheckt, neu gebaut und installiert.

  • Nach erstem kurzen Test muss ich leider feststellen, dass meine Digitaluhr und die CAID Anzeige nicht mehr geht.


    Das Log meint dazu:


  • Ich weiß nicht, ob das hierher gehört, aber plex scheint sich nicht mit der neuen libskindesignerAPI anfreunden zu wollen:


  • maz: bei dir wird die libskindesigenerapi nicht gefunden....das Verzeichnis wird im source Verzeichnis erwartet. Sicher dass das bei dir passt?


    Ciao Louis

  • Ich weiß nicht, ob das hierher gehört, aber plex scheint sich nicht mit der neuen libskindesignerAPI anfreunden zu wollen:

    Das steht ja auch im ersten Post dieses Threads:

    Eine der internen Änderungen war, alle zur Verfügung gestellten Tokens über eine numerische Konstante zur Compilezeit "bekannt zu machen". Das gilt auch für die Plugins, die die libskindesignerapi benutzen. Deshalb baut das Plex Plugin leider erst mal nicht gegen die neue libskindesignerapi Version.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • 3PO: liest du meine Postings? Ich hatte dochg geschrieben dass das Plex Plugin nicht baut und erst an die neue libskindesignerapi angepasst werden muss.


    Ciao Louis

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!