Jump to content

No Artwork in Kodi


rocketman10404
Go to solution Solved by rocketman10404,

Recommended Posts

rocketman10404

Been having a problem for a short while now where kodi has been unable to pull down any new artwork off my emby server.  I ended up wiping the client-side cached artwork files and textures database, so now I have no artwork at all.  I tried to force the emby add-on to re-cache all artwork, but after it finished and I restart kodi, kodi would crash on startup.  So, I wiped files/textures again.

 

After looking into my problem in more detail, I have what appears to be a fairly simple issue.  After examining my kodi.log file, every attempt my emby add-on makes to pull down some type of picture results in something like the following:

20:28:51 T:18446744072515362776 WARNING: static XFILE::IDirectory* XFILE::CDirectoryFactory::Create(const CURL&) - unsupported protocol(image) in image://http%3a%2f%2f192.168.1.2%3a8096%2femby%2fItems%2f73f51e05312a4bed5aaf003c0895c0c8%2fImages%2fBackdrop%2f0%3fMaxWidth%3d10000%26MaxHeight%3d10000%26Format%3doriginal%26Tag%3dc276025660f3a6bfa61491c0b7c9034f/

If I pull the actual http url out of that message and pop it in a web browser, I get some type of json error along the following lines:

Error Code          FormatException
Message             Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).

After struggling with that for a while, I realized the URL had a trailing slash, and if I removed it, my emby server happily served up the requested image.  So, the problem I seem to have is that every image request my emby add-on is making has a trailing slash on the end, which is tripping up the server side.

 

I'm at a loss for what's causing this - I poked a bit through the source on github and can't find any explanation.  It appears the add-on pulls the url for the request out of the MyVideos database and 'art' table, but upon examination I see that all of those urls are clean - no trailing slashes.  Furthermore, I'm not spotting anything in the remainder of the request that would add a slash on, either.

 

So, I'm at a loss.  If anyone could help me figure out where these trailing slashes are coming from, I'd much appreciate it.

Link to comment
Share on other sites

Angelblue05

Hum, that's odd, but the trailing slash is not added by us. I've never seen this issue. Are you able to run a repair sync, see if it helps (launch the emby add-on > repair sync)? Let me know.

Link to comment
Share on other sites

rocketman10404

I tried a "Repair local database (force update all content)" - doesn't seem to have helped.  Log from startup attached, although there's only one (failed) attempt to cache an image from emby, still with a trailing slash.

 

I would agree the trailing slash certainly doesn't seem to be added by the emby add-on - with a brief (and uneducated) glance through the code, the url for the images is pulled out of the database, and none of those currently in my database have trailing slashes.  I don't see anything that could possibly add a slash in the code either when the urls are passed to emby.

 

However, I wouldn't think it's on the emby side either - these should be essentially outgoing requests in the kodi log, right?  Seems like something must be happening to the request on the kodi/client side, but I'm baffled as to how that would be.

 

I also have my emby server running through a reverse nginx proxy for easier external access, although that isn't affecting this issue - you can see in the log kodi is requesting the images directly from the emby server's port and internal ip.

 

However, I've tried modifing the nginx to config to remove trailing slashes (so I could change over the emby add-on settings), but haven't had any luck; despite all my attempts, the trailing slashes still go through, kick an error, and show up on the nginx logs.  I was testing this in a web browser, not in the kodi add-on.

kodi.log

Link to comment
Share on other sites

rocketman10404

Just tried without it, but no change in behavior.  Also tried disabling any other artwork-related plugins.  No luck so far.

Link to comment
Share on other sites

rocketman10404

After more research, I could be off base on the source of this problem - I'm not sure it's the trailing slash.  Looking at my log errors again, they all contain something along these lines:

unsupported protocol(image) in image://http%3a%2f%2f192.168.1.2%3a8096%2femby%2

Referencing CDirectoryFactory::Create, which looks to be part of Kodi's code.  In that function definition (on GitLab for Kodi 16: https://gitlab.com/ember-dev/kodi/blob/kodi-16.0/xbmc/filesystem/DirectoryFactory.cpp), there are a bunch of if loops to catch different protocols, but nothing for "image" specifically.  Not sure where this "image" is coming from yet...

 

*Edit: my best guess is somewhere in CacheTexture located in plugin.video.emby/resources/lib/artwork.py, but at this point it's starting to go above my head

Edited by rocketman10404
Link to comment
Share on other sites

Angelblue05

image:// is part of the default Kodi cached url when they are being called by Kodi.

 

You will need to confirm two things. First, in myvideosxx.db - art table, the artwork url does not contain a trailing slash?

In textures13.db - texture table, the artwork url does not contain a trailing slash? Let me know.

Link to comment
Share on other sites

rocketman10404

At this point there's really nothing in my textures13.db - nothing currently in there is related to my emby setup.  In MyVideos99.db though, all of my emby content is there, and none of it has a trailing slash.

Link to comment
Share on other sites

  • Solution
rocketman10404

I think I've got it sorted out.  In any case, it's certainly not the emby add-on's fault, so I'll stop taking your time (certainly appreciate the help).  I believe it was in fact the path substitution - I tried it again without, and while it took a while, kodi started caching some images again.

 

Thing is, the same messages still appear in the log.  I think the actual problem is that my current implementation of Kodi (android version running on a Fire TV box) is currently unable to write to the usb drive.  (source: http://www.aftvnews.com/some-apps-like-kodi-cannot-write-to-external-storage-yet-on-fire-os-5/)

 

Hopefully this gets resolved elsewhere quickly enough, as my Fire TV certainly doesn't have enough internal space to cache images for my entire library.

  • Like 1
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...