jeroenpardon / skin.grid

Grid, a UI for Kodi. By using this code you agree with the license terms as included.
http://www.gridskin.net
Other
39 stars 25 forks source link

Fanart usage/location #135

Closed Ostrymiecz closed 7 years ago

Ostrymiecz commented 7 years ago

It's more of a question I think. Grid uses Fanart from extrafanart (which are downloaded by Artwork Downloader add-on) folders rather than pictures (fanarts) that were scraped by Kodi itself while adding item to a movie library.

Is it possible to add an option which fanart should Grid use? Or is it stupid idea?

jeroenpardon commented 7 years ago

This is not correct, extrafanart is only used when downloaded by the user and only displayed in the Gallery that is available in the movie / tv show information screen. In the library views, widgets, etc. Grid uses scraped fanart.

Ostrymiecz commented 7 years ago

I'm asking about fanart that is shown in home screen as a slideshow. I was doing fresh Kodi install few days ago and just scraped all my movies. Then I chose to show only fanart from video library on home screen and logos also. Then boom, no fanart was shown one homescreen. Only black background. Then I downloaded logos using Artwork Downloader and they started top show up but also on black backgrounds. Then I downloaded extrafanarts using same add-on and… after that they started to show up.

Hmm…

jeroenpardon commented 7 years ago

You probably just needed a reboot / Kodi relaunch after the initial scraping because fanart grabber is initiated during startup. There is no way for skins to directly pull the artwork (except in the library). Kodi used to just store all artwork in a folder which could be used as a path in multiimages, but they can only be pulled from the database these days, and an add-on is needed for it. It was the entire reason fanart grabber was created.

I'll see if I can make selecting one of the fanart source options initiate fanart grabber

jeroenpardon commented 7 years ago

See #136

Ostrymiecz commented 7 years ago

I must say that several years ago my experience with fanart and reFocus was way better than it is right now. Something is wrong but I must figure it out is it with my setup or Kodi itself. I really have problem(s) with fanart until Grid somehow "starts" to actually see and display them (and logos too).

Kodi after scraping builds several file databases. I pressume that they are in SQLite format. One those dbases is textures. Problem is that AFTER initial scraping the base stays empty. File size won't grow. Somwhere in Kodi foromus I read that after scraping You should not shutdown Kodi because he is populating images to its database. I don't know if it true or not but that what I have read somewhere.

I forgot to mention in earlier post here (and this is crucial info I think) that fanart and logos showed up finally in Grid's home screen when I have used Texture Cache Maintenance utility by Milhouse. I simply ran it with c parameter which "automatically caches missing artwork". And yes all of fanart and logos were uncached. After that all was working OK.

I worry because I don't want to run it after each added movie. Earlier in reFocus it was working perfecto. :(

jeroenpardon commented 7 years ago

The thing is, there is literally nothing different in the way the fanart is shown between Grid and reFocus as it is handled by the same add-on.

Ostrymiecz commented 7 years ago

Can skin trigger texture database population or is it Kodi job? I'm asking because somehow Kodi doesn't do it after initial scraping and even after multiple Kodi restarts. Only way was to run Texture Cache Maintenance utility. This drives me crazy.

jeroenpardon commented 7 years ago

That really is Kodi's job. At best, skins can tell Kodi to manually update the library or part of it at the user's request. But in the end it is Kodi that does all the population and updating. The actual pulling that artwork from the database is done by fanart grabber. Instructions as to what type of artwork to pull from the database are given to fanart grabber by the skin. Fanart grabber pulls said fanart and the skin accesses them through a window property and feeds the images to a multiimage control.

That last part is very straight forward and you can't really do anything wrong, or even in a different way. Well, you can but then it will just not work at all. I could not think of a way to deliberately make some artwork show and some not, there's just no way to do it. So while I am not saying you can't have a problem, I do think that such a problem could not be caused by a different approache at skin level.

Ostrymiecz commented 7 years ago

So I will once again purge my movie library. I'll remove all items from it, delete video and textures databases and then once again add all movies but without downloading extrafanart with artwork downloader. We'll see if Kodi will cache fanart to its textures and if not I'll do the same on built-in Estuary skin. I must resolve this issue.

Ostrymiecz commented 7 years ago

I've sorted it out. There is absolutely no problem with Grid. That's good news. I've added few movies to fresh database and Kodi scraped them properly. Then I've waited few moments observing textures database which was growing. So it looks like Kodi is populating textures cache completely silent and you cannot/shouldn't terminate this process by restarting Kodi or shutting it down. Sadly there is no any shown progress for this process. When database stopped growing I restarted Kodi and bingo – homescreen displayed scraped fanart like it should. So all you need to do is wait until textures are cached.

Well now I have next question. In many movies default scraped fanarts are low quality. I change them and fetch different high quality version which is showing properly in all movie library views. Problem is with skin's homescreen which will show old firstly scraped low quality fanart. Any ideas how to fix this? So how to tell Kodi to actually delete previous fanart for movie and recache newly fetched fanart.

Ostrymiecz commented 7 years ago

Any comment on this Jeroen? :)

jeroenpardon commented 7 years ago

No idea, sorry. Apart from not seeing a quality difference, this is handled by fanart grabber. I think it will scan for changes on next initialization, so when going through startup. At least, whenever I manually change fanart for an item, it will usually take a while for it to show up in the homescreen slideshow. It's not something the skin has any control over in any case.

Ostrymiecz commented 7 years ago

You misunderstood quality difference thing. I meant that sometimes quality of scraped fanart is poor because image source is poor or highly compressed and I change such pictures to other which represent better quality. Problem is the old ones stays in cache.

Ostrymiecz commented 7 years ago

I must search for some Kodi's fanart/texturecache manager. This thing is a mess in Kodi for ages.

jeroenpardon commented 7 years ago

I understood what you meant by quality difference just fine. Regardless, the reason for wanting to change the fanart is not really relevant anyway.

Ostrymiecz commented 7 years ago

Please excuse my mumbo jumbo in this topic. You were right. After a while and Kodi restart newly selected fanart is used on home screen. So it looks like triggering fanart grabber script (#136) will do the job.

I'm sorry once again.