3D-Blu-ray- und 4K-case/flag

  • Hallo liebe community,

    möchte gerne für meine offline 3D Blu-rays entsprechende cases anzeigen lassen.

    Habe zuerst die Dateien 'View-Icons' und 'View-Item' bearbeitet. Aber selbst wenn man die Zeilen für DVDs und Blu-rays deaktiviert, werden die Case Cover korrekt dargestellt.
    Schätze Transparency nutzt nachwievor ausschließlich die Informationen aus den video streamdetails, um zu entscheiden welches case dargestellt wird.

    Zum Testen hab ich für einen Film in die Datenbank Tabelle 'streamdetails' u.a. folgendes eingetragen:
    strVideoCodec = 'h264'
    iVideoWidth = 1920
    iVideoHeight = 1080
    strStereoMode = 'top_bottom'

    Hilft aber auch nicht. :(

    Kennt jemand den oder die Einträge die Transparency braucht um 3D Case Cover anzuzeigen?
    Oder welche Einträge habt ihr für eure 3D Filme z.B. in der Datenbank oder NFO-Datei?

    Testumgebung:
    Kodi: v16.0
    Skin: Transparency! 9.1.2

    Gruß

    Testumgebung - OS: Ubuntu 20.04 LTS | Kodi 19.1 | skin: Rapier 12.2.26 + Transparency! (views Slide und Fanart) | für Datenbank-/ Skin Tests
    Live Umgebung - OS: Ubuntu 16.04.3 LTS | Kodi 17.6 | skin: Transparency! 10.3.0 | TV

  • Danke für die Antwort.

    Das hab ich auch schon ausprobiert.
    Die Namenskonvention ist sicherlich wichtig für Kodi das 3D Video korrekt abzuspielen aber für Transparency ist das schnurz.
    Soweit ich weiß kuckt Transparency ausschließlich nach den video streamdetails Infos.

    Testumgebung - OS: Ubuntu 20.04 LTS | Kodi 19.1 | skin: Rapier 12.2.26 + Transparency! (views Slide und Fanart) | für Datenbank-/ Skin Tests
    Live Umgebung - OS: Ubuntu 16.04.3 LTS | Kodi 17.6 | skin: Transparency! 10.3.0 | TV

  • Hat ein bisschen gedauert aber möchte mich kurz zurückmelden.

    Laut history gibt es ja einen 3D support aber NUR in einer Ansicht ('Fankunst').

    Transparency! v6.0.6
    - add 3D icon in fanart view

    Transparency! v5.0.12
    - add 3D support

    Da ich NUR und zwar NUR!!! die Ansicht 'Seite' nutze, hab ich das IMMER großzügig übersehen. :sleeping:

    Zuerst hab ich versucht zumindestens den MediaFlags ein 3D icon zu verpassen und dabei bin ich über die eine oder andere Sache im Skin gestolpert (im positiven Sinne).

    Lösung:
    Man muss den Eintrag 'ListItem.IsStereoscopic' im Skin nutzen, dann klappt es auch mit dem 3D Support. :rolleyes:
    Hierbei wird links ein 3D icon über das vorhandene Blu-ray case gelegt.

    Die NFO-Datei müsste in etwa so aussehen (wichtig: <stereomode>2</stereomode>):


    In der Datenbank 'MyVideos99.db' findet man dann den Eintrag unter streamdetails.strStereoMode = '2'.
    Die '2' ist nur ein Beispiel da kann auch etwas anderes stehen.

    Die Mediaflags sehen schon ganz gut aus aber die Anpassung für die 'Ansicht: Seite' (View-Slide.xml) steht noch aus.
    Am Ende sollen alle Formate (SD TV (576i), HD TV (720p/1080i), DVD, Blu-ray und Blu-ray 3D) das richtige media flag und case cover erhalten.
    Hierbei ist die Anpassung für die 'Ansicht: Seite' besonders aufwendig und zeitraubend.

    Sobald alles fertig ist werde ich mich wieder melden.

    Testumgebung - OS: Ubuntu 20.04 LTS | Kodi 19.1 | skin: Rapier 12.2.26 + Transparency! (views Slide und Fanart) | für Datenbank-/ Skin Tests
    Live Umgebung - OS: Ubuntu 16.04.3 LTS | Kodi 17.6 | skin: Transparency! 10.3.0 | TV

  • Die Dialog Video Info sieht schon mal so aus.

    [xattach=13869]Dialog Video Info[/xattach]

    ...\AppData\Roaming\Kodi\addons\skin.transparency\720p\DialogVideoInfo.xml
    Im Code z.B. nach 'VideoResolution' suchen (nur einmal vorhanden). Dort muss dann angepasst werden.


    Anmerkungen:
    - Die FSK logos/FSK text wurden auch verändert.
    - Meine neue Variable 'MovieCaseCover' hab ich hier im Beispiel erstmal auskommentiert, sie kommt dann später zum Einsatz wenn die View Slide fertig ist.

    Gruß

    Bilder

    Testumgebung - OS: Ubuntu 20.04 LTS | Kodi 19.1 | skin: Rapier 12.2.26 + Transparency! (views Slide und Fanart) | für Datenbank-/ Skin Tests
    Live Umgebung - OS: Ubuntu 16.04.3 LTS | Kodi 17.6 | skin: Transparency! 10.3.0 | TV

  • Zuerst habe ich versucht das 3D Konzept der View-Fanart für die View-Slide zu nutzen. Dabei stellten sich aber zwei Probleme heraus:
    1. Das Anpassen der x/y Koordinaten + width/height für das 3D-logo ist ziemlich aufwendig.
    2. Das Poster und das Case Cover werden gemeinsam verschoben aber danach erst das 3D-logo, dass führte zu einer hässlichen Verzögerung.
    Keine Ahnung ob man das zweite Problem lösen kann aber ich hab mich danach für eine andere Variante entschieden.

    Hierfür benötige ich aber ein angepasstes case cover für 3D Blu-rays. Mit GIMP hat es dann geklappt, dass 3D-logo.png über das case1080.png zu legen. Das neue 3D case 'case1080-3D.png' muss im folgenden Ordner gespeichert werden:
    ...\AppData\Roaming\Kodi\addons\skin.transparency\media

    Die DialogVideoInfo.xml sollte jetzt so aussehen:
    ...\AppData\Roaming\Kodi\addons\skin.transparency\720p\DialogVideoInfo.xml


    Die View-Fanart.xml kann man wenn man will auch schnell anpassen:
    ...\AppData\Roaming\Kodi\addons\skin.transparency\720p\View-Fanart.xml


    In der Includes_Variables.xml müssen ein paar neue Variablen angelegt werden.
    Die Variable 'MovieCaseCover' hab ich hier nur der Vollständigkeit halber noch aufgeführt.
    ...\AppData\Roaming\Kodi\addons\skin.transparency\720p\Includes_Variables.xml


    In der View-Slide.xml muss man dann z.B. nach "VideoResolution" suchen und folgende Anpassungen (Beispiel hier für Variable 'MovieCaseCover(-8)') vornehmen:
    ...\AppData\Roaming\Kodi\addons\skin.transparency\720p\View-Slide.xml

    Code
    ...
        <!-- <texture fallback="case-sets.png">case$INFO[ListItem(-8).VideoResolution].png</texture> --> <!-- Original Zeile -->
        <texture fallback="case-sets.png">$VAR[MovieCaseCover(-8)]</texture> <!-- TV- / DVD- / Blu-ray- / Blu-ray 3D-movie case cover -->
    ...

    Es muss an 47 Stellen angepasst werden (Die Nummern wiederholen sich dreimal).

    [xattach=14054]View-Slide[/xattach]

    Gruß

    Bilder

    Testumgebung - OS: Ubuntu 20.04 LTS | Kodi 19.1 | skin: Rapier 12.2.26 + Transparency! (views Slide und Fanart) | für Datenbank-/ Skin Tests
    Live Umgebung - OS: Ubuntu 16.04.3 LTS | Kodi 17.6 | skin: Transparency! 10.3.0 | TV

  • @JakeB

    Guten Abend.

    Hab eben deine Thematik hier esehen. Nutze ebenfalls Transparency, hab aber nicht das gleiche Thema. Da keine 3D-Filme vorhanden. Kommt vielleicht mal später. Dann weiß ich ja wo ch schauen muss.

    Warum ich schreibe hat folgenden Hintergrund:
    Hab in deinen Bildern das grüne Leuchten der Altersfreigabe bemerkt. Das will ich auch!! Bei mir schauts bisher so aus. Bzw. wie im Anhang. Standardmäßig steht dort das unschöne "NR"


    Kannst du mir sagen wie du das hinbekommen hast? Die Information ist ja sicher über den gescrappten Inhalt bereits verfügbar.

    Wäre dir sehr für einen Tipp verbunden.

    Grüße

  • Hallo

    bugmenot2014: Sorry das ich erst jetzt antworte, hab es heute erst zufällig gesehen.

    Schau mal in den thread: FSK Angabe
    Antwort #30

    Bei dir steht z.B. als <certification> 'ab 12', damit kann Transparency standardmäßig nichts anfangen. Aber wenn du die Includes_Variables.xml anpasst geht es.
    Viel Spaß mit den bunten FSK logos.
    Falls Fragen/Probleme auftauchen einfach dort melden.

    Interessant ... dein Studio logo ist ja bunt bei mir ist alles nur weiß, hast du da nachgeholfen?

    Gruß

    Testumgebung - OS: Ubuntu 20.04 LTS | Kodi 19.1 | skin: Rapier 12.2.26 + Transparency! (views Slide und Fanart) | für Datenbank-/ Skin Tests
    Live Umgebung - OS: Ubuntu 16.04.3 LTS | Kodi 17.6 | skin: Transparency! 10.3.0 | TV

  • @JakeB

    Hey kein Problem, bin auch nicht täglich am suchen. Je nach Zeit und Laune. Erstmal danke, dass dich überhaupt gezuckt hast!

    Oha, da kann ich mich ja ausprobieren. Hab ja doch noch ein ganzes Stück weniger Wissen als du es dir angearbeitet hast. Werd´s mal versuchen hinzubekommen. Beim Programmieren und Computersprachen war ich doch immer "Kreide-holen"!

    Ich bin gespannt ob ich´s mit der Vorgabe hinbekomme.

    Hätte nicht gedacht dass ich was Interessantes auf meinem Bild anzubieten gehabt hätte. Aber der Aufwand das hinzubekommen ist im Vergleich schon fast nichtig. Gibt ein vorbereitetes Addon das sich unter Look & Feel --> Bilder Sammlungen --> "Studio Icons - Coulored" vom Team Kodi befindet. Das hab ich lediglich in den Skin-Optioen --> Symbole --> Filmgenresymbole angegeben. Hab lediglich in der entsprechenden Zip hin und wieder noch ein paar Namen der Bilder umbenannt, damit er die nicht erkannten Studios abbilden kann. Sollte aber eher der Einzelfall sein.

    Gruß

  • Leider sieht es in Sachen flag und case in Transparency immer noch bescheiden aus. Für 3D gibt es ein flag aber kein case und für 4K gibt es ein case aber kein flag.
    Das vorhandene 4K case: case4K.png
    ... ist nur ein Blu-ray case mit einem 4K icon auf der rechten Seite. Man könnte vielleicht ein DVD case nehmen und ein '4K ULTRA HD' logo rüberlegen.

    Leia v18.x benötigt jetzt ein paar Anpassungen weil einige infobools entfernt wurden:

    Code
    infobool alt    | infobool neu
    ------------------------------
    StringCompare() | String.Contains() / String.IsEqual() / String.EndsWith()
    SubString()     | String.Contains() / String.IsEqual() / String.EndsWith()

    Im Zuge dessen hab ich auch Fehler (DVD case wird im Film-Info-Fenster falsch angezeigt) entfernt und Dateiendungen angepasst.

    Achtung:
    Variablen wurden umbenannt (CaseCover fand ich irgendwie doppelt gemoppelt).
    Wenn die neuen Variablen übernommen werden, muss man auch die DialogVideoInfo.xml, View-Slide.xml und View-Fanart.xml dementsprechend anpassen.

    Code
    vorher                         | nachher
    ----------------------------------------
    MovieCaseCover-DialogVideoInfo | MovieCase
    MovieCaseCover(-8)             | MovieCase(-8)
    usw.                           | usw.
    MovieCaseCover(0)              | MovieCase(0)
    usw.                           | usw.
    MovieCaseCover(8)              | MovieCase(8)


    Was wird wie angezeigt:

    Als flag für die 4K.mkv-Dateien hab ich die 'disc' gewählt, weil es nichts anderes gab.

    Folgender code in ...\Kodi\addons\skin.transparency\1080p\Includes_Variables.xml
    ... wurde unter Kodi v18.4 Leia | Transparency! 11.0.8 getestet.

    Die vorhandene Variable 'IncludesMediaFlagsVideoSource' wurde angepasst:
    1. Zeile: SD TV flag: 576i (720x576)
    2. Zeile: HD TV flag: 720p (1280x720)/1080i (1920x1080)
    3. Zeile: DVD flag: 576i (720x576)
    4. Zeile: Blu-ray flag: 1080p (1920x1080)
    5. Zeile: Blu-ray 3D flag: 1080p (1920x1080)
    ... alles andere erhält das 'disc' flag.

    Code
    ...
    <variable name="IncludesMediaFlagsVideoSource">
        <value condition="String.EndsWith(ListItem.Filename,.rec) | String.EndsWith(ListItem.Filename,.sdtv.ts) | String.EndsWith(ListItem.Filename,.sdtv.mp4) | String.EndsWith(ListItem.Filename,.mpg) | String.EndsWith(ListItem.Filename,.avi) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.iso) + !String.EndsWith(ListItem.Filename,.mov) + !String.IsEqual(ListItem.Filename,VIDEO_TS.IFO)] + [Container.Content(Episodes) | Container.Content(MusicVideos)] + [String.IsEqual(ListItem.VideoResolution,480) | String.IsEqual(ListItem.VideoResolution,540) | String.IsEqual(ListItem.VideoResolution,576)]]">flags/movies/source/sdtv.png</value>
        <value condition="String.EndsWith(ListItem.Filename,.hdtv.ts) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.iso) + !String.EndsWith(ListItem.Filename,.mov) + !String.IsEqual(ListItem.Filename,VIDEO_TS.IFO)] + [Container.Content(Episodes) | Container.Content(MusicVideos)] + [String.IsEqual(ListItem.VideoResolution,720) | String.IsEqual(ListItem.VideoResolution,1080)]]">flags/movies/source/hdtv.png</value>
        <value condition="String.IsEqual(ListItem.Filename,VIDEO_TS.IFO) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.iso) + !String.EndsWith(ListItem.Filename,.mov)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + [String.IsEqual(ListItem.VideoResolution,480) | String.IsEqual(ListItem.VideoResolution,540) | String.IsEqual(ListItem.VideoResolution,576)]]">flags/movies/source/dvd.png</value>
        <value condition="String.IsEqual(ListItem.Filename,index.bdmv) | String.EndsWith(ListItem.Filename,.blu-ray.mp4) | String.EndsWith(ListItem.Filename,.blu-ray.mkv) | String.EndsWith(ListItem.Filename,.iso) | String.EndsWith(ListItem.Filename,.mov) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.blu-ray.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,1080)]">flags/movies/source/bluray.png</value>
        <value condition="String.EndsWith(ListItem.Filename,.3d.sbs.disc) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.blu-ray.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,1080)]">osd-3d-nofocus.png</value>
    </variable>
    ...


    Die neue Variable 'MovieCase':
    1. Zeile: TV case: 576i (720x576)/720p (1280x720)/1080i (1920x1080)
    2. Zeile: DVD case: 576i (720x576)
    3. Zeile: Blu-ray case: 1080p (1920x1080)
    4. Zeile: Blu-ray 3D case: 1080p (1920x1080)
    5. Zeile: 4K Ultra HD case: 2160p (3840 x 2160)
    ... alles andere erhält das gelbe set case.

    Code
    ...
    <variable name="MovieCase">
        <value condition="String.EndsWith(ListItem.Filename,.rec) | String.EndsWith(ListItem.Filename,.sdtv.ts) | String.EndsWith(ListItem.Filename,.hdtv.ts) | String.EndsWith(ListItem.Filename,.sdtv.mp4) | String.EndsWith(ListItem.Filename,.mpg) | String.EndsWith(ListItem.Filename,.avi) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.iso) + !String.EndsWith(ListItem.Filename,.mov) + !String.IsEqual(ListItem.Filename,VIDEO_TS.IFO)] + [Container.Content(Episodes) | Container.Content(MusicVideos)] + [String.IsEqual(ListItem.VideoResolution,480) | String.IsEqual(ListItem.VideoResolution,540) | String.IsEqual(ListItem.VideoResolution,576)]]">case-tv.png</value>
        <value condition="String.IsEqual(ListItem.Filename,VIDEO_TS.IFO) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.iso) + !String.EndsWith(ListItem.Filename,.mov)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + [String.IsEqual(ListItem.VideoResolution,480) | String.IsEqual(ListItem.VideoResolution,540) | String.IsEqual(ListItem.VideoResolution,576)]]">case576.png</value>
        <value condition="String.IsEqual(ListItem.Filename,index.bdmv) | String.EndsWith(ListItem.Filename,.blu-ray.mp4) | String.EndsWith(ListItem.Filename,.blu-ray.mkv) | String.EndsWith(ListItem.Filename,.blu-ray.disc) | String.EndsWith(ListItem.Filename,.iso) | String.EndsWith(ListItem.Filename,.mov) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,1080)]">case1080.png</value>
        <value condition="String.EndsWith(ListItem.Filename,.3d.sbs.disc) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,1080)]">case1080-3D.png</value>
        <value condition="String.EndsWith(ListItem.Filename,.4K.mkv) | String.EndsWith(ListItem.Filename,.4K.disc) | [[Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,2160)]">case4K.png</value>
    </variable>
    ...


    Die neue Variable 'MovieCase(n)' ist identisch zu 'MovieCase'. Der einzige Unterschied ist die Nummer (n):
    'MovieCase': "... ListItem. ..."
    'MovieCase(n)': "... ListItem(n). ..."

    Code
    ...
    <variable name="MovieCase(0)">
        <value condition="String.EndsWith(ListItem(0).Filename,.rec) | String.EndsWith(ListItem(0).Filename,.sdtv.ts) | String.EndsWith(ListItem(0).Filename,.hdtv.ts) | String.EndsWith(ListItem(0).Filename,.sdtv.mp4) | String.EndsWith(ListItem(0).Filename,.mpg) | String.EndsWith(ListItem(0).Filename,.avi) | [[!String.EndsWith(ListItem(0).Filename,.4K.mkv) + !String.EndsWith(ListItem(0).Filename,.4K.disc) + !String.EndsWith(ListItem(0).Filename,.3d.sbs.disc) + !String.EndsWith(ListItem(0).Filename,.blu-ray.disc) + !String.IsEqual(ListItem(0).Filename,index.bdmv) + !String.EndsWith(ListItem(0).Filename,.blu-ray.mp4) + !String.EndsWith(ListItem(0).Filename,.blu-ray.mkv) + !String.EndsWith(ListItem(0).Filename,.iso) + !String.EndsWith(ListItem(0).Filename,.mov) + !String.IsEqual(ListItem(0).Filename,VIDEO_TS.IFO)] + [Container.Content(Episodes) | Container.Content(MusicVideos)] + [String.IsEqual(ListItem(0).VideoResolution,480) | String.IsEqual(ListItem(0).VideoResolution,540) | String.IsEqual(ListItem(0).VideoResolution,576)]]">case-tv.png</value>
        <value condition="String.IsEqual(ListItem(0).Filename,VIDEO_TS.IFO) | [[!String.EndsWith(ListItem(0).Filename,.4K.mkv) + !String.EndsWith(ListItem(0).Filename,.4K.disc) + !String.EndsWith(ListItem(0).Filename,.3d.sbs.disc) + !String.EndsWith(ListItem(0).Filename,.blu-ray.disc) + !String.IsEqual(ListItem(0).Filename,index.bdmv) + !String.EndsWith(ListItem(0).Filename,.blu-ray.mp4) + !String.EndsWith(ListItem(0).Filename,.blu-ray.mkv) + !String.EndsWith(ListItem(0).Filename,.iso) + !String.EndsWith(ListItem(0).Filename,.mov)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + [String.IsEqual(ListItem(0).VideoResolution,480) | String.IsEqual(ListItem(0).VideoResolution,540) | String.IsEqual(ListItem(0).VideoResolution,576)]]">case576.png</value>
        <value condition="String.IsEqual(ListItem(0).Filename,index.bdmv) | String.EndsWith(ListItem(0).Filename,.blu-ray.mp4) | String.EndsWith(ListItem(0).Filename,.blu-ray.mkv) | String.EndsWith(ListItem(0).Filename,.blu-ray.disc) | String.EndsWith(ListItem(0).Filename,.iso) | String.EndsWith(ListItem(0).Filename,.mov) | [[!String.EndsWith(ListItem(0).Filename,.4K.mkv) + !String.EndsWith(ListItem(0).Filename,.4K.disc) + !String.EndsWith(ListItem(0).Filename,.3d.sbs.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem(0).VideoResolution,1080)]">case1080.png</value>
        <value condition="String.EndsWith(ListItem(0).Filename,.3d.sbs.disc) | [[!String.EndsWith(ListItem(0).Filename,.4K.mkv) + !String.EndsWith(ListItem(0).Filename,.4K.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem(0).VideoResolution,1080)]">case1080-3D.png</value>
        <value condition="String.EndsWith(ListItem(0).Filename,.4K.mkv) | String.EndsWith(ListItem(0).Filename,.4K.disc) | [[Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem(0).VideoResolution,2160)]">case4K.png</value>
    </variable>
    ...

    Testumgebung - OS: Ubuntu 20.04 LTS | Kodi 19.1 | skin: Rapier 12.2.26 + Transparency! (views Slide und Fanart) | für Datenbank-/ Skin Tests
    Live Umgebung - OS: Ubuntu 16.04.3 LTS | Kodi 17.6 | skin: Transparency! 10.3.0 | TV

    Einmal editiert, zuletzt von JakeB (8. Dezember 2019 um 15:28)

  • Hi, ich bin neu hier. Nutze T! mit Kodi 18.5 auf einem Mediaplayer mit der Ansicht Symbole. Daten mit dem Tiny Media Manager gescrapt.
    Filme sind mkvs, 3D-Filme isos.
    Bei mir zeigt er 4k-flags und das beschriebene 4k-Cover, reicht mir aus.
    3D wird völlig ignoriert, weder case noch flag. Das vielfach beschriebene Umbenennen der Datei hat nichts gebracht, im TMM ist aber 3D hinterlegt. Es würde mir schon helfen, eine flag zu bekommen, 3D case löse ich gegenwärtig über das Coverbild.
    Wie bekomme ich also irgendeine 3D-Anzeige?

    Und wenn wir schon dabei sind: Atmos und DTS:X flags wären auch schön, kriege ich gar nicht hin (sollte die Ergänzung zu off topic sein, bitte löschen oder ignorieren)

  • @diver100
    Vorweg, ich benutze den Standard-Estuary Skin, k.A. ob das bei deinem Skin dann auch so funktoniert.
    3D gesetzt in der nfo nutzt beim Estuary auch nichts. Liest Kodi auch nicht mit ein.
    Um aber den 3D Flag angezeigt zu bekommen gehe ich wie folgt vor:
    Während der Film läuft, dort 'Einstellungen' aufrufen, ->Video-Einstellungen->Stereoskopischer 3D-Modus des Videos, entsprechend des Videos von automatisch auf nebeneinander oder über/unter stellen.
    Dann wird mir auch das 3D Flag anstelle der Auflösung angezeigt, und auch die Brille. Kodi merkt sich das dann.

    Gruß Gz

    2x Android TV-Box Amlogic t95zPlus +Kodi mit Estuary, 3x Qnap 1x Synology NAS, LG 55" 3D-TV + 40", Surround

  • Gartenzwerg: Danke zunächst. Das habe ich so probiert, mit dem Ergebnis, dass er zwar die 3D-flag für die Dauer der Umschaltung anzeigt, sich das aber nicht merkt. Ich muss das ja auch wieder zurücksetzen, da es weder eine oben/unten noch eine links/rechts Datei ist, sondern eben eine iso mit dann wohl 3D mvc (keine Ahnung wie man das nennt: normaler 3D-Modus?).

    Zudem ändert sich aber in der Filmauswahl nichts, also dort sehe ich die 3D-flag also weiterhin nicht. Schade,trotzdem danke, vllt jemand noch ne andere Idee?

  • Hallo @diver100,

    1. Problem: 3D flag und case wird nicht angezeigt
    Mein setting ist nur auf Dateiendung '.3d.sbs.disc' ausgelegt (siehe Tabelle 'Was wird wie angezeigt:' in #12).
    Du musst die Zeile 1 bis 5 (... String.EndsWith(ListItem.Filename,.3d.iso) ...) in der Variable 'IncludesMediaFlagsVideoSource' ...

    XML
    ...
    <variable name="IncludesMediaFlagsVideoSource">
        <value condition="String.EndsWith(ListItem.Filename,.rec) | String.EndsWith(ListItem.Filename,.sdtv.ts) | String.EndsWith(ListItem.Filename,.sdtv.mp4) | String.EndsWith(ListItem.Filename,.mpg) | String.EndsWith(ListItem.Filename,.avi) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.3d.iso) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.blu-ray.iso) + !String.EndsWith(ListItem.Filename,.mov) + !String.IsEqual(ListItem.Filename,VIDEO_TS.IFO)] + [Container.Content(Episodes) | Container.Content(MusicVideos)] + [String.IsEqual(ListItem.VideoResolution,480) | String.IsEqual(ListItem.VideoResolution,540) | String.IsEqual(ListItem.VideoResolution,576)]]">flags/movies/source/sdtv.png</value>
        <value condition="String.EndsWith(ListItem.Filename,.hdtv.ts) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) +!String.EndsWith(ListItem.Filename,.3d.iso) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.blu-ray.iso) + !String.EndsWith(ListItem.Filename,.mov) + !String.IsEqual(ListItem.Filename,VIDEO_TS.IFO)] + [Container.Content(Episodes) | Container.Content(MusicVideos)] + [String.IsEqual(ListItem.VideoResolution,720) | String.IsEqual(ListItem.VideoResolution,1080)]]">flags/movies/source/hdtv.png</value>
        <value condition="String.IsEqual(ListItem.Filename,VIDEO_TS.IFO) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.3d.iso) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.blu-ray.iso) + !String.EndsWith(ListItem.Filename,.mov)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + [String.IsEqual(ListItem.VideoResolution,480) | String.IsEqual(ListItem.VideoResolution,540) | String.IsEqual(ListItem.VideoResolution,576)]]">flags/movies/source/dvd.png</value>
        <value condition="String.IsEqual(ListItem.Filename,index.bdmv) | String.EndsWith(ListItem.Filename,.blu-ray.mp4) | String.EndsWith(ListItem.Filename,.blu-ray.mkv) | String.EndsWith(ListItem.Filename,.blu-ray.iso) | String.EndsWith(ListItem.Filename,.mov) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.3d.iso) + !String.EndsWith(ListItem.Filename,.blu-ray.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,1080)]">flags/movies/source/bluray.png</value>
        <value condition="String.EndsWith(ListItem.Filename,.3d.sbs.disc) | String.EndsWith(ListItem.Filename,.3d.iso) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.blu-ray.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,1080)]">osd-3d-nofocus.png</value>
    </variable>
    ...


    ..., die Zeile 1 bis 5 in Variable 'MovieCase' ...

    XML
    ...
    <variable name="MovieCase">
        <value condition="String.EndsWith(ListItem.Filename,.rec) | String.EndsWith(ListItem.Filename,.sdtv.ts) | String.EndsWith(ListItem.Filename,.hdtv.ts) | String.EndsWith(ListItem.Filename,.sdtv.mp4) | String.EndsWith(ListItem.Filename,.mpg) | String.EndsWith(ListItem.Filename,.avi) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.3d.iso) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.blu-ray.iso) + !String.EndsWith(ListItem.Filename,.mov) + !String.IsEqual(ListItem.Filename,VIDEO_TS.IFO)] + [Container.Content(Episodes) | Container.Content(MusicVideos)] + [String.IsEqual(ListItem.VideoResolution,480) | String.IsEqual(ListItem.VideoResolution,540) | String.IsEqual(ListItem.VideoResolution,576)]]">case-tv.png</value>
        <value condition="String.IsEqual(ListItem.Filename,VIDEO_TS.IFO) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.3d.iso) + !String.EndsWith(ListItem.Filename,.blu-ray.disc) + !String.IsEqual(ListItem.Filename,index.bdmv) + !String.EndsWith(ListItem.Filename,.blu-ray.mp4) + !String.EndsWith(ListItem.Filename,.blu-ray.mkv) + !String.EndsWith(ListItem.Filename,.blu-ray.iso) + !String.EndsWith(ListItem.Filename,.mov)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + [String.IsEqual(ListItem.VideoResolution,480) | String.IsEqual(ListItem.VideoResolution,540) | String.IsEqual(ListItem.VideoResolution,576)]]">case576.png</value>
        <value condition="String.IsEqual(ListItem.Filename,index.bdmv) | String.EndsWith(ListItem.Filename,.blu-ray.mp4) | String.EndsWith(ListItem.Filename,.blu-ray.mkv) | String.EndsWith(ListItem.Filename,.blu-ray.disc) | String.EndsWith(ListItem.Filename,.blu-ray.iso) | String.EndsWith(ListItem.Filename,.mov) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc) + !String.EndsWith(ListItem.Filename,.3d.sbs.disc) + !String.EndsWith(ListItem.Filename,.3d.iso)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,1080)]">case1080.png</value>
        <value condition="String.EndsWith(ListItem.Filename,.3d.sbs.disc) | String.EndsWith(ListItem.Filename,.3d.iso) | [[!String.EndsWith(ListItem.Filename,.4K.mkv) + !String.EndsWith(ListItem.Filename,.4K.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,1080)]">case1080-3D.png</value>
        <value condition="String.EndsWith(ListItem.Filename,.4K.mkv) | String.EndsWith(ListItem.Filename,.4K.disc) | [[Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem.VideoResolution,2160)]">case4K.png</value>
    </variable>
    ...


    ... und die Zeile 1 bis 5 in Variable 'MovieCase(n)' anpassen:

    XML
    ...
    <variable name="MovieCase(0)">
        <value condition="String.EndsWith(ListItem(0).Filename,.rec) | String.EndsWith(ListItem(0).Filename,.sdtv.ts) | String.EndsWith(ListItem(0).Filename,.hdtv.ts) | String.EndsWith(ListItem(0).Filename,.sdtv.mp4) | String.EndsWith(ListItem(0).Filename,.mpg) | String.EndsWith(ListItem(0).Filename,.avi) | [[!String.EndsWith(ListItem(0).Filename,.4K.mkv) + !String.EndsWith(ListItem(0).Filename,.4K.disc) + !String.EndsWith(ListItem(0).Filename,.3d.sbs.disc) + !String.EndsWith(ListItem(0).Filename,.3d.iso) + !String.EndsWith(ListItem(0).Filename,.blu-ray.disc) + !String.IsEqual(ListItem(0).Filename,index.bdmv) + !String.EndsWith(ListItem(0).Filename,.blu-ray.mp4) + !String.EndsWith(ListItem(0).Filename,.blu-ray.mkv) + !String.EndsWith(ListItem(0).Filename,.blu-ray.iso) + !String.EndsWith(ListItem(0).Filename,.mov) + !String.IsEqual(ListItem(0).Filename,VIDEO_TS.IFO)] + [Container.Content(Episodes) | Container.Content(MusicVideos)] + [String.IsEqual(ListItem(0).VideoResolution,480) | String.IsEqual(ListItem(0).VideoResolution,540) | String.IsEqual(ListItem(0).VideoResolution,576)]]">case-tv.png</value>
        <value condition="String.IsEqual(ListItem(0).Filename,VIDEO_TS.IFO) | [[!String.EndsWith(ListItem(0).Filename,.4K.mkv) + !String.EndsWith(ListItem(0).Filename,.4K.disc) + !String.EndsWith(ListItem(0).Filename,.3d.sbs.disc) + !String.EndsWith(ListItem(0).Filename,.3d.iso) + !String.EndsWith(ListItem(0).Filename,.blu-ray.disc) + !String.IsEqual(ListItem(0).Filename,index.bdmv) + !String.EndsWith(ListItem(0).Filename,.blu-ray.mp4) + !String.EndsWith(ListItem(0).Filename,.blu-ray.mkv) + !String.EndsWith(ListItem(0).Filename,.blu-ray.iso) + !String.EndsWith(ListItem(0).Filename,.mov)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + [String.IsEqual(ListItem(0).VideoResolution,480) | String.IsEqual(ListItem(0).VideoResolution,540) | String.IsEqual(ListItem(0).VideoResolution,576)]]">case576.png</value>
        <value condition="String.IsEqual(ListItem(0).Filename,index.bdmv) | String.EndsWith(ListItem(0).Filename,.blu-ray.mp4) | String.EndsWith(ListItem(0).Filename,.blu-ray.mkv) | String.EndsWith(ListItem(0).Filename,.blu-ray.disc) | String.EndsWith(ListItem(0).Filename,.blu-ray.iso) | String.EndsWith(ListItem(0).Filename,.mov) | [[!String.EndsWith(ListItem(0).Filename,.4K.mkv) + !String.EndsWith(ListItem(0).Filename,.4K.disc) + !String.EndsWith(ListItem(0).Filename,.3d.sbs.disc) + !String.EndsWith(ListItem(0).Filename,.3d.iso)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem(0).VideoResolution,1080)]">case1080.png</value>
        <value condition="String.EndsWith(ListItem(0).Filename,.3d.sbs.disc) | String.EndsWith(ListItem(0).Filename,.3d.iso) | [[!String.EndsWith(ListItem(0).Filename,.4K.mkv) + !String.EndsWith(ListItem(0).Filename,.4K.disc)] + [Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem(0).VideoResolution,1080)]">case1080-3D.png</value>
        <value condition="String.EndsWith(ListItem(0).Filename,.4K.mkv) | String.EndsWith(ListItem(0).Filename,.4K.disc) | [[Container.Content(Movies) | Window.IsVisible(VideoPlaylist)] + String.IsEqual(ListItem(0).VideoResolution,2160)]">case4K.png</value>
    </variable>
    ...

    Deine Filmdatei muss folgende Endung haben: '.3d.iso'. Dann sollte es gehen.
    Und man muss die Ansicht 'Seite' (View-Slide.xml) verwenden. In der Ansicht 'Symbole' werden nicht alle cases richtig angezeigt.


    2. Problem: Atmos und DTS:X flags
    Das wird bisher von Transparency nicht unterstützt. Man könnte flags aus anderen Skins nehmen aber vom Format würden sie sicherlich abweichen.
    Die Variable 'IncludesMediaFlagsVideoSource' müsste dann natürlich auch angepasst werden.

    Testumgebung - OS: Ubuntu 20.04 LTS | Kodi 19.1 | skin: Rapier 12.2.26 + Transparency! (views Slide und Fanart) | für Datenbank-/ Skin Tests
    Live Umgebung - OS: Ubuntu 16.04.3 LTS | Kodi 17.6 | skin: Transparency! 10.3.0 | TV

    4 Mal editiert, zuletzt von JakeB (9. Dezember 2019 um 11:48) aus folgendem Grund: Variablen: 'IncludesMediaFlagsVideoSource', 'MovieCase' und 'MovieCase(0)' waren fehlerhaft

  • ich hab eine einfacher Lösung für Dich,

    nenne die Datei einfach so (Bsp.) Avatar.3d.sbs.mkv oder wenn Half over under das Format ist Avatar.3d.tab.mkv, dann erkennt
    Kodi den Modus, schaltet beim Starten direkt in diesen und alles läuft, er ghet also gleich in den 3D Modus und Du mußt nur die Brille aufsetzen (bei Polarisation) oder das Knöpfchen an der Brille drücken
    (oft schaltet sich die Brille auch gleich an bei mir, wenn der Film im 3D-Mosud startet)

    Außerdem zeigt er gleich das richtige Cover-Template !

    Voraussetzung dafür ist, daß Du unter System in den Anzeigeeinstellungen einstellst, daß der den vom Film vorgegeben Modus anzeigt (müßte ich jetzt nachschauen, wie das genau heißt.)
    Dann stellst Du in Kodi noch ein, daß er den Original-Namen des Filmes anzeigt,den Flag und die Suffix allerdings nicht und fertig.

    4K erkennt er bei mir automatisch (wahrscheinlich an den Informationen in der Movie.nfo). Funktioniert dies nicht, muß ich den Film nur 1x kurz starten und er zeigt mit das UHD-Cover.

    Kodi 20.3 auf Vero V - Skin AEON Nox Silvo

    Teufel Concept S SW-R 5.1 Anlage, Samsung UE55JS9090, Logitech Harmony 555

    2 Mal editiert, zuletzt von Frido aus Magdeburg (7. Dezember 2019 um 13:56)

  • Sollte dann so aussehen (das erste Bild ist im Dateimanager)

  • Hallo @Hocico, Hallo @diver100,

    in den Variablen 'IncludesMediaFlagsVideoSource', 'MovieCase' und 'MovieCase(0)' waren noch Fehler. Habe den code jetzt in #16 nochmal angepasst.
    Wenn man ein Dateiformat (.3d.iso) hinzufügt, sollte man es besser zweimal überprüfen. :whistling:

    Was wird wie angezeigt (für '.3d.iso' angepasst):

    Code
    Dateiendung   | Auflösung | Width | Height | flag    | case
    --------------------------------------------------------------
    .blu-ray.iso  | 1080p     | 1920  | 1080   | Blu-ray | Blu-ray
    
    
    .3d.sbs.disc  | 1080p     | 1920  | 1080   | 3D      | 3D Blu-ray
    .3d.iso       | 1080p     | 1920  | 1080   | 3D      | 3D Blu-ray

    [xattach=38618]3D flag case | Ansicht: Seite[/xattach]

    [xattach=38619]4K flag case | Ansicht: Seite[/xattach]

Jetzt mitmachen!

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