• 1
  • 172
  • 173
  • 174(current)
  • 175
  • 176
  • 197
[RELEASE] Texture Cache Maintenance utility
(2019-02-16, 21:31)Milhouse Wrote:
(2019-02-16, 20:33)bob77 Wrote: there is a "\...\" in the middle of the path of every movie which definitely should not be there.

The "\...\" is known as ellipsis and is shown when the path is very long and a portion of the path in the middle has been omitted so that the start and end may be shown.

It's a bit odd of Kodi to show three ellipsis as just one would suffice (maybe the path shortening algorithm is replacing each sub-dir with one "\...\") but the use of the ellipsis affects only the displayed path and Kodi will be using the full path (without any "\...\") behind the scenes. 
Thats what I thought initially however the area to display the path is much longer and there is no reason to display an ellipsis.
the actual path from win explorer is E:\-=Movies=-\-=Sci-Fi=-\Jurassic.World.2015.1080p.BluRay.10bit.x265.DTS-Dr3adLoX
Reply
(2019-02-16, 21:51)bob77 Wrote: Thats what I thought initially however the area to display the path is much longer and there is no reason to display an ellipsis.
the actual path from win explorer is E:\-=Movies=-\-=Sci-Fi=-\Jurassic.World.2015.1080p.BluRay.10bit.x265.DTS-Dr3adLoX

The area available to display the path may appear sufficient (depending on your GUI resolution) but the width of the label at 1400 pixels being used to output the path is clearly not making full use of the available area. By all means file a bug with the Estuary skin.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
Hi,

I have noticed that Kodi doesn't have downloaded all possible actor pictures, so I use your script  to complete this task.
The script imported 1043 new cast thumbs and skipped 5249 ones. Is it possible to force the download of the skipped one?
I used this command texturecache.py @logfile=tc2.log c movies

This is one log line
Code:
2019-02-17 09:25:31.336469:MainThread: ITEM SKIPPED: {1, "movies", "cast.thumb", "Steven Cree", "1921 - Il mistero di Rookford ", None, "https://m.media-amazon.com/images/M/MV5BMTc4NjE4MTA1MV5BMl5BanBnXkFtZTgwOTExNDc1MTE@._V1_SX1024_SY1024_.jpg", 0, None, 139, False}
 

Logs
Reply
could you please explain what each one of these does?

cache.castthumb = yes
cache.extrafanart = yes
cache.extrathumbs = yes
cache.hideallitems = yes
cache.artwork = yes
cache.videoextras = yes

I had a situation where actor thumb was ok in movie information page but all the actor thumbs were missing on the actors page (the one that lists all actors in the library). which one of the above commands causes them to go missing?
Reply
(2019-02-17, 11:40)Yuren Wrote: Hi,

I have noticed that Kodi doesn't have downloaded all possible actor pictures, so I use your script  to complete this task.
The script imported 1043 new cast thumbs and skipped 5249 ones. Is it possible to force the download of the skipped one?
I used this command texturecache.py @logfile=tc2.log c movies

This is one log line
Code:
2019-02-17 09:25:31.336469:MainThread: ITEM SKIPPED: {1, "movies", "cast.thumb", "Steven Cree", "1921 - Il mistero di Rookford ", None, "https://m.media-amazon.com/images/M/MV5BMTc4NjE4MTA1MV5BMl5BanBnXkFtZTgwOTExNDc1MTE@._V1_SX1024_SY1024_.jpg", 0, None, 139, False}
 

Logs

See https://forum.kodi.tv/showthread.php?tid...pid1661157 for an explanation of the different states.

If you have the actor "Steven Cree" in 6 movies then you will download the thumbnail once, and skip the other 5 instances. If the thumbnail is already downloaded and cached, then all 6 instances will be skipped. So no, there's no way to download the skipped instances, as there would be no point (you'd be downloading artwork that is already cached which would just be a waste of time and bandwidth).
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
(2019-02-17, 14:58)bob77 Wrote: could you please explain what each one of these does?

cache.castthumb = yes: Cache cast artwork yes/no, default no
cache.extrafanart = yes: Cache extrafanart yes/no, default no
cache.extrathumbs = yes: Cache extrathumbs yes/no, default no
cache.hideallitems = yes: If enabled, don't cache Season All artwork, default is no
cache.videoextras = yes: Cache videoextra yes/no, default no. I provided the link a few posts above.

cache.artwork is not a yes/no property, this is the list of artwork types to be cached, ie. cache.artwork=poster,fanart would cache only posters and fanart. Default is to cache all artwork.

(2019-02-17, 14:58)bob77 Wrote: I had a situation where actor thumb was ok in movie information page but all the actor thumbs were missing on the actors page (the one that lists all actors in the library). which one of the above commands causes them to go missing?

cache.artwork=yes would only cache yes artwork which obviously isn't a valid artwork type so you'd basically stop caching all artwork, this might have stopped the script caching cast thumbnails.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
Hi @Milhouse

Does the cache.extrafanart support caching of the new method of storing extrafanarts outside the extrafanarts folder instead storing inside movie folder. This allows integration into Kodi library.

There named as fanart1, fanart2 etc.

Example structure

Movie folder
-------movie.mp4
-------clearlogo.png
-------fanart.jpg
-------fanart1.jpg
-------fanart2.jpg

More info here https://kodi.wiki/view/Movie_artwork#Multiple_fanart

To support this I'm in the process of moving all my extrafanarts to the movie folder.

Not related to your script but do you know of a quick batch method to do this (move all images from extrafanart folder to previous folder). I guess need to learn of a for loop method bat file or something. I'm not that experienced in script files.


Thanks for your time
Reply
(2019-02-21, 12:56)the_bo Wrote: Does the cache.extrafanart support caching of the new method of storing extrafanarts outside the extrafanarts folder instead storing inside movie folder. This allows integration into Kodi library.

No, it currently only supports extra artwork in the /extrafanart subdirectory.

(2019-02-21, 12:56)the_bo Wrote: Not related to your script but do you know of a quick batch method to do this (move all images from extrafanart folder to previous folder). I guess need to learn of a for loop method bat file or something. I'm not that experienced in script files.

I'm afraid I do not - it should be possible with a small script.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
I'm about to upgrade my Krypton MySQL setup to Leia. I use a LibreELEC VM for library updates and the clients run LibreELEC or OSMC.

For upgrades I usually export the library to separate files in Kodi before upgrading Kodi, and then I do a library update with a fresh database after updating Kodi.

However after reading here, it appears that this is not ideal, because the artwork gets re-compressed and degraded each time the library is exported.

I have performed 3 upgrades this way and I have noticed a reduction in artwork quality of existing entries in the library.

How can I leverage this tool to export my chosen artwork at full quality, bearing in mind that I have already selected non-default artwork for many movies through the Kodi UI (the basic artwork selector in the Aeon Nox Silvo skin)?

Does the mklocal.py script locally save the artwork that I have chosen, or does it save the default artwork that is scraped after a library scan?

Thanks in advance
Reply
(2019-03-01, 18:48)hugepants Wrote: Does the mklocal.py script locally save the artwork that I have chosen, or does it save the default artwork that is scraped after a library scan?

It locally saves the artwork you have chosen, ie. the artwork which is referenced by your media library. mklocal.py will save the full quality artwork so long as it's still available - if the original artwork is remote and no longer available then mklocal.py won't be able to download the full quality artwork and you can optionally have it unset the missing artwork (so that a tool such as Artwork Downloader can subsequently associate new artwork which you can then save locally in full quality), or you can resort to manually exporting the cached version of the artwork that cannot be downloaded.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
I'm having an issue with the mklocal.py script. It worked on my tvshows, but fails on my movies.

user@computer ~/s/m/texturecache>./texturecache.py jd movies | ./tools/mklocal.py --local / --prefix / --artwork fanart poster --output ./fixup.dat

Traceback (most recent call last):
  File "./tools/mklocal.py", line 872, in <module>
    main(init())
  File "./tools/mklocal.py", line 855, in main
    workitem = processItem(args, mediatype, media, download_items)
  File "./tools/mklocal.py", line 417, in processItem
    newname = processArtwork(args, mediatype, media, mediatitle, artitem["type"], mediafile, oldname, artpath_m, artpath_s, is_excess=False)
  File "./tools/mklocal.py", line 498, in processArtwork
    fname = pathToXBMC(getImage(args, mediatype, media, title, atype, filename, currentname, target))
  File "./tools/mklocal.py", line 543, in getImage
    shutil.copyfile(newsource, target)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 97, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 13] Permission denied: '/Volumes/w-fanart.jpg'

There is no file at /Volumes/w-fanart.jpg. I set all the permissions to 777 on my media drives just to make sure it wasn't a permissions issue.

Running MacOS 10.13.6


edit: Ok. I was able to get passed the error by running as su. And I did end up with those two files at /Volumes. But it seems strange. The errored files are not located at that path. They are located at: 

/Volumes/wd.4tb.1/Movies/Jungle.2.Jungle.1997.DVD-Rip/
331411 bytes - fanart - Jungle 2 Jungle -> /Volumes/w-fanart.jpg
600736 bytes - poster - Jungle 2 Jungle -> /Volumes/w-poster.jpg

I then manually moved the files to the correct place. Also fixed the permissions on the files I had to run with su. Then reimport the mixup.dat.
Reply
As I said on your github issue, I'll need a logfile to investigate further.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
Would it be possible to add a "resume" argument to the "play" function? I've been trying to make some voice activated commands leveraging texturecache.py, but my favorite one - where you can tell Kodi to play a specific movie through a voice command, will only start a movie at the beginning. Thanks!
Reply
(2019-03-05, 14:12)desepticon Wrote: Would it be possible to add a "resume" argument to the "play" function? I've been trying to make some voice activated commands leveraging texturecache.py, but my favorite one - where you can tell Kodi to play a specific movie through a voice command, will only start a movie at the beginning. Thanks!

Not possible as the JSON "Player.Open" method doesn't respect a stored resume point. The option to start from the beginning, a stored resume point (or maybe an arbitrary timecode) would need to be added to the "Player.Open" JSON method, via the Kodi Forum "Feature Request" process.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
(2019-03-06, 07:23)Milhouse Wrote: ...via the Kodi Forum "Feature Request" process. 
 ...done. I hope they add it.
Reply
  • 1
  • 172
  • 173
  • 174(current)
  • 175
  • 176
  • 197

Logout Mark Read Team Forum Stats Members Help
[RELEASE] Texture Cache Maintenance utility17