glaube de krypton bruch ist noch nicht up, hat auf das bit genau die selbe größe wie vorher und wieder selber fehler.
skining noob braucht hilfe -> multi image in einer list
-
chrissix -
16. Juli 2019 um 16:44 -
Unerledigt
-
-
Du musst ja auch von GitHub saugen und nicht vom Repo.
-
-
Du musst ja auch von GitHub saugen und nicht vom Repo.
natürlich, immer! hier -> https://youtu.be/dI15C48aREg
-
Mein Fehler, hab vergessen zu pushen
-
-
Muss noch ausgiebig testen wie es funktioniert bei gleichzeitiger Verwendung, derzeit.
1: Funktioniert super
2: Nach kurzer Kodi benutzung crasht das Main Fanart.
3: Texturen und Bilder verschwinden nach der reihe.Entweder der ImageLoader überlastet sehr schnell oder es gibt Nebenwirkungen mit dem ArtworkHelper von rmrector.
Ich bleib da dran...Aber der Helper funktioniert! Supeeeeeeeeeeeeer!
___Für Cast muss ich mir noch was einfallen lassen. Wenn keine resource vorhanden ist sollte er es überspringen - nur inhalte mit verfügbarer recource anzeigen.
-> Damit keine Löcher in der Multiimage sind.
-> Sämtliche Texturen, zuerst Fanart und dann der rest fallen nach einander aus bis alles schwarz. Ich glaube Image loader versucht zum gesamten Cast immer Bilder zu matchen und crasht dann.Das Log ist vollgestopft mit leeren abfragen: ERROR: CImageLoader::DoWork - Direct texture file loading failed for resource://resource.images.actorart/John Krasinski.png
Um das so verhindern und leere übersprungen werden muss der Code anders aufgebaut werden.
Ich glaube der Code muss dann SO ähnlich aufgebaut sein. Ich hoffe das kann man in Krypton auch noch bewerkstelligen.Keine Ahnung wie zu bewerkstelligen aber jetzt liegts am Code selber - Der Helper funktioniert! Super! Danke!
Aber da behellige ich dich jetzt bis auf weiteres nicht.
thx thx
-
Hallo @chrissix, Hallo @sualfred,
eigentlich möchte ich multi image für Studios anzeigen, aber zuerst habe ich die Anpassung (Code 2 aus der Antwort #6) für Director ausprobiert.
Leider wird kein Director angezeigt und es erscheint immer die folgende Fehlermeldung im Kodi [definition='1','0']log[/definition]:Code
Alles anzeigen... NOTICE: ADDON: resource.images.moviedirectorthumbs v0.0.1 installed ... NOTICE: ADDON: script.embuary.helper v1.4.8 installed ... NOTICE: [ script.embuary.helper ] Service: Started NOTICE: [ script.embuary.helper ] Service: Player monitor started ... ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<-- - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS! Error Type: <type 'exceptions.AttributeError'> Error Contents: 'PluginContent' object has no attribute 'bydbid' Traceback (most recent call last): File "C:\Users\UserXYZ\AppData\Roaming\Kodi\addons\script.embuary.helper\plugin.py", line 76, in <module> Main() File "C:\Users\UserXYZ\AppData\Roaming\Kodi\addons\script.embuary.helper\plugin.py", line 27, in __init__ self.getinfos() File "C:\Users\UserXYZ\AppData\Roaming\Kodi\addons\script.embuary.helper\plugin.py", line 60, in getinfos self._execute(plugin,self.info) File "C:\Users\UserXYZ\AppData\Roaming\Kodi\addons\script.embuary.helper\plugin.py", line 68, in _execute getattr(plugin,action.lower())() AttributeError: 'PluginContent' object has no attribute 'bydbid' -->End of Python script error report<-- ERROR: XFILE::CDirectory::GetDirectory - Error getting plugin://script.embuary.helper/?info=bydbid&dbid=23&type=movie
Hier: Release - Embuary Helper Script
... fand ich den Hinweis, dass man es mit einer Variable lösen kann. Hat aber leider nicht geholfen....\Kodi\addons\skin.transparency\1080p\Includes_Variables.xml
XML<?xml version="1.0" encoding="utf-8"?> <includes> ... <variable name="getDBIDcontent"> <value condition="!String.IsEmpty(ListItem.DBID) + [String.IsEqual(ListItem.DBType,movie) | String.IsEqual(ListItem.DBType,tvshow) | String.IsEqual(ListItem.DBType,episode)]">plugin://script.embuary.helper/?info=bydbid&dbid=$INFO[ListItem.DBID]&type=$INFO[ListItem.DBType]</value> </variable> ... </includes>
...\Kodi\addons\skin.transparency\1080p\DialogVideoInfo.xmlXML
Alles anzeigen<?xml version="1.0" encoding="utf-8"?> <window> ... <!-- Director Thumb --> <onload>runscript(script.embuary.helper,action=split,property=director,separator='" / "',value='$ESCINFO[ListItem.director]')</onload> <!-- Hidden control --> <control type="group"> <animation effect="fade" start="0" end="100" time="1000" delay="3000">Visible</animation> <animation effect="fade" start="0" end="100" time="1000" delay="5500">WindowOpen</animation> <animation effect="fade" start="100" end="0" time="500">Hidden</animation> <animation effect="fade" start="100" end="0" time="500">WindowClose</animation> <visible>Container.Content(movies) + [Container(149).HasFocus(10) | Container(149).HasFocus(13)] + Control.Hasfocus(149)</visible> <control type="list" id="124"> <left>-3000</left> <top>-3000</top> <height>1</height> <width>1</width> <autoscroll>true</autoscroll> <scrolltime>6000</scrolltime> <itemlayout/> <focusedlayout/> <!-- <content>plugin://script.embuary.helper/?info=bydbid&dbid=$INFO[ListItem.DBID]&type=$INFO[ListItem.DBType]</content> --> <!-- Zeile von chrissix --> <content>$VAR[getDBIDcontent]</content> <!-- Neue Variable --> </control> <control type="list" id="125"> <left>-3000</left> <top>-3000</top> <height>1</height> <width>1</width> <autoscroll>true</autoscroll> <scrolltime>6000</scrolltime> <itemlayout/> <focusedlayout/> <content> <item> <label>$INFO[Container(124).ListItem.Property(director.0)]</label> <onclick>noop</onclick> <visible>!String.IsEmpty(Container(124).ListItem.Property(director.0))</visible> </item> <item> <label>$INFO[Container(124).ListItem.Property(director.1)]</label> <onclick>noop</onclick> <visible>!String.IsEmpty(Container(124).ListItem.Property(director.1))</visible> </item> <item> <label>$INFO[Container(124).ListItem.Property(director.2)]</label> <onclick>noop</onclick> <visible>!String.IsEmpty(Container(124).ListItem.Property(director.2))</visible> </item> </content> </control> <!-- Fake multiimage control --> <control type="image"> <left>1083</left> <top>123</top> <width>397</width> <height>573</height> <texture background="true">thumbs/thumb_back_black.png</texture> <aspectratio align="center" aligny="center">stretch</aspectratio> </control> <control type="image"> <left>1083</left> <top>123</top> <width>397</width> <height>573</height> <aspectratio align="center" aligny="bottom">stretch</aspectratio> <texture background="true">$INFO[Container(125).ListItem.Label,resource://resource.images.moviedirectorthumbs/,.jpg]</texture> <fadetime>1000</fadetime> </control> <control type="image"> <left>1083</left> <top>650</top> <width>397</width> <height>46</height> <texture>darkgrey.png</texture> <colordiffuse>$INFO[Skin.String(colortexture)]</colordiffuse> <include>Animation_DefaultGlass</include> <aspectratio align="center" aligny="center">stretch</aspectratio> </control> <control type="textbox"> <font>Font_plot4</font> <align>center</align> <left>1080</left> <top>657</top> <width>397</width> <height>40</height> <label>$INFO[Container(125).ListItem.Label]</label> </control> </control> ... </window>
"<visible>Container.Content(movies) + [Container(149).HasFocus(..."
Die (149) kann ich nicht zuordnen, ist die auf deinem Skin zugeschnitten?Warum werden die Regisseure aus dem string movie.c15 aufgesplittet:...
XML<?xml version="1.0" encoding="utf-8"?> ... <onload>runscript(script.embuary.helper,action=split,property=director,separator='" / "',value='$ESCINFO[ListItem.director]')</onload> ...
... sie sind doch schon einzeln in der Datenbank vorhanden oder kann man diese Daten nicht nutzen?:
SQLSELECT a.name AS Director FROM movie m, director_link dl, actor a WHERE m.idFile = dl.media_id AND dl.actor_id = a.actor_id AND dl.media_type = 'movie' AND m.c00 = '<Filmtitel>';
Getestet mit Kodi v18.8 | Transparency! 11.0.9
Gruß
-
-
'getdirectedby' hat gefehlt.
...\Kodi\addons\skin.transparency\1080p\Includes_Variables.xml
XML<?xml version="1.0" encoding="utf-8"?> <includes> ... <variable name="getDBIDcontent"> <value condition="!String.IsEmpty(ListItem.DBID) + [String.IsEqual(ListItem.DBType,movie) | String.IsEqual(ListItem.DBType,tvshow) | String.IsEqual(ListItem.DBType,episode)]">plugin://script.embuary.helper/?info=getdirectedby&dbid=$INFO[ListItem.DBID]&type=$INFO[ListItem.DBType]</value> </variable> ... </includes>
Der Error im kodi [definition='1','0']log[/definition] ist weg, aber die Regisseure werden immer noch nicht angezeigt.
Im [definition='1','0']log[/definition] taucht nur noch folgendes auf:
[cbox]WARNING: Skin has invalid include: Animation_DefaultGlass[/cbox]Bis jetzt funktioniert nur die Lösung für einzelne Regisseure. Filme von den Coen Brüdern oder z.B. die Matrix Filme kann man dann vergessen.
Mit der Variablen 'MovieDirectorThumb' hatte ich keinen Erfolg....\Kodi\addons\skin.transparency\1080p\DialogVideoInfo.xml
XML
Alles anzeigen<?xml version="1.0" encoding="utf-8"?> <window> ... <control type="image"> <left>1570</left> <top>27</top> <width>327</width> <height>465</height> <!-- <texture background="true">$VAR[MovieDirectorThumb]</texture> --> <!-- funktioniert bisher nicht --> <texture background="true">$INFO[ListItem.Director,resource://resource.images.moviedirectorthumbs/,.jpg]</texture> <visible>Container.Content(Movies) | [Container.Content(TVShows) + !Skin.HasSetting(TVShowsPosters)]</visible> </control> ... </window>
...\Kodi\addons\skin.transparency\1080p\Includes_Variables.xmlXML<?xml version="1.0" encoding="utf-8"?> <includes> ... <variable name="MovieDirectorThumb"> <!-- <value condition="String.Contains(ListItem.Director)">$INFO[ListItem.Label,resource://resource.images.moviedirectorthumbs/,.jpg]</value> --> <!-- funktioniert nicht --> <value condition="!String.IsEmpty(Skin.String(resource.images.moviedirectorthumbs.path))">$INFO[ListItem.Label,resource://resource.images.moviedirectorthumbs/,.jpg]</value> </variable> ... </includes>
...\Kodi\addons\skin.transparency\1080p\DialogVideoInfo.xmlXML<?xml version="1.0" encoding="utf-8"?> ... <onload>runscript(script.embuary.helper,action=split,property=director,separator='" / "',value='$ESCINFO[ListItem.director]')</onload> ...
Soweit ich das richtig verstanden hab, ist die "RunScript to split a value to a property of your choice" Funktion hier überflüssig. Hier wird mit der "Skin hack with the getdbid content path" Funktion gearbeitet.
-
Variable 'MovieDirectorThumb' funktioniert jetzt:
...\Kodi\addons\skin.transparency\1080p\Includes_Variables.xmlXML<?xml version="1.0" encoding="utf-8"?> <includes> ... <variable name="MovieDirectorThumb"> <value condition="String.Contains(ListItem.Director, / )">noop</value> <value condition="!String.IsEmpty(ListItem.Director)">$INFO[ListItem.Director,resource://resource.images.moviedirectorthumbs/,.jpg]</value> </variable> ... </includes>
Code 1 (RunScript to split a value to a property of your choice) aus Antwort #6 und die Beispiele von sualfred wurden ausprobiert aber ohne Erfolg.
Das wenigstens der erste Regisseur angezeigt wird, funktioniert auch nicht....\Kodi\addons\skin.transparency\1080p\DialogVideoInfo.xml
XML
Alles anzeigen<?xml version="1.0" encoding="utf-8"?> <window> ... <onload condition="System.HasAddon(script.embuary.helper)">Runscript(script.embuary.helper,action=split,property=director,separator='" / "',value='$ESCINFO[ListItem.Director]')</onload> <onload condition="System.HasAddon(script.skin.helper.service)">RunScript(script.skin.helper.service,action=stripstring,splitchar= / ,string=$INFO[ListItem.Director],output=First_Director,index=0)</onload> <control type="image"> <left>1607</left> <top>60</top> <width>300</width> <height>450</height> <!-- <texture background="true">$INFO[Window(home).Property(director.1),resource://resource.images.moviedirectorthumbs/,.jpg]</texture> --> <!-- Add-on: embuary.helper --> <!-- <texture background="true">$INFO[First_Director,resource://resource.images.moviedirectorthumbs/,.jpg]</texture> --> <!-- Add-on: skin.helper.service --> <texture background="true">$VAR[MovieDirectorThumb]</texture> <!-- nur für Filme mit einem Regisseur --> <aspectratio scalediffuse="false" align="center" aligny="center">keep</aspectratio> </control> ... </window>
Die Notlösung (Anzeige: nur für ein Regisseur) mag u.U. für Director noch gehen, aber z.B. für Studios macht es keinen Sinn.
Wirklich schade, da gibt es ein 1a Beispiel und man bekommt es nicht hin. -
-
Der Embuary Helper funktioniert mit folgendem Beispiel aus dem Beitrag #99: Release - Embuary Helper Script
...\Kodi\addons\skin.transparency\1080p\Includes_Variables.xml
XML<?xml version="1.0" encoding="utf-8"?> <includes> ... <variable name="getDBIDcontent"> <value condition="!String.IsEmpty(ListItem.DBID) + [String.IsEqual(ListItem.DBType,movie) | String.IsEqual(ListItem.DBType,tvshow) | String.IsEqual(ListItem.DBType,episode)]">plugin://script.embuary.helper/?info=getbydbid&dbid=$INFO[ListItem.DBID]&type=$INFO[ListItem.DBType]</value> </variable> ... </includes>
...\Kodi\addons\skin.transparency\1080p\DialogVideoInfo.xmlXML
Alles anzeigen<?xml version="1.0" encoding="utf-8"?> <window> ... <control type="group"> <control type="list" id="344"> <left>3000</left> <height>1</height> <width>1</width> <itemlayout/> <focusedlayout/> <content>$VAR[getDBIDcontent]</content> </control> <control type="list" id="345"> <left>3000</left> <height>1</height> <width>1</width> <autoscroll>true</autoscroll> <scrolltime>5000</scrolltime> <itemlayout/> <focusedlayout/> <content>plugin://script.embuary.helper/?info=getresourceimages&addon=resource.images.moviedirectorthumbs&string='$ESCINFO[Container(344).ListItem.Director]'</content> </control> <control type="image"> <left>1607</left> <top>60</top> <width>300</width> <height>450</height> <aspectratio scalediffuse="false" align="center" aligny="center">keep</aspectratio> <texture background="true">$INFO[Container(345).ListItem.Icon]</texture> <fadetime>1000</fadetime> </control> </control> ... </window>
Einschränkungen:
1. Es werden nur Filme unterstützt, die nur einen Regisseur haben.
2. Wenn man den nächsten Film auswählt, wird der vorherige Regisseur nochmal kurz angezeigt. Kennt jemand einen Befehl, mit dem man das unterbinden kann?chrissix schreibt im Beitrag #96 das es (multi slide show für Regisseure) geht, aber ich habe keine Ahnung wie er das geschafft hat.
Getestet mit Kodi v18.8 | Transparency! 11.0.9 | embuary helper v1.4.8
-
Da ich mit Director keinen Erfolg hatte, habe ich mich dem Studio-flag zugewandt.
Keine Ahnung warum ich den code aus #89 nicht schon vorher ausprobiert habe, aber die Slideshow funktioniert jetzt für Studio (in view und movie info) und auch für Director (in movie info)....\Kodi\addons\skin.transparency\1080p\DialogVideoInfo.xml
XML
Alles anzeigen<?xml version="1.0" encoding="utf-8"?> <window> ... <control type="group"> <control type="list" id="122"> <left>3000</left> <height>1</height> <width>1</width> <autoscroll>true</autoscroll> <scrolltime>5000</scrolltime> <itemlayout/> <focusedlayout/> <content>plugin://script.embuary.helper/?info=getresourceimages&addon=resource.images.moviedirectorthumbs&separator='" / "'&string='$ESCINFO[ListItem.Director]'</content> </control> <control type="image"> <left>1607</left> <top>68</top> <width>300</width> <height>450</height> <texture background="true">$INFO[Container(122).ListItem.Icon]</texture> <aspectratio scalediffuse="false" align="center" aligny="center">keep</aspectratio> <fadetime>300</fadetime> <visible>[[Container.Content(Movies) + ![[Control.IsVisible(50) | Control.IsVisible(592)] + !Window.IsVisible(MovieInformation)] + !Control.IsVisible(57)] | [!Container.Content(Movies) + !Window.IsVisible(VideoPlaylist)]] + !ListItem.IsParentFolder</visible> </control> <control type="textbox"> <left>1620</left> <top>459</top> <width>300</width> <height>80</height> <align>center</align> <label>$INFO[Container(122).ListItem.Label]</label> <fadetime>300</fadetime> <visible>[[Container.Content(Movies) + ![[Control.IsVisible(50) | Control.IsVisible(592)] + !Window.IsVisible(MovieInformation)] + !Control.IsVisible(57)] | [!Container.Content(Movies) + !Window.IsVisible(VideoPlaylist)]] + !ListItem.IsParentFolder</visible> </control> </control> ... </window>
Einschränkung:
- Wenn man den nächsten Film auswählt, wird der/das vorherige Regisseur/Studio nochmal kurz angezeigt (<1 Sek.). Damit kann man aber leben.Wo genau und welche Dateien für Studio-flags und Director-thumbs angepasst werden müssen, schreib ich in ein neues Thema in der Rubrik: ... > Skins & Themes > T! - Transparency.
VIELEN DANK an sualfred und chrissix! Ohne 'embuary helper' und 'Movie Director Thumbs resource addon' wäre das nicht möglich geworden.
Getestet mit Kodi v18.8 | Transparency! 11.0.9 | embuary helper v1.4.8
Gruß
-
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!