Kodi Community Forum

Full Version: skin helper service
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Would someone with contributor access to this repo kindly implement the bug fix described here?
Done a fresh install of kodi 17.6, nox Silvio skin and installed skin helper 1.1.24, but for some reason "configure" from within the addon is grayed out. Also tried some lower versions.

Any ideas?
Thanks
(2017-12-14, 05:40)TassLehoff44 Wrote: [ -> ]
(2017-12-13, 20:15)Guilouz Wrote: [ -> ]
(2017-12-13, 19:24)TassLehoff44 Wrote: [ -> ]Image

It's strange, vikings isn't show on the widget but show on Next Aired and Black Mirror is show on the widget and not on Next Aired (14 day max so Next Aired can't show it)

So Skin or Addon bug ?

I'm on 11/11/2017 Android Nightly
 Next Aired info are from Next Aired addon and widget is from Skin Helper Service. It's not the skin who manages that.   
Hi, so i'm here Smile
I found another strange thing, for exemple i add the last episode for "The Gifted" TV show (S01E10), Next Aired episode widget show me S01E11 episode, for the moment no problemes, then i watch the S01E10 episode and the Next Aired episode S01E11 widget diseapear.
In fact it's look like the Next aired widget show only TVs show with unwatched episodes. 
 Hi all,

I have the same problem described above.
can someone help ?

Thanks!
Keep getting the error on startup. Here is log. Please help. https://paste.kodi.tv/yuseyacufo
Hi there,

is it possible to create a widget to show random the first unwatched episode of a show? The widget "Next Episode" would do it for me, if I could make it random, but unfortunately its not possible.

I would appreciate any kind of help.

Thanks in advance Smile
Hoping SHS can help me with 2 things I'm messing around with in my customized skin. Angelinas has been offering lost of assistance to me over PM but I feel bad always bugging him for his exceptional help!

I've used Universal Movie Scraper to re-scrape my library (still a WIP) to pull Rotten Tomatoes, Metacritic and TMDB scores directly into the movie information and .nfo. These pull as a single digit with decimal value, and not a 2 digit value that could then easily be skinned to show as a percent. For example - "Solo: A Star Wars Story"

Code:
    <ratings>
        <rating name="imdb" max="10" default="true">
            <value>7.100000</value>
            <votes>126565</votes>
        </rating>
        <rating name="metacritic" max="10">
            <value>6.200000</value>
            <votes>54</votes>
        </rating>
        <rating name="themoviedb" max="10">
            <value>6.800000</value>
            <votes>1501</votes>
        </rating>
        <rating name="tomatometerallaudience" max="10">
            <value>6.400000</value>
            <votes>37119</votes>
        </rating>
        <rating name="tomatometerallcritics" max="10">
            <value>7.100000</value>
            <votes>388</votes>
        </rating>
        <rating name="tomatometeravgaudience" max="10">
            <value>7.000000</value>
            <votes>37119</votes>
        </rating>
        <rating name="tomatometeravgcritics" max="10">
            <value>6.400000</value>
            <votes>388</votes>
        </rating>
    </ratings>

My label code is as follows;

Code:
<label>$INFO[ListItem.Ratings(tomatometeravgcritics),,%]</label>

Which shows my a rating of '6.4%' when it should be '64%'.

UMS can't scrape these ratings without the decimal in the wrong place as a part of Kodi Core and Kodi itself doesn't seem to have a method to correct for this. Can SHS convert these numbers, multiple them by 10, Harry Potter Wizard magic them to look nice?

Thanks for all info!
(2018-09-17, 02:42)K0D1User1138 Wrote: [ -> ]UMS can't scrape these ratings without the decimal in the wrong place as a part of Kodi Core and Kodi itself doesn't seem to have a method to correct for this.  
Another approach could be to adjust what you give Kodi to be a percentage rather than a score out of 10
Code:
<rating name="tomatometerallaudience" max="100">
            <value>64.00000</value>
            <votes>37119</votes>
        </rating>
(2018-09-17, 09:25)DaveBlake Wrote: [ -> ]
(2018-09-17, 02:42)K0D1User1138 Wrote: [ -> ]UMS can't scrape these ratings without the decimal in the wrong place as a part of Kodi Core and Kodi itself doesn't seem to have a method to correct for this.  
Another approach could be to adjust what you give Kodi to be a percentage rather than a score out of 10
Code:
<rating name="tomatometerallaudience" max="100">
<value>64.00000</value>
<votes>37119</votes>
</rating>
Is your suggestion to alter the info for each movie to move the decimal place myself?

I have tried that but it did not work. Kodi can't read a 2 digit rating, at least in my testing. If it sees 2 digits before the decimal it believes the value is over 10 which is it's upper limit. If you change the limit to 100 then Kodi still just shows the first 2 digits with a decimal place between them. 

Plus altering some 3500 movies and then having to adjust every new added movie doesn't sound like a fun way to spend a month! Looking for a universal solution that anyone can easily benefit from.
Would suggest to use a vairable there:

<value condition="Integer.IsEqual(ListItem.Ratings(tomatometeravgcritics),1.1)">11<value>
<value condition="Integer.IsEqual(ListItem.Ratings(tomatometeravgcritics),1.2)">12<value>
...

its also always a good idea to look if a Skinner already did what u like to do, and if, you can may borrow some code, or a idea how to do it. (No Idea if there already exists something for Tomato Rating%)
would say a variable is here the way to go.
Yikes, that's a crap-ton of variables! * edit * I did as you suggested and now I have the numbers looking nice. Lots more lines in my variables file but oh well. Thanx!

I've been checking for skins that use these scores but I've not found any that use the UMS scraped scores as stored in the database. I don't want to use the constant API probing method that was available before but rather something like the IMDb scores. I've asked in a could of places how it might be possible to convert a single digit decimal into a 2 digit value. There was some info about SHS but so far nothing I've tried has worked out yet.

Worst case I just remove the % and have scores "out of 10". My life doesn't revolve around these scores anyways, just thought it was cool to add them in.
Hi, I have a CPU consumption problem in my Raspberry that at first I thought was a problem with the Emby addon that synchronizes my video library, because I have a very large collection. But finally trying to disable addons I have seen that by disabling "script.skin.helper.backgrounds" the CPU consumption drops radically from 360% to 30%. I use the skin "Zephyr" that makes use of this component, and testing the skin "Estuary" with my synchronized library I have seen that the CPU remains stable, since "Estuary" does not activate the "script.skin.helper.backgrounds". But when changing to Zephyr that automatically activates the "script.skin.helper.backgrounds" the CPU consumption goes up again to 360%.

I could read in the creator's github that mentions the following:

CAUTION: The script uses the already cached in memory collections of images to provide you the individual images to build your wall, it does add a little overhead but it should not be noticeable. What you do have to realize is that if you show for example a wall of 20 fanart images in your skin, all 20 fanart images will be cached by Kodi in memory, this WILL impact the performance. You might run into problems when using this approach on a low powered platform such as the Raspberry Pi.

To have the least impact on performance as possible, you can use the prebuilt wall images that are provided by this script. These are already resized into 1 image so that Kodi will only have to load 1 fanart image in memory.


I would like to know how can use the prebuilt wall images that are provided by this script or I could modify some parameter of the "script.skin.helper.backgrounds" so that it does not consume so much CPU and thus be able to make use of the Zephyr skin that is one of my favorites.

Thank you very much.
(2018-09-26, 19:05)miguelcmran Wrote: [ -> ]Hi, I have a CPU consumption problem in my Raspberry that at first I thought was a problem with the Emby addon that synchronizes my video library, because I have a very large collection. But finally trying to disable addons I have seen that by disabling "script.skin.helper.backgrounds" the CPU consumption drops radically from 360% to 30%. I use the skin "Zephyr" that makes use of this component, and testing the skin "Estuary" with my synchronized library I have seen that the CPU remains stable, since "Estuary" does not activate the "script.skin.helper.backgrounds". But when changing to Zephyr that automatically activates the "script.skin.helper.backgrounds" the CPU consumption goes up again to 360%.

I could read in the creator's github that mentions the following:

CAUTION: The script uses the already cached in memory collections of images to provide you the individual images to build your wall, it does add a little overhead but it should not be noticeable. What you do have to realize is that if you show for example a wall of 20 fanart images in your skin, all 20 fanart images will be cached by Kodi in memory, this WILL impact the performance. You might run into problems when using this approach on a low powered platform such as the Raspberry Pi.

To have the least impact on performance as possible, you can use the prebuilt wall images that are provided by this script. These are already resized into 1 image so that Kodi will only have to load 1 fanart image in memory.


I would like to know how can use the prebuilt wall images that are provided by this script or I could modify some parameter of the "script.skin.helper.backgrounds" so that it does not consume so much CPU and thus be able to make use of the Zephyr skin that is one of my favorites.

Thank you very much.
I'm sorry, where I put "script.skin.helper.backgrounds" I meant "skin.helper.services"
(2018-09-26, 19:10)miguelcmran Wrote: [ -> ]I'm sorry, where I put "script.skin.helper.backgrounds" I meant "skin.helper.services"
"script.skin.helper.backgrounds" is corect.

You can reduce number of "wall images prebuilt" default is 20 for all content....reduce in settings for this addon on 2.When prebuilt all wall image your cpu will back on normal.
Or disable this addon

settings for script
Image
Hey.. does any one know or can fix this error on xbox one?

ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<-- - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS! Error Type: <type 'exceptions.MemoryError'> Traceback (most recent call last): File "U:\Users\UserMgr0\AppData\Local\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalState\addons\script.skin.helper.service\service.py", line 10, in <module> from resources.lib.main_service import MainService File "U:\Users\UserMgr0\AppData\Local\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalState\addons\script.skin.helper.service\resources\lib\main_service.py", line 15, in <module> from webservice import WebService File "U:\Users\UserMgr0\AppData\Local\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalState\addons\script.skin.helper.service\resources\lib\webservice.py", line 11, in <module> import cherrypy File "U:\Users\UserMgr0\AppData\Local\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalState\addons\script.module.cherrypy\lib\cherrypy\__init__.py", line 76, in <module> from cherrypy import _cprequest File "U:\Users\UserMgr0\AppData\Local\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalState\addons\script.module.cherrypy\lib\cherrypy\_cprequest.py", line 10, in <module> from cherrypy import _cpreqbody, _cpconfig File "U:\Users\UserMgr0\AppData\Local\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalState\addons\script.module.cherrypy\lib\cherrypy\_cpreqbody.py", line 135, in <module> import cheroot.server File "U:\Users\UserMgr0\AppData\Local\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalState\addons\script.module.cherrypy\lib\cheroot\server.py", line 1199, in <module> from ctypes import windll, WinError File "S:\Program Files\WindowsApps\XBMCFoundation.Kodi_17.99.131.70_x64__4n2hpmxwrvr6p\system\python\Lib\ctypes\__init__.py", line 556, in <module> _reset_cache() File "S:\Program Files\WindowsApps\XBMCFoundation.Kodi_17.99.131.70_x64__4n2hpmxwrvr6p\system\python\Lib\ctypes\__init__.py", line 276, in _reset_cache CFUNCTYPE(c_int)(lambda: None) MemoryError -->End of Python script error report<--
(2018-09-26, 20:58)Angelinas Wrote: [ -> ]
(2018-09-26, 19:10)miguelcmran Wrote: [ -> ]I'm sorry, where I put "script.skin.helper.backgrounds" I meant "skin.helper.services"
"script.skin.helper.backgrounds" is corect.

You can reduce number of "wall images prebuilt" default is 20 for all content....reduce in settings for this addon on 2.When prebuilt all wall image your cpu will back on normal.
Or disable this addon

settings for script
Image 
 It was the "skin.helper.service" and not the "script.skin.helper.backgrounds". For some reason in Libreelec, OSMC, and any distribution based on Kodi for Raspberry, makes the CPU consume 360%, between 80-85% each core. I had to activate the Estuary skin in order to disable Eminence and that way I could uninstall the "skin.helper.service". Later I re-activated the Eminence skin and put it as the main skin. That way the Raspberry CPU is between 10-30%.