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.
@Marcel are this typo error in Animated poster...

extendedinfocache.......

nevermind ,animated poster working with 1.60.....
@Angelinas,

do you use pathsubstition for thumbnails? I am and I can't get animated posters to work? Seems to be fetching them to the animatedgifs folder but not displaying them?
Hi,

I love this plugin, especially since I discovered the PVR widgets. I do, however, have a intermittent problem with the "PVR recent recordings" view.in 1.0.60. When I attempt to play a recording from the widget, it more often than not fails to play. It's usually fine initially, but starts having issues after I have been navigating around Kodi for a while. The other PVR widgets don't appear to have this same problem.

I reverted back to 1.0.54 and have been unable to re-create the problem.

I'm not sure if this is a known issue or specific to me. I'll be happy to upload any logs if you'd like.

thanks
rob
Hello

I have downloaded the latest git and i have two errors.
Code:
02:52:12 T:2444   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.TypeError'>
                                            Error Contents: must be string without null bytes or None, not str
                                            Traceback (most recent call last):
                                              File "C:\Program Files (x86)\Kodi16\portable_data\addons\script.skin.helper.service\service.py", line 9, in <module>
                                                from resources.lib.WebService import WebService
                                              File "C:\Program Files (x86)\Kodi16\portable_data\addons\script.skin.helper.service\resources\lib\WebService.py", line 4, in <module>
                                                import SimpleHTTPServer, BaseHTTPServer, httplib
                                              File "C:\Program Files (x86)\Kodi16\system\python\Lib\SimpleHTTPServer.py", line 27, in <module>
                                                class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
                                              File "C:\Program Files (x86)\Kodi16\system\python\Lib\SimpleHTTPServer.py", line 214, in SimpleHTTPRequestHandler
                                                mimetypes.init() # try to read system mime.types
                                              File "C:\Program Files (x86)\Kodi16\system\python\Lib\mimetypes.py", line 351, in init
                                                db.read_windows_registry()
                                              File "C:\Program Files (x86)\Kodi16\system\python\Lib\mimetypes.py", line 254, in read_windows_registry
                                                with _winreg.OpenKey(hkcr, subkeyname) as subkey:
                                            TypeError: must be string without null bytes or None, not str
                                            -->End of Python script error report<--



02:52:21 T:1668   ERROR: Skin Helper Service --> ERROR in createNFO --> cannot serialize [u'b8dee82d-21e4-44a8-ba45-1293e381c818'] (type list)
02:52:21 T:1668   ERROR: Traceback (most recent call last):
02:52:21 T:1668   ERROR:   File "C:\Program Files (x86)\Kodi16\portable_data\addons\script.skin.helper.service\resources\lib\ArtworkUtils.py", line 612, in createNFO
02:52:21 T:1668   ERROR:     xmlstring = xmltree.tostring(tree.getroot(), encoding="utf-8")
02:52:21 T:1668   ERROR:   File "C:\Program Files (x86)\Kodi16\system\python\Lib\xml\etree\ElementTree.py", line 1126, in tostring
02:52:21 T:1668   ERROR:     ElementTree(element).write(file, encoding, method=method)
02:52:21 T:1668   ERROR:   File "C:\Program Files (x86)\Kodi16\system\python\Lib\xml\etree\ElementTree.py", line 820, in write
02:52:21 T:1668   ERROR:     serialize(write, self._root, encoding, qnames, namespaces)
02:52:21 T:1668   ERROR:   File "C:\Program Files (x86)\Kodi16\system\python\Lib\xml\etree\ElementTree.py", line 939, in _serialize_xml
02:52:21 T:1668   ERROR:     _serialize_xml(write, e, encoding, qnames, None)
02:52:21 T:1668   ERROR:   File "C:\Program Files (x86)\Kodi16\system\python\Lib\xml\etree\ElementTree.py", line 937, in _serialize_xml
02:52:21 T:1668   ERROR:     write(_escape_cdata(text, encoding))
02:52:21 T:1668   ERROR:   File "C:\Program Files (x86)\Kodi16\system\python\Lib\xml\etree\ElementTree.py", line 1075, in _escape_cdata
02:52:21 T:1668   ERROR:     _raise_serialization_error(text)
02:52:21 T:1668   ERROR:   File "C:\Program Files (x86)\Kodi16\system\python\Lib\xml\etree\ElementTree.py", line 1052, in _raise_serialization_error
02:52:21 T:1668   ERROR:     "cannot serialize %r (type %s)" % (text, type(text).__name__)
02:52:21 T:1668   ERROR: TypeError: cannot serialize [u'b8dee82d-21e4-44a8-ba45-1293e381c818'] (type list)

Any help i could do?
I appreciate this might not be the best thread to request this, but I can't find any better active thread.

Whilst there are workarounds to display the various artwork that this script makes available for the currently selected item - AnimatedPoster, ListItemStudio and Music.Discart to name but three - for items that are not currently focused I have to ask if there is any thought given to making these items available to non-focused items - with preference for this script acting similarly to the artwork downloader script, and adding these so they are available via $INFO[ListItem.Art([artwork type])].

Whilst I greatly appreciate being able to access such images without any workaround for the selected item, as I'm not working on any 'currently selected item info' view, if these aren't available for non-selected items, they're currently - unless I'm misunderstanding the current implementation, which is very possible - not of any use to me. I do understand that such improvements would probably require core changes, though, so am ready to accept a simple 'No' answer Smile
Hi Marcel, back on the constant stuffs Cool

After many attempts, there's 2 things I miss to complete the "user setup" experience.

First one is there's no infolabels for constants (erm yeah, it's constants Wink ...). So the idea is to be able to read the value now they can be set.
An optional window prop writting using the same name and containing the value can do the trick IMO.

Also, I would like to copy constants to constants in bulk mode. The idea is to build a constants model :

Model.SizeX
Model.SizeY
Model.PosX
Model.PosX

And spread then at user request to the corresponding KODI section (ex for video section) :

Code:
RunScript(script.skin.helper.service,action=copyskinconstant,id=Model.SizeX,target=Video.SizeX)
RunScript(script.skin.helper.service,action=copyskinconstant,id=Model.SizeY,target=Video.SizeY)
RunScript(script.skin.helper.service,action=copyskinconstant,id=Model.PosX,target=Video.PosX)
RunScript(script.skin.helper.service,action=copyskinconstant,id=Model.PosY,target=Video.PosY)

Same reverse (with window prop option) :

Code:
RunScript(script.skin.helper.service,action=copyskinconstant,id=Video.SizeX,target=Model.SizeX,setproperty=true)
RunScript(script.skin.helper.service,action=copyskinconstant,id=Video.SizeY,target=Model.SizeY,setproperty=true)
RunScript(script.skin.helper.service,action=copyskinconstant,id=Video.PosX,target=Model.PosX,setproperty=true)
RunScript(script.skin.helper.service,action=copyskinconstant,id=Video.PosY,target=Model.PosY,setproperty=true)

Or maybe something using a single runscript command with DialogBusy or Progress so ending can do the Reloadskin() at the end.

Do you think you can do something for those ?
Many thanks.
(2016-03-10, 21:11)Mike_Doc Wrote: [ -> ]do you use pathsubstition for thumbnails? I am and I can't get animated posters to work? Seems to be fetching them to the animatedgifs folder but not displaying them?

Hmmm, path substitution... not sure if that is going to work.
Do you have set the substitution to another local folder or UNC ?

BTW: Why substitute the thumbnails folder, that kind of misses the point for the thumbnails cache ;-)
Hi Marcel,

I was using path substitution as I had the HP 260 G1 nettop and it only had 32GB SSD, I got down to less than 1GB left so plugged in a 3TD external HDD. I've upgraded to a Revo One RL85 with 60GB SSD which has around 25GB left but still use the path substitution.

I need to clean up my thumbnails folder as well.

Also, got somewhere recently with animated posters, forgot I can't use your window properties in either itemlayout or focusedlayout which is where I was trying to add them. Tried another view and it is working, can it not work within a list/ layout?
(2016-03-11, 20:47)Mike_Doc Wrote: [ -> ]Hi Marcel,

I was using path substitution as I had the HP 260 G1 nettop and it only had 32GB SSD, I got down to less than 1GB left so plugged in a 3TD external HDD. I've upgraded to a Revo One RL85 with 60GB SSD which has around 25GB left but still use the path substitution.

I need to clean up my thumbnails folder as well.

Also, got somewhere recently with animated posters, forgot I can't use your window properties in either itemlayout or focusedlayout which is where I was trying to add them. Tried another view and it is working, can it not work within a list/ layout?
Could be wrong but I think marcel added a "webservice" to use in layouts. Perhaps this is currently available when using it, but I have no idea Sir Doc Wink
You could be right MikeS, but after plugging in this:

<texture background="true">http://localhost:52307/getthumb&amp;title=$INFO[Window(home).Property(SkinHelper.AnimatedPoster)]</texture>

I get Youtube errors? Marcel does webservice required youtube? just when looking for the latest and got version 5.1.20... but still the same error when I get to where to posters should show up?
(2016-03-12, 17:50)Mike_Doc Wrote: [ -> ]You could be right MikeS, but after plugging in this:

<texture background="true">http://localhost:52307/getthumb&amp;title=$INFO[Window(home).Property(SkinHelper.AnimatedPoster)]</texture>

I get Youtube errors? Marcel does webservice required youtube? just when looking for the latest and got version 5.1.20... but still the same error when I get to where to posters should show up?
Easy way for you to resolve this is to read your thread ,
I explain you there...all that you need for Animated poster....

http://forum.kodi.tv/showthread.php?tid=...pid2276765

this is wrong
Code:
<texture background="true">http://localhost:52307/getthumb&amp;title=$INFO[Window(home).Property(SkinHelper.AnimatedPoster)]</texture>

like this should be
Code:
$INFO[Window(home).Property(SkinHelper.AnimatedPoster)]
Hi Angelinas,

Yes, saw you post in my thread, thanks. But this

$INFO[Window(home).Property(SkinHelper.AnimatedPoster)]

Doesn't work in layouts (item/focused)? well for me anyway?
(2016-03-12, 18:20)Mike_Doc Wrote: [ -> ]Hi Angelinas,

Yes, saw you post in my thread, thanks. But this

$INFO[Window(home).Property(SkinHelper.AnimatedPoster)]

Doesn't work in layouts (item/focused)? well for me anyway?
Mike_Doc,

Wrong bracket type around the $INFO. See the documentation, you need to use { } not [ ] . Should then work.

Wyrm (AppTV)
Hi Wyrm,

never noticed that, thanks. But again on updating to use { } I still get you tube error and no animation.?

EDIT: My bad, changed the wrong tag structure, got it like this now:

<texture background="true">http://localhost:52307/getthumb&amp;title=$INFO{Window(home).Property(SkinHelper.AnimatedPoster)}</texture>

and it no longer you tube errors but just returns the same image, which seems to be strange>

Image

something connected to Aladdin of all films?
Nooo that is code for thumb from google or youtube... You want animated poster. Give me 30 min and sand you what to change for your mod skin.