That image looks like a jpg image that was repeatedly reencoded. Normally when you scrape a movie what happens is that Kodi downloads the original from the scraper and then resizes it according to your preferences and saves that as compressed jpg thumbnail. If the thumbnail is ever lost then normally it just pulls it back from the scraper and makes a new thumbnail that is the same quality as it was previously.
If someone uses the export function with thumbnails and then reimports using that local art will get generational loss. When you export art it is pulled from the thumbnail cache, not the original source. When you re-import these image it then gets compressed again and saved to the cache. If you then export again and tell it to override the old files the cycle repeats and the quality reduces each time. To get this to degrade past the first iteration you would have to dump your cache or database however, and to get to the level of jpeg artifacts shown this would have to be repeated quite a few times.
Is there something about how your maintaining your library that might be a bit non-standard?
Cleaning your library won’t touch the cache, and like I said the normal use case only re-encodes the jpg once during the initial cache which happens immediately, and you said your issue is happening slowly over time. Are you using a external media manager, NAS with thumbnail generation turned on, or some other non stock Kodi something that might be touching artwork?
I don’t think you are quite getting the full gist of what i’m saying. To get from the original artwork to the degraded state that you posted, it can only happen in two ways. The first is saving a jpg with excessive compression applied. Kodi does not do this, and it lacks a function to force this behavior as far as i’m aware. The only other method is by repeatedly saving a jpg over and over. To get what you showed with Kodi this would have to be done at least 8 times from my testing. The stock behavior, which is no local artwork saved, is for the scraper to pull it off the internet and then cache it (so it gets compressed once). If something happens to the cached image then it just gets downloaded from the internet again and your back to the exact same quality that you started with. The only way for this to happen with just Kodi is if you export, which pulls in the degraded cached version, and then reimport from this local file (now your three generations deep), and then somehow repeat this process.
Any other possibilities would have to be coming from some external source.
I’m French and I’m trying to understand as best I can what you’re saying: smiley:
I think, like you, that it’s an internal or external application that compresses each picture several times and degrades the quality with each compression but I don’t know what does that…
When I export my data from the Media menu of OSMC, the file “Bohemian Rhapsody-poster.jpg” is stored next to “Bohemian Rhapsody.mkv” and this file is degraded compared to the scapper “the movie database” …
I just saw that the file “Bohemian Rhapsody-fanart.jpg” is not specially pixelated, strange… (The size 3840x2160 have been reducted to 1280x720 by OSMC I think, I have a 4K TV, I’ll prefered the original size but it’s an other problem )
The reduction in size is being done on purpose for performance and space considerations. You can override this to set it higher if you choose. I would not recommend 4k fanart or running your GUI in 4k either.
We recommend people with 4K TV’s set their user interface (UI) to 1080p. Kodi’s UI is not optimized for 4K yet and this can put unnecessary demands on your device and can lead to a suboptimal picture quality, as well as potentially cause other issues.
The settings we recommend are as follows…
Settings>Player>Videos>Adjust display refresh rate> On start/stop
Some televisions may also need, or benefit from, the following being set…
With the above settings your UI will be output in Full HD and your 4K content will be output in 4K. If you have any doubt, feel free to upload some logs so we can verify that your settings are indeed correct.