Kodi Community Forum

Full Version: Artwork Not Generated During Scrape?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
For some reason, much of my artwork is not downloaded until I click on a movie for the first time. It will then download and run quickly in the future on all devices (running a mySQL database).

Then, depending on what type of view I'm using, if there's a different type of image that is used I have to get them for each movie again.

Is there a way to get all the artwork downloaded during the scrape rather than not until a movie is selected?
Artwork should be cached automatically on the client performing the scrape. However if you are using MySQL then you may have other clients that are not scraper clients, and these will only cache new artwork as it is first viewed. To avoid this, preload the cache on your non-scraper clients (see sig).
(2014-07-02, 07:16)MilhouseVH Wrote: [ -> ]Artwork should be cached automatically on the client performing the scrape. However if you are using MySQL then you may have other clients that are not scraper clients, and these will only cache new artwork as it is first viewed. To avoid this, preload the cache on your non-scraper clients (see sig).

I have all clients running XBMC have a thumbnail folder which is redirected to my NAS. My goal was to centralize all of the artwork so devices like my iphone didn't have to take up storage to locally hold the artwork.

I'm fairly confident I've set that up correctly. My problem is for instance, things like music, nothing loads up until I actually go to and click artist information and select which thumbnail and fanart I want. This only happens for some songs. Others pre load properly (except fanart hasn't loaded at all until I click it)

Movies just seem to take some time to generate the first time. Which would seem to follow suit with what you've said about being cached, but the thumbnail folder is just a linked folder directly to my unRAID NAS. I don't think they're actually being cached locally!

Any ideas?
Centralised thumbnails don't work. Each client also has a local SQLite Textures13.db that can't be shared (without the potential for corruption). Sharing only the folder of thumbnails but not the Textures13.db means each client doesn't know what artwork is already on the network meaning each client constantly re-caches artwork. Plus, the texture cache is potentially device dependent - low power devices will cache lower quality images, and may struggle to display higher quality images (re-)cached by a more powerful client.

You'll end up with a Thumbnails folder that contains a mixture of low quality artwork (created by low powered devices that look crap on higher spec clients) and higher quality artwork (created by higher spec clients that slow down your lower spec clients), making for an unpleasant experience on all your clients.
Just to show what I was referring to. My XBMC folder is only a few MB so nothing is hiding locally. It's all on the NAS.

Image

(2014-07-02, 17:39)MilhouseVH Wrote: [ -> ]Centralised thumbnails don't work.

What do you mean?
Edited earlier post to add more clarity. Thumbnail sharing is NOT a recommended practice. If you want to save space on your iPhone, sure, use path substitution to put the thumbnails on the network but don't then share those thumbs with another client, not even another iPhone.
(2014-07-02, 17:47)MilhouseVH Wrote: [ -> ]Edited earlier post to add more clarity. Thumbnail sharing is NOT a recommended practice. If you want to save space on your iPhone, sure, use path substitution to put the thumbnails on the network but don't then share those thumbs with another client, not even another iPhone.

I'm sorry, but I'm a bit confused. Thumbnail sharing is not a recommended practice, but I can store the thumbnails on NAS? So does that mean that I should create a specific thumbnail folder for each device which I don't want to store locally? If they all have their own unique db, why would it matter if they all referred to the same folder with one larger library of images which is what I'm currently doing?
(2014-07-02, 17:57)Living Legend Wrote: [ -> ]So does that mean that I should create a specific thumbnail folder for each device which I don't want to store locally?

Yes.
(2014-07-02, 17:57)Living Legend Wrote: [ -> ]If they all have their own unique db, why would it matter if they all referred to the same folder with one larger library of images which is what I'm currently doing?

If an image to be displayed is not in the local db it will be written to the cache (Thumbnails folder) before the row is added to the db. Then the cached image will be displayed.

As an example, high spec ClientA tries to display an image which is not in it's local db so a high quality image is written to the network. Then along comes low spec ClientB attempting to display the same image, also not in it's local db so it writes a low quality image to the network (overwriting the image previously written by ClientA).

The next time ClientA displays this image, it will pull the low quality image (written by ClientB) from the network/cache.

This scenario will repeat for all of your clients until they all have the same row in their local db, at which point all your clients will display the image written by the last client to cache the artwork, which may be of inappropriate quality/size for the device/client now displaying the image (based on fanartres/imageres settings).

Putting it simply, the texture cache (Thumbnails folder) is not designed for *sharing* but it is possible to relocate the folder for a single client that lacks sufficient local storage.

Don't confuse sharing with relocation. Once you start sharing a relocated Thumbnails folder, bad things are very likely to happen.
Sent you a PM.

I understand what you're saying about they're being a distinct difference between sharing and relocating.

With your example, are you stating that low res ClientB will overwrite the image rather than create a new image? I can see this being an issue if that's the case. I guess there's no way to have it not overwrite?

Back to my original question, I'm still confused as to what's happening with my scraping. The data doesn't appear to actually download until I actually select the specific movie or song. Specifically for songs and artists, their thumbnails and artwork aren't loaded until I click and actually select from the assortment of images that are there to choose from.

Is there something else I'm doing wrong?
Prefer to keep discussion public.

Yes it will overwrite. No there's no easy way to prevent it, you'd have to somehow synchronise the local databases on all your clients and this still wouldn't overcome the problem of different image quality.

A synchronised db and shared folder could (after a fashion) be made to work (sort of) if all clients were of the exact same spec, but there is no way to share a folder amongst high and low spec clients.
(2014-07-02, 18:22)MilhouseVH Wrote: [ -> ]Prefer to keep discussion public.

Yes it will overwrite. No there's no easy way to prevent it, you'd have to somehow synchronise the local databases on all your clients and this still wouldn't overcome the problem of different image quality.

Understood.

Do you have any idea what may be going on with the scraping and why the images are there but not being selected for certain files? Could this have to do with the path selection and sharing of the thumbnail folder?
So you're scraping on ClientA, and saying the images are not being downloaded into the cache by ClientA? Are you sure they're not in the cache? Query the db to see if the row is present after scraping and before you attempt to display the artwork. The script in my sig can query the db (s option).

Note: Run this on scraper ClientA only, we know all your other clients will have "issues". Smile
The problem isn't that they're not downloading, but for some reason on certain movies they will not download either a thumbnail or a fan art or some type of image until I'm actually hovered over it. Others just seem to download in the background and are ready to go the first time I access them.

As for the music, certain songs appear and other songs don't have any images at all until I actually manually select from the choices available.
Is this with stock Confluence skin, to rule out any skin bugs?
(2014-07-02, 18:41)MilhouseVH Wrote: [ -> ]Is this with stock Confluence skin, to rule out any skin bugs?

Yes, I haven't changed the skin.

To rule out that it's not something wrong I've done with thumbnail sharing I'll eliminate the code for the path change for thumbnails and drop my databases and repopulate them. They're rather small at this point so it shouldn't take too long.
Pages: 1 2