• 1
  • 5
  • 6
  • 7(current)
  • 8
  • 9
  • 15
Release Embuary Helper Script
#91
Working on my end with Leia (but takes up to 2-3s)
I guess 100k< images are too much for the xbmcvfs module/Krypton/your device. Not related to my helper.
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
#92
(2019-07-21, 17:55)sualfred Wrote: Working on my end with Leia (but takes up to 2-3s)
I guess 100k< images are too much for the xbmcvfs module/Krypton/your device. Not related to my helper.
Ok, but basically good that now jpg are supported too!

Then i have to use for directors the other onload onscript solution, cause there it's showing immediate without errors and negative side effects (in dialogvideoinfo).
Haven't tested only in dialogvideoinfo but will now test on views.
Reply
#93
That's because I store all folder content into a list of files that are available. If %label%.jpg is found in list of files -> add it to list. 
As I said, works on Leia on my main rig. It can also be device related.
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
#94
(2019-07-21, 18:31)sualfred Wrote: That's because I store all folder content into a list of files that are available. If %label%.jpg is found in list of files -> add it to list. 
As I said, works on Leia on my main rig. It can also be device related.
Ah i understand so a list with a few thousand resources it a bit too much *gg*
I know this addon solution isn't perfect for showing director thumbs, but i saw no other way.
Hope it another solution will implemented in kodi core like actor thumbs in future.
____
So i have now to choose the script onload solution.
working perfect in dialogvideoinfo
working also in views, but there is a little problem:

____
already tried using onnext onprevious and instead window(home) tried window(viewxmlid), but think am on the wrong way.
____
Code:
            <control type="group">             
            <control type="list" id="456">
                <left>-3000</left>
                <top>-3000</top>
                <height>1</height>
                <width>1</width>
                <autoscroll>true</autoscroll>
                <scrolltime>10000</scrolltime>
                <itemlayout/>
                <focusedlayout/>
                <content>
                    <item>
                        <label>$INFO[Window(home).Property(director.0)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.0))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.1)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.1))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.2)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.2))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.3)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.3))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.4)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.4))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.5)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.5))</visible>
                    </item>    
                    <item>
                        <label>$INFO[Window(home).Property(director.6)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.6))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.7)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.7))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.8)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.8))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.9)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.9))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(home).Property(director.10)]</label>
                        <onclick>noop</onclick>
                        <visible>!String.IsEmpty(Window(home).Property(director.10))</visible>
                    </item>                    
                </content>
            </control>            
            <control type="image">
                <left>1083</left>
                <top>123</top>
                <width>500</width>
                <height>500</height>
                <aspectratio align="center" aligny="bottom">keep</aspectratio>
                <texture background="true">$INFO[Container(456).ListItem.Label,resource://resource.images.moviedirectorthumbs/,.jpg]</texture>
                <fadetime>1000</fadetime>    
            </control>            
            </control>
____
Please forgive me my noobness, it's all mainly for the kodi community go make my artwork projects more usability in skins.
Reply
#95
You really should try to understand how the skinning engine works. MyVideoNav never gets reloaded. Only the container gets updated. A RunScript command cannot be called via onload for this case. And ListItem.Cast and ListItem.Director aren't available there. You have to use the getbydbid method.

Try the github version again. I removed the list for all files and added a "realtime" check if the file is available. Maybe this is more stable on setups like yours.
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
#96
(2019-07-21, 19:35)sualfred Wrote: Try the github version again. I removed the list for all files and added a "realtime" check if the file is available. Maybe this is more stable on setups like yours.
haha, you got it man! It works! And works nice! Delay is about 1 second but i can "cover up" that with an animation or rather i do not want pop it up immediately anyway, but work with a fade delay.
I have now incorporated some codes into the views and dialog video info and found no negative perfomance effects!

Works well! Big thanks! The helper is a real gift! I will continue testing! Much appreciated!  Nod
__
And yes... i understand the skin engine too little, like a little child who wants to play football but its just too small.
Reply
#97
(2019-07-21, 09:38)sualfred Wrote: @wyrm 
https://github.com/sualfred/script.embua...b1fb2e9a83

Call (see guisettings.xml for reference):
Code:
RunScript(script.embuary.helper,action=getkodisetting,setting=locale.country)

Returns:
Code:
Window(home).property(locale.country)
Example: "Australia (12h)"


Call with stripping the time format:
Code:
RunScript(script.embuary.helper,action=getkodisetting,setting=locale.country,strip=timeformat)

Returns:
Code:
Window(home).property(locale.country)
Example: "Australia"

@sualfred,

Just got to try this out, works a treat. Also tried your JumpToLetter, man that is a lot faster than SkinHelper. Will be a little bit of work but replacing SkinHelper with your script just became a no brainer.

I don't suppose you have given any thought to the AddonIsEnabled function? Would be nice to resolve the long standing problem with my Addons Skin Settings items (detailed in post previously).

As we would say here in Australia, "Thanks mate, your blood is worth bottling".

Wyrm
Reply
#98
(2019-07-22, 17:23)wyrm Wrote: I don't suppose you have given any thought to the AddonIsEnabled function?
Have you already tested the skin solution for addon enable/disable? Would you have an example code?
I would like to be able to turn on and off the one (I may not call it by name) addon thats playing themes with a toggle button again.
Reply
#99
(2019-07-12, 11:53)sualfred Wrote: ListItem.DBID + ListItem.DBType is empty. These items have to be available. 

use a variable:
xml:

<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&amp;dbid=$INFO[ListItem.DBID]&amp;type=$INFO[ListItem.DBType]</value>
<value>-</value>
</variable>
xml:

<content>$VAR[getDBIDcontent]</content>
Still getting the error on skin refresh when using the variable code above on the actress artwork method on Leia.

@"chrissix" says there is no error on krypton.

I'm on version 1.2.11 of emburary helper

xml:

<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.actorart&string='$ESCINFO[Container(344).ListItem.Cast]'</content>
                    </control>
                    <control type="image">
                        <left>750</left>
                        <top>403</top>           
                        <width>450</width>
                        <height>450</height>       
                        <aspectratio align="center" aligny="bottom">keep</aspectratio>
                        <texture background="true">$INFO[Container(345).ListItem.Icon]</texture>               
                        <fadetime>1000</fadetime>
                    </control>
                </control>


Thanks for any info
Reply
@wyrm 

Good to hear.

Why do you need 2 different buttons to install/enable it when you can do it in one? If the addon isn't installed at all, my script won't do anything. And using InstallAddon() will enable it anyway.

xml:

        <control type="radiobutton" id="$PARAM[id]03">
            <include>SettingsButton</include>
            <onclick condition="System.HasAddon(script.tv.show.next.aired)">RunScript(script.embuary.helper,action=toggleaddons,addonid=script.tv.show.next.aired,enable=false)</onclick>
            <onclick condition="!System.HasAddon(script.tv.show.next.aired)">RunScript(script.embuary.helper,action=toggleaddons,addonid=script.tv.show.next.aired,enable=true)</onclick>
            <onclick condition="!System.HasAddon(script.tv.show.next.aired)">InstallAddon(script.tv.show.next.aired)</onclick>
            <selected>System.HasAddon(script.tv.show.next.aired)</selected>
            <label>TV Show - Next Aired</label>
        </control>

I mean... it would be no problem to get this requested option, but I don't see any profit and how do you want to use this, because you would have to update the value right after you toggled its status. That's tricky and in most cases not even possible without any weird skin hacks. Convince me Smile
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
@the_bo 
As usual: no log, no issue
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
(2019-07-22, 17:40)the_bo Wrote: @chrissix says there is no error on krypton.
I have to confirm on my 17.6 Krypton is running it perfectly! (I hope there will be no changes undo this on the next update Wink )
Are you sure you installed the seperate Krypton version from GitHub for Krypton?

My script.embuary.helper addon.xml says version 1.0.13
Reply
1.2.11 is for Leia.
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
(2019-07-22, 17:51)sualfred Wrote: @the_bo 
As usual: no log, no issue

Sorry thought i included the log.

xml:

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 'method_details'
                                            Traceback (most recent call last):
                                              File "/home/osmc/.kodi/addons/script.embuary.helper/plugin.py", line 83, in <module>
                                                Main()
                                              File "/home/osmc/.kodi/addons/script.embuary.helper/plugin.py", line 28, in __init__
                                                self.getinfos()
                                              File "/home/osmc/.kodi/addons/script.embuary.helper/plugin.py", line 64, in getinfos
                                                self._execute(plugin,self.info)
                                              File "/home/osmc/.kodi/addons/script.embuary.helper/plugin.py", line 74, in _execute
                                                getattr(plugin,action.lower())()
                                              File "/home/osmc/.kodi/addons/script.embuary.helper/resources/lib/plugin_content.py", line 67, in getbydbid
                                                json_query = json_call(self.method_details,
                                            AttributeError: 'PluginContent' object has no attribute 'method_details'
                                            -->End of Python script error report<--
2019-07-22 16:55:46.062 T:1805624032   ERROR: GetDirectory - Error getting plugin://script.embuary.helper/?info=getbydbid&type=&dbid=

Reply
(2019-07-22, 17:55)sualfred Wrote: 1.2.11 is for Leia.
Rofl

@sualfred 
It's all still a construction site, but those are the first excellent results. Your implementation for using resource addons is currently being used 3 times, Cast, Director, County. Great!
Reply
  • 1
  • 5
  • 6
  • 7(current)
  • 8
  • 9
  • 15

Logout Mark Read Team Forum Stats Members Help
Embuary Helper Script3