[SkinNopacity] Aktuelle Probleme

  • Aber welcher Thread sollte das sein, wenn nur ein einziger Thread sich mit dem OSD befasst?

    Schön, das Du da weiter suchst.


    Jetzt wo Du das schreibst, es gibt im Setup vom Plugin den Punkt "High Level OSD". Wenn man den aktiviert, funktioniert Truecolor nicht mehr.

    Wahrscheinlich ist damit Hardwarerendering gemeint, wurde dann aber nicht mehr umgesetzt.


    Hatte ich das schon mal geschrieben? Mit einem anderen Ausgabedevice tritt das Problem nicht auf. Dann kann es wohl nicht am VDR selber liegen?


    Grüße

    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.7 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Jetzt wo Du das schreibst, es gibt im Setup vom Plugin den Punkt "High Level OSD". Wenn man den aktiviert, funktioniert Truecolor nicht mehr.

    Wahrscheinlich ist damit Hardwarerendering gemeint, wurde dann aber nicht mehr umgesetzt.

    Ja, "High Level OSD" heißt Hardware-Rendering, und das war vorher da, bevor es TrueColor gab, denke ich. Jedenfalls erfordert TrueColor-Support das Raw-OSD (VDR-Rendering) und die explizite Aktivierung von TrueColor. Nicht sehr uebersichtlich diese Setup-Einstellung, es gibt ja 3 Modi, was so im Setup nicht direkt ersichtlich ist.


    Mit einem anderen Ausgabedevice tritt das Problem nicht auf. Dann kann es wohl nicht am VDR selber liegen?

    Etwas mehr habe ich herausfinden koennen. Das Software-Rendering achtet genau darauf, welche Teile des OSD sich geaendert haben, nur die werden geupdatet. Deshalb werden beim ersten Flush mehr Daten an die Karte geschickt als danach. Dadurch unterscheiden sich auch die Transferzeiten. Soweit ergibt das fuer mich Sinn. Andere Ausgabedevices haben diese Transferverzoegerung nicht (in dem Ausmaß), deshalb faellt das dort nicht auf.


    Nur was der Mutex mit Verzoegerungszeiten zu tun hat, erschließt sich mir nicht. Jedenfalls wenn es nur einen OSD-Thread gibt (sonst waere das klar).


    Gruss,

    S:oren

  • Ich habe jetzt mal 2 Fix-Vorschläge gebaut und in meinen Test-Branch gepusht:

    https://github.com/s-moch/vdr-…commits/skinnopacity-test


    Da sieht erstens der Logohintergrund bei mir gut aus, zweitens ist das Kanalwechsel-Display jetzt deutlich schneller (unter 100ms beim first Flush). Letzteres klappt nur, wenn man keine Poster anzeigen will. Das mache ich aber sowieso nicht.


    Wuerde mich freuen, wenn das jemand testet (und vielleicht uebernimmt).


    Gruss,

    S:oren

  • Hallo S:oren,


    ich habe mir das mal angesehen.

    Die Idee mit dem kleineren OSD, wenn man keine Scraperinfos benutzt, finde ich gut und beschleunigt das Öffnen des OSD.

    Das angepasste Channel-Logo sieht beim Default-Theme auch soweit gut aus. Allerdings führen die neu eingeführten Parameter dazu, das es jetzt bei anderen Theme nicht mehr ganz passt (vertical alignment). Ich muss mal sehen, wie ich das kompatibel zu allen Theme machen kann.

    Dann würde ich das auch in dem master Branch übernehmen.


    Grüße

    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.7 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Allerdings führen die neu eingeführten Parameter dazu, das es jetzt bei anderen Theme nicht mehr ganz passt (vertical alignment). Ich muss mal sehen, wie ich das kompatibel zu allen Theme machen kann.

    Es ist nur ein Parameter "neu", die Breite des Randes um den Logohintergrund (oben, links, unten gleich). Das war vorher eine absolute Zahl in Pixeln (mit Rundungsfehler), und fuehrte deshalb je nach eingestellter OSD-Auflösung und eingestelltem Abstand der Fensterraender zu einem anderen optischen Eindruck. Also an dieser Stelle nicht konsequent, wo man sonst ja eher Prozente der OSD-Maximalgröße hat (oder z.B. relative Anpassungen der Fontgröße).


    Die Umrechnung von absolutem zu relativem Abstand gelingt somit nicht universell und ich konnte die Idee des Designers nicht eindeutig erkennen. Offenbar passt mein Empfinden hier nicht. Aber ich habe auch keine Idee, ob das wirklich ueber alle Themes gleichartig implementiert ist.


    Nicht ganz sicher bin ich mir, ob Deine kuerzlichen Anpassungen mit der Logogröße in Prozent das nicht noch verschlimmert haben. Kann sein, dass man jetzt lieber die Größe des Hintergrunds statt der Größe des Logos selbst mit Deinem Parameter beieinflussen sollte. Soll ich das mal so anpassen?

    Jedenfalls sollte der Skin mit 720er Aufloesung auch gut aussehen, und im Idealfall genau so wie mit 1080er Aufloesung, denke ich.


    Gruss,

    S:oren

  • Nicht ganz sicher bin ich mir, ob Deine kuerzlichen Anpassungen mit der Logogröße in Prozent das nicht noch verschlimmert haben. Kann sein, dass man jetzt lieber die Größe des Hintergrunds statt der Größe des Logos selbst mit Deinem Parameter beieinflussen sollte. Soll ich das mal so anpassen?

    Jedenfalls sollte der Skin mit 720er Aufloesung auch gut aussehen, und im Idealfall genau so wie mit 1080er Aufloesung, denke ich.

    Diese Änderung hat nur Einfluss auf das Logo selbst, sollte also keinen Einfluss auf den Hintergrund haben.

    Da hatte ich auch schon mal dran gedacht, den Hintergrund auch mit zu skalieren, das hatte ich dann aber vertagt.

    Das Logo zu skalieren hatte nur den Hintergrund, das es manchmal etwas zu groß erschien, und ich dann die Skalierung als Setup-Parameter genommen habe, damit jeder selbst entscheiden kann, wie groß es sein soll.

    Und klar, es sollten alle Auflösungen ordentlich aussehen.:)


    Eine Theme unabhängige Lösung wäre natürlich schön. Was nicht so offensichtlich ist, es werden folgende Unterschiede bei den Themes gemacht: dtFlat, dtBlending und dtGraphical, die als Wert "displayType" übergeben werden. Es gibt da nur eine Stelle in geometrymanager.c, wo das Einfluss auf "channelLogoBgHeight" hat.


    Wenn Du da noch was machen willst, Gerne. Schau Dir bitte auch mal das Theme Green an, da siehst Du dann was ich meine (Vertical alignment: oben, Mitte, Unten). Die Logos sind da im Moment zu hoch.


    Ich habe hier bei mir auch noch ein paar zusätzliche Kleinigkeiten gefixt, und habe das gerade mal in meinen devel-Branch hochgeladen.


    Grüße

    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.7 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

    Einmal editiert, zuletzt von kamel5 ()

  • Die Umrechnung von absolutem zu relativem Abstand gelingt somit nicht universell und ich konnte die Idee des Designers nicht eindeutig erkennen.

    Habe mir die mitgelieferten Fenster- und Logohintergruende des default-Theme nochmal genauer angeschaut. Die haben Größen von 1250x180 bzw. 184x130. Das sieht fuer mich so aus, als wenn das exakte unskalierte Größen fuer ein 1280x720er OSD sein sollen. Werde meine Geometrie exakt darauf anpassen (entsprechend skaliert fuer andere OSD-Aufloesungen oder Randabstaende des Fensters).


    Diese Änderung hat nur Einfluss auf das Logo selbst, sollte also keinen Einfluss auf den Hintergrund haben.

    Da hatte ich auch schon mal dran gedacht, den Hintergrund auch mit zu skalieren, das hatte ich dann aber vertagt.

    Das Logo zu skalieren hatte nur den Hintergrund, das es manchmal etwas zu groß erschien, und ich dann die Skalierung als Setup-Parameter genommen habe, damit jeder selbst entscheiden kann, wie groß es sein soll.

    OK, das soll also einen Rand um das Logo selbst innerhalb des Logohintergrunds bewirken. Wenn ich mich dunkel erinnere, hatte ich das beim Generieren meiner Logos schon beruecksichtigt mit 5% transparentem Rand.


    Jedenfalls ist diese Einstellung unabhaengig von meinen Aenderungen fuer den Logohintergrund.


    es werden folgende Unterschiede bei den Themes gemacht: dtFlat, dtBlending und dtGraphical, die als Wert "displayType" übergeben werden.

    Das hatte ich schon gesehen, an dieser Stelle aber nichts veraendert.


    Ich habe hier bei mir auch noch ein paar zusätzliche Kleinigkeiten gefixt, und habe das gerade mal in meinen devel-Branch hochgeladen.

    Das "Also align channel logo" finde ich nicht so gluecklich. Wenn die Werte fuer das Logo nicht stimmen, dann sollten sie im geometrymanager richtig erzeugt werden, denke ich.

    Was stimmt da nicht? Irgendwas bei Logo-Größe kleiner 100%?

    Vermutlich sinnvoll, wenn ich das in meinem neuen Patch auch gleich richtig mache...


    Gruss,

    S:oren

  • Das "Also align channel logo" finde ich nicht so gluecklich. Wenn die Werte fuer das Logo nicht stimmen, dann sollten sie im geometrymanager richtig erzeugt werden, denke ich.

    Was stimmt da nicht? Irgendwas bei Logo-Größe kleiner 100%?

    Vermutlich sinnvoll, wenn ich das in meinem neuen Patch auch gleich richtig mache...

    Im Theme Green sieht man, das ohne diese Änderung der Hintergrund nicht mehr passt.


    Die ganze Channellogo Darstellung ist aus meiner Sicht sowieso nicht optimal. Es gibt ja hier den Logohintergrund, dann transparente Logos, konvertierte Logos, themenspezifische Logos und auch mal keine Logos, und das wird beim Laden alles berücksichtigt. Im Endeffekt wäre es wahrscheinlich sinnvoll, hier auch nochmal alles zu überarbeiten. Im Prinzip bräuchte es ja nur einen themenspezifischen Hintergrund und ein transparentes Logo, dann könnte man sich den ganzen Rest sparen.


    Grüße

    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.7 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Habe mir die mitgelieferten Fenster- und Logohintergruende des default-Theme nochmal genauer angeschaut. Die haben Größen von 1250x180 bzw. 184x130. Das sieht fuer mich so aus, als wenn das exakte unskalierte Größen fuer ein 1280x720er OSD sein sollen. Werde meine Geometrie exakt darauf anpassen (entsprechend skaliert fuer andere OSD-Aufloesungen oder Randabstaende des Fensters).

    Neue Version in den test-Branch eingecheckt. Das sollte also jetzt das 'originale' Design sein.

    Und es skaliert ordentlich, wenn man das Fenster schmaler oder hoeher macht, oder die OSD-Aufloesung aendert. Nichts verschiebt sich mehr.


    Im Theme Green sieht man, das ohne diese Änderung der Hintergrund nicht mehr passt.

    Das macht mich echt traurig. Ich versuche hier, ein konsistentes Design hinzustellen. Und du machst es gleich wieder kaputt, offenbar ohne jegliches Verstaendnis, was die beiden Werte bedeuten und wann sie gleich oder warum verschieden sind.


    Die ganze Channellogo Darstellung ist aus meiner Sicht sowieso nicht optimal. Es gibt ja hier den Logohintergrund, dann transparente Logos, konvertierte Logos, themenspezifische Logos und auch mal keine Logos, und das wird beim Laden alles berücksichtigt. Im Endeffekt wäre es wahrscheinlich sinnvoll, hier auch nochmal alles zu überarbeiten. Im Prinzip bräuchte es ja nur einen themenspezifischen Hintergrund und ein transparentes Logo, dann könnte man sich den ganzen Rest sparen.

    Sparen koennte man sich bei dem Skin viel, daher ja meine Idee mit der light-Version. Aber ausgerechnet das Design an sich zu aendern, finde ich nicht gut. Man koennte natuerlich den Logohintergrund fest in den Fensterhintergrund integrieren. Dann waere das aber nicht mehr abschaltbar.


    Gerade das besondere Design mit exzessiver Konfigurierbarkeit war immer zentrale Eigenschaft von skinnopacity.


    Gruss,

    S:oren

  • Neue Version in den test-Branch eingecheckt. Das sollte also jetzt das 'originale' Design sein.

    Und es skaliert ordentlich, wenn man das Fenster schmaler oder hoeher macht, oder die OSD-Aufloesung aendert. Nichts verschiebt sich mehr.

    Sehr schön, ich schaue mir das an.

    Das macht mich echt traurig. Ich versuche hier, ein konsistentes Design hinzustellen. Und du machst es gleich wieder kaputt, offenbar ohne jegliches Verstaendnis, was die beiden Werte bedeuten und wann sie gleich oder warum verschieden sind.

    Sorry, das war mit Sicherheit nicht meine Absicht. Und ja, ich hatte das noch nicht vollständig verstanden, wäre mein nächster Schritt gewesen. Es dauert halt manchmal etwas länger, bis man fremden Code voll umfänglich verstanden hat.:rolleyes: Und dann hast Du das ja dankenswerterweise übernommen.

    Dieser commit war auch nur ein erster Schritt, mal zu schauen, was passiert und sollte auch nicht die endgültige Lösung sein.

    Was soll man aber auch denken, wenn das Ergebnis so aussieht:

    -> Logohintergrund passt nicht zu Logo.

    Gerade das besondere Design mit exzessiver Konfigurierbarkeit war immer zentrale Eigenschaft von skinnopacity.

    Das soll natürlich nicht verloren gehen.

    Aber ist das zur Erhaltung der Flexibilität wirklich alles nötig?

    Code
    nopacity: trying to load: /etc/vdr/plugins/skinnopacity/logos/s19.2e-133-11-136.png
    nopacity: Magick Error: Magick: Unable to open file (/etc/vdr/plugins/skinnopacity/logos/s19.2e-133-11-136.png) reported by magick/blob.c:3089 (OpenBlob)
    nopacity: trying to load: /etc/vdr/plugins/skinnopacity/logos/warner tv comedy hd.png
    nopacity: Magick Error: Magick: Unable to open file (/etc/vdr/plugins/skinnopacity/logos/warner tv comedy hd.png) reported by magick/blob.c:3089 (OpenBlob)
    nopacity: trying to load: /etc/vdr/plugins/skinnopacity/logos/green/s19.2e-133-2-14.png
    nopacity: Magick Error: Magick: Unable to open file (/etc/vdr/plugins/skinnopacity/logos/green/s19.2e-133-2-14.png) reported by magick/blob.c:3089 (OpenBlob)
    nopacity: trying to load: /etc/vdr/plugins/skinnopacity/logos/green/sky comedy hd.png
    nopacity: /etc/vdr/plugins/skinnopacity/logos/green/sky comedy hd.png sucessfully loaded

    Braucht es hier wirklich separate Themen-Logos? Die müssen bei jeder Logoänderung auch jedes mal neu erstellt werden. Wer macht das schon. Und dann wundert man sich, warum ein Logo mal wieder anders aussieht.

    Würde es hier nicht reichen, wenn es ein Themenspezifisches Hintergrundlogo und zentrale transparente Channellogos gibt. Man könnte dann auch noch beim Aufruf eine variable Transparenz hinzufügen. Oder habe ich da grundsätzlich was übersehen.


    Grüße

    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.7 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Dann werde ich einerseits versuchen, mit Hilfe aus dem MLD-Forum, einen aussagekräftigen Backtrace zu bekommen.


    Anderseits wäre es super, wenn Du mal MLD installieren könntest.

    Eine MLD-Inst. geht ja auch recht fix... :whistling:

    streamdev-Server: ASRock J3160, MLD 5.5 testing, Mystique SaTiX-S2 V3 Dual + DuoFlex S2, 8GB, 60GB System,

    streamdev-Client 1: NUC6CAYS (Intel HD Graphics 500), MLD 5.5 testing, One For All URC 7960,

    streamdev-Client 2: NUC6CAYH (Intel HD Graphics 500), MLD 5.5 testing, One For All URC 7960,

    Media-Server: Synology DS215j

    AV-Geräte: Hisense H65MEC5550, Dali Zensor 5 AX, Teufel S6000SW


  • Was soll man aber auch denken, wenn das Ergebnis so aussieht:

    -> Logohintergrund passt nicht zu Logo.

    Was _man_ denken soll, moechte ich nicht festlegen. Ich denke jedenfalls, dass hier jemand das Prinzip nicht verstanden hat. Der Logohintergrund ist zweimal da, also entweder wurde der Logo-Hintergrund zusaetzlich zur konfigurierten separaten Anzeige mit in das Logo einkodiert, oder in das Fenster-Hintergrundbild. Beides widerspricht dem Layer-Design von skinnopacity, und daran habe ich nichts geaendert.

    Sollte der Logohintergrund in das Logo einkodiert sein, als Workaround einfach den zusaetzlichen Logohintergrund abschalten. Sollte der Logohintergrund in den Fensterhintergrund einkodiert sein, dann dort loeschen.


    Mag sein, dass es vorher mit exakt Deinen Einstellungen fuer OSD-Größe, Fensterhoehe (eingestellt als % der OSD-Hoehe), Fensterbreite (eingestellt ueber linken und rechten Rand) und der vorhandenen Geometrie der Logos selbst 'zufaellig' gepasst hat. Aber da sich bei dem alten Code der Logohintergrund relativ zum Fensterhintergrund verschoben hat, wenn man irgendeine dieser Einstellungen aendert, war das eben nicht universell nutzbar. Und das aendert mein Patch.


    Als Hintergrund, warum mich das alte Verhalten stoert: Bei einem meiner Fernseher laesst sich der Overscan nicht abschalten. Das OSD muss also zwingend in der Breite verkleinert werden, sonst sieht man die Raender nicht. Und wenn man dann die selben Logos benutzt, verschiebt sich die Anzeige, das ist meiner Ansicht nach unbrauchbar. Ebeso aergerlich, dass sich der optische Eindruck je nach eingestellter OSD-Größe aendert. So laesst sich eben nicht ein universelles Theme-Design bauen. Das waere jetzt moeglich, erfordert aber ggf. kleinere Anpassungen an vorhandenen Themes (und auch da eher nicht, wenn man sich an das Layering gehalten hat). Dass zumindest das Default-Theme passt, finde ich logisch (und kommt mir auch zusaetzlich entgegen, weil ich dies nutze).


    Gruss,

    S:oren

  • Braucht es hier wirklich separate Themen-Logos? Die müssen bei jeder Logoänderung auch jedes mal neu erstellt werden. Wer macht das schon. Und dann wundert man sich, warum ein Logo mal wieder anders aussieht.

    Würde es hier nicht reichen, wenn es ein Themenspezifisches Hintergrundlogo und zentrale transparente Channellogos gibt. Man könnte dann auch noch beim Aufruf eine variable Transparenz hinzufügen. Oder habe ich da grundsätzlich was übersehen.

    Themenspezifisches Hintergrundlogo und zentrale transparente Channellogos sollten reichen. Aber wenn es zentrale Logos gibt, wird doch gar nicht weiter nach Themen-Logos gesucht. Intuitiv wuerde ich das anders herum erwarten, aber zentrale Logos sind wohl tatsaechlich der ueblichere Fall (so auch bei mir). Also wo ist das Problem?


    Gruss,

    S:oren

  • Themenspezifisches Hintergrundlogo und zentrale transparente Channellogos sollten reichen. Aber wenn es zentrale Logos gibt, wird doch gar nicht weiter nach Themen-Logos gesucht. Intuitiv wuerde ich das anders herum erwarten, aber zentrale Logos sind wohl tatsaechlich der ueblichere Fall (so auch bei mir). Also wo ist das Problem?


    Es ist genau anders herum. Zuerst wird in den themenspezifischen Pfaden gesucht und dann erst im zentralen Pfad. Mein Log-Auszug war da etwas missverständlich.

    Der Logohintergrund ist zweimal da

    Genau das ist das Problem. Und es hat auch nichts mit meinen spezifischen Einstellungen zu tun.

    Im Setup kann man ja einstellen, ob man einen Hintergrund für die Kanallogos haben möchte: "Hintergrund für Kanallogos benutzen: Ja/Nein"

    Und genau dieser Kanallogohintergrund passt jetzt, auch mit Deiner letzten Änderung, nicht mehr. Sieht immer noch so aus, wie auf meinem hochgeladenen Bild.

    Der Kanallogohintergrund ist ja dafür da, dass man keine leere Stelle hat, wenn kein Logo gefunden wird oder wenn es einen transparenten Hintergrund hat (ohne Nachbearbeitung).

    Als Hintergrund, warum mich das alte Verhalten stoert: Bei einem meiner Fernseher laesst sich der Overscan nicht abschalten. Das OSD muss also zwingend in der Breite verkleinert werden, sonst sieht man die Raender nicht.


    Ich verstehe Deine Beweggründe schon, ich habe auch so einen Monitor. Dafür kannst Du doch aber im VDR-OSD-Setup die Werte Links, Oben Breite und Höhe ändern. Das gilt dann doch für alle Skins und man muss das nicht separat im Skin berücksichtigen.

    Ebeso aergerlich, dass sich der optische Eindruck je nach eingestellter OSD-Größe aendert. So laesst sich eben nicht ein universelles Theme-Design bauen.

    Ja, das ist nicht schön und mir auch schon aufgefallen. Und da gibt es auch noch andere Stellen im Skin.


    Meine Zielvorstellungen hier waren deshalb, das man nur eine einzige Logo-Pixmap hat, die entsprechend positioniert wird. Und da hinein wird erst der schaltbare themenspzifische Hintergrund geladen, dann möglicherweise eine konfigurierbare Transparenz und zum Schluss das eigentliche Kanallogo (entsprechend skaliert). Und das verbunden mit einem zentralen Logoverzeichnis.


    Grüße

    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.7 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Es ist genau anders herum. Zuerst wird in den themenspezifischen Pfaden gesucht und dann erst im zentralen Pfad. Mein Log-Auszug war da etwas missverständlich.

    OK, hatte nur da geschaut.

    Ich habe die Meldungen abgeschaltet. Da das nur beim Reload des Imagecache gelesen wird, ist das bei mir auch kein Performance-Problem. Habe die Preload-Anzahl im Imagecache auf die Kanalanzahl meiner channels.conf angepasst.


    Genau das ist das Problem. Und es hat auch nichts mit meinen spezifischen Einstellungen zu tun.

    Im Setup kann man ja einstellen, ob man einen Hintergrund für die Kanallogos haben möchte: "Hintergrund für Kanallogos benutzen: Ja/Nein"

    Und genau dieser Kanallogohintergrund passt jetzt, auch mit Deiner letzten Änderung, nicht mehr.

    Bei mir ist der Hintergrund einmal da, wenn ich ihn einschalte, gar nicht, wenn ich ihn ausschalte. Entweder hast Du den Hintergrund in Deine Logos einkodiert, oder Du hast andere Theme-Images mit dem Logohintergrund in dem Fensterhintergrund. Muss man die separat installieren? Dann habe ich vielleicht alte Versionen, wo es noch stimmte.


    Ich verstehe Deine Beweggründe schon, ich habe auch so einen Monitor. Dafür kannst Du doch aber im VDR-OSD-Setup die Werte Links, Oben Breite und Höhe ändern.

    Ja, selbstverstaendlich habe ich das gemacht. Nur kann ich dann auf meinem 1280x720-OSD keine Channelview-Breite von 1250 mehr einstellen, wie es vom Designer vorgesehen war. Und deshalb will ich den selben optischen Eindruck mit schmalerem Fenster haben, ohne dass sich das Logo verschiebt.


    Ja, das ist nicht schön und mir auch schon aufgefallen. Und da gibt es auch noch andere Stellen im Skin.

    Dann muss das dort auch gefixt werden.


    Meine Zielvorstellungen hier waren deshalb, das man nur eine einzige Logo-Pixmap hat, die entsprechend positioniert wird. Und da hinein wird erst der schaltbare themenspzifische Hintergrund geladen, dann möglicherweise eine konfigurierbare Transparenz und zum Schluss das eigentliche Kanallogo (entsprechend skaliert).

    Nur dass das technisch leider nicht geht. Laden kann man nur Bitmaps. Ueberblenden mit der jeweiligen Transparenz kann man nur Pixmaps auf verschiedenen Layern. Man koennte vielleicht teilueberblendete vorgerenderte Pixmaps statt der skalierten geladenen Bitmaps in den imagecache legen, aber das ergibt vermutlich einen anderen optischen Eindruck und man muesste das Redering nochmal selbst implemtieren, was sonst das OSD schon macht. Auch performancemäßig bringt das nicht viel, weil das Logo relativ klein ist und der Datentransfer auf die Karte die Renderzeit uebersteigt.


    Und das verbunden mit einem zentralen Logoverzeichnis.

    Wenig flexibel. Zumindest bei dem Green-Theme scheint es Absicht zu sein, das Logo selbst nach unten verschoben in den 'Röhrenschirm' des Logohintergrunds einzubetten. Das erfordert wiederum angepasste Logos, wenn man nicht stumpf nur alle Logos verkleinern will (was ja jetzt mit Deinem neuen Setting geht).


    Gruss,

    S:oren

  • Bei mir ist der Hintergrund einmal da, wenn ich ihn einschalte, gar nicht, wenn ich ihn ausschalte. Entweder hast Du den Hintergrund in Deine Logos einkodiert, oder Du hast andere Theme-Images mit dem Logohintergrund in dem Fensterhintergrund. Muss man die separat installieren? Dann habe ich vielleicht alte Versionen, wo es noch stimmte.

    Das Grundprinzip ist hier so und dafür gibt es im Moment auch die Themenverzeichnisse, das man sich selbst Logos mit Hintergrund macht (dafür gibt es auch ein script im Ordner logoconverter). Diese Logos werden dann bevorzugt benutzt. Ich habe mir, um das zu Testen, mal ein Set für das Theme Green gemacht. Normalerweise ist das dann so, das dieses konvertierte Logo genau an der gleichen Stelle wie das Hintergrundlogo gezeichnet wird. Und wenn dann kein konvertiertes Logo gefunden wird, wird erst im zentralen Ordner nachgesehen oder es gibt gar keins.

    Für diese 2 letzten Fälle ist das eingeschaltete Hintergrundlogo da. Dann kommt da, wo es kein konvertiertes Logo gibt, das Hintergrundlogo zum Vorschein. Und das sitzt jetzt nicht mehr an der gleichen Stelle wie das mit 100% skalierte konvertierte Logo.

    Beim Default-Theme scheint das Alles etwas unproblematischer zu sein, bei z.B. Green sieht man das aber deutlich.


    Ja, selbstverstaendlich habe ich das gemacht. Nur kann ich dann auf meinem 1280x720-OSD keine Channelview-Breite von 1250 mehr einstellen, wie es vom Designer vorgesehen war. Und deshalb will ich den selben optischen Eindruck mit schmalerem Fenster haben, ohne dass sich das Logo verschiebt.

    OK, das mit der Breite von 1250 war mir bisher noch nicht aufgefallen.

    Dann muss das dort auch gefixt werden.

    Ja, man sieht es z.B. bei einem Ordner im Recordingsmenü bei schmalem Menü.


    Nur dass das technisch leider nicht geht. Laden kann man nur Bitmaps. Ueberblenden mit der jeweiligen Transparenz kann man nur Pixmaps auf verschiedenen Layern. Man koennte vielleicht teilueberblendete vorgerenderte Pixmaps statt der skalierten geladenen Bitmaps in den imagecache legen, aber das ergibt vermutlich einen anderen optischen Eindruck und man muesste das Redering nochmal selbst implemtieren, was sonst das OSD schon macht. Auch performancemäßig bringt das nicht viel, weil das Logo relativ klein ist und der Datentransfer auf die Karte die Renderzeit uebersteigt.

    OK, es soll ja auch nicht noch komplizierter werden, als es schon ist.

    Wenig flexibel. Zumindest bei dem Green-Theme scheint es Absicht zu sein, das Logo selbst nach unten verschoben in den 'Röhrenschirm' des Logohintergrunds einzubetten. Das erfordert wiederum angepasste Logos, wenn man nicht stumpf nur alle Logos verkleinern will (was ja jetzt mit Deinem neuen Setting geht).

    Beim Green-Theme sitzt es nicht mit Absicht weiter unten. Im Anschluss noch ein paar Beispiele:


    So sieht es mit Deiner Änderung aus: Das Bild Green ist noch vor der letzten Änderung, das spielt aber hier keine Rolle


    Und so soll es aussehen (so sah es bei Green auch vor den aktuellen Änderungen aus): mal abgesehen davon, das es links noch insgesamt zu hoch ist

    Die beiden letzten Bilder sind mit dem einen commit entstanden. Beim Default-Theme kann ich da keinen Unterschied erkennen.

    Beim Green-Theme werden dadurch die beiden Pixmaps wieder zentriert.


    Ich möchte das Ganze ja verstehen und nachvollziehen. Wahrscheinlich werden die Unterschiedlichen Theme-Arten doch verschieden behandelt.

    Ich muss mal schauen, wie da die genauen Zusammenhänge sind...


    Grüße

    kamel5

    VDR 2.6.6: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.7 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

    Einmal editiert, zuletzt von kamel5 ()

  • Das Grundprinzip ist hier so und dafür gibt es im Moment auch die Themenverzeichnisse, das man sich selbst Logos mit Hintergrund macht (dafür gibt es auch ein script im Ordner logoconverter). Diese Logos werden dann bevorzugt benutzt. Ich habe mir, um das zu Testen, mal ein Set für das Theme Green gemacht. Normalerweise ist das dann so, das dieses konvertierte Logo genau an der gleichen Stelle wie das Hintergrundlogo gezeichnet wird. Und wenn dann kein konvertiertes Logo gefunden wird, wird erst im zentralen Ordner nachgesehen oder es gibt gar keins.

    OK, das logoconverter-Skript kannte ich nicht. Was soll es denn fuer einen Vorteil haben, den Hintergrund vorab in die Logos hineinzukonvertieren? Performance?

    Habs nicht gemessen, aber bringt sicher nicht mehr als wenige Prozent, wenn ueberhaupt. Oder was ist der Sinn, mehr Flexibilitaet?


    Für diese 2 letzten Fälle ist das eingeschaltete Hintergrundlogo da. Dann kommt da, wo es kein konvertiertes Logo gibt, das Hintergrundlogo zum Vorschein. Und das sitzt jetzt nicht mehr an der gleichen Stelle wie das mit 100% skalierte konvertierte Logo.

    Das ist in meinem Anwendungsfall komplett anders. Der Logohintergrund gehoert fuer mich eher zum Fensterhintergrund von der Geometrie, zum Logo von der Farbe (inkl. Transparenz). Somit ja, der ganze Sinn fuer mich war, dass der Hintergrund nicht mehr an der komplett gleichen Stelle wie das Logo selber sitzt.

    Der Hintergrund nutzt die maximale Flaeche aus, so wie vom Designer vorgegeben. Das Logo ist ggf. entweder in x oder y-Richtung etwas kleiner, damit es nicht verzerrt skaliert wird. Oder in beiden Richtungen kleiner wenn es zu klein gespeichert ist, weil es offenbar beim Skalieren nicht vergrößert werden kann (was ja auch wenig Sinn ergibt).


    Es gibt also kein Problem, wenn der Logo-Hintergrund ausgeschaltet und ggf. in das Logo selbst einkompiliert ist.

    Es gibt auch kein Problem, wenn der Logo-Hintergrund eingeschaltet und nicht in das Logo selbst einkompiliert ist.

    Es passt nicht, wenn der Logo-Hintergrund eingeschaltet und zusaetzlich in das Logo selbst einkompiliert ist. Ist dieser Fall an sich nicht sinnlos? Durch die doppelte Anwendung des Logo-Hintergrunds muesste doch zumindest die Transparenz immer zu klein sein!? Und auch bei dem Green-Theme, wenn man kein passendes Logo mit Hintergrund findet, warum sollte man dann unbedingt den leeren Rahmen dazu darstellen?


    Mit anderen Worten: Ist der kaputte Fall wirklich relevant? Kann man nicht alle sinnvollen Faelle mit den ersten beiden Optionen abbilden?

    Ansonsten waere vielleicht denkbar, den Logohintergrund (optional?) statt des nicht vorhandenen Logos zu laden, wenn ansonsten der Logohintergrund ausgeschaltet ist.


    Beim Default-Theme scheint das Alles etwas unproblematischer zu sein, bei z.B. Green sieht man das aber deutlich.

    Hast Du fuer das Default-Theme auch konvertierte Logos inklusive Hintergrund? Dann muesste man auch einen Schatten sehen.

    Ja, man sieht es z.B. bei einem Ordner im Recordingsmenü bei schmalem Menü.

    Ich nutze da das breite Menue. Kann ich mir bei Gelegenheit aber auch mal ansehen, wenn gewuenscht. (Bitte erinnern, wenn ich es vergesse.)


    Ich möchte das Ganze ja verstehen und nachvollziehen. Wahrscheinlich werden die Unterschiedlichen Theme-Arten doch verschieden behandelt.

    Ich muss mal schauen, wie da die genauen Zusammenhänge sind...

    Ich sehe das bei mir so nicht. Kannst Du die Werte channelWidth, channelHeight sowie X, Y, Width, Height von channelLogo und ggf. channelLogoBg posten, von den beiden Faellen (alt und neu, ohne Zusatzpatch von Dir), um zu sehen, was da nicht aligned ist!? Ohne meinen Patch kann sich da alles verschieben je nach Einstellungen.


    Danke,

    S:oren

Jetzt mitmachen!

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