• 1
  • 83
  • 84
  • 85(current)
  • 86
  • 87
  • 197
[RELEASE] Texture Cache Maintenance utility
yes I restart the HTPC many times Sad
Reply
(2015-01-22, 02:07)Milhouse Wrote: The problem is your AFTV is running an old version of XBMC, that doesn't support the Textures JSON API. Without the JSON API, which provides remote access to the texture cache, the script is forced to directly access the userdata folder of the AFTV. Since you're running the script on Windows, that's never going to work, as Windows can't mount the AFTV SD card.

Your best option is to run the script directly on the AFTV, so that the script has direct access to userdata, or upgrade the AFTV to Helix which does support the Textures JSON API.

Thank you! I installed Helix on one of the AFTVs and all is well.

I'll play with the other one to see if I can figure out how to run the script directly on the AFTV.
Reply
(2015-01-22, 22:52)willynuisance Wrote: yes I restart the HTPC many times Sad

In that case, the only other reason would be that localhost isn't running Kodi. Try setting xbmc.host with the IP address of the PC running Kodi.
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
Sorry if this is obvious.

How can you do a "qa" and "qax" of all time (is it just a matter of setting a huge qaperiod = 999999?)

Also how can I exclude "mpaa" from being a trigger for a "qax" based refresh (as there are loads of them and rarely does a qax fix them as upstream doesnt get updated).
Having problems getting your TV shows recognized?

Try my extra TV show matching REGEX here
Reply
(2015-01-23, 19:42)xexe Wrote: (is it just a matter of setting a huge qaperiod = 999999?)

Yes.

(2015-01-23, 19:42)xexe Wrote: Also how can I exclude "mpaa" from being a trigger for a "qax" based refresh

The default fields for "qa.blank.movies" are "plot, mpaa", so use "@qa.blank.movies=plot" and only movies with a blank (empty) plot will be flagged up by qa/qax.

Or "@qa.blank.movies=plot, ?mpaa" would result in qax treating mpaa as a warning rather than a fail (a fail causes a refresh, a warning just outputs a message).
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
First I just want to say thanks Milhouse for this awesome tool.

I'm running a Windows 8.1 server with a MySQL database, and then I have two Raspberry Pi's with OpenELEC.

Your tool is working great when I run it manually, but I would like to run it automatically each day. How would I archive this? I think I would make a cmd.exe or powershell script, with PuTTY command-line arguments, and make it a Scheduled Task, but I'm not sure how to put everything together.

Basically, I need to run the first two commands on my server, and then I need to ssh into each Raspberry Pi and run the third and fourth command.

./texturecache.py qa # On server. Perform QA check on media library recently added items, identifying missing properties (eg. plot, mpaa certificate, artwork etc.). Default QA period is previous 30 days
./texturecache.py vscan # On server. Initiate audio/video library scan, either entire library or a specific path (see sources).
./texturecache.py c movies # On Raspberry Pi's. Automatically cache missing movie artwork.
./texturecache.py c tvshows # On Raspberry Pi's. Automatically cache missing tvshows artwork.
Reply
You should be able to schedule a cmd script on the Windows PC using "at".

You don't need PuTTY for this, just configure the script to run on the Windows PC, connecting to the remote Raspberry Pi host (eg. @xbmc.host=192.168.0.8).

Or add named sections to your texturecache.cfg file and reference each section when running the script, eg:

Code:
# values common to all sections go in here...
#qaperiod=9999
#allow.recacheall=yes

[pi1]
xbmc.host=192.168.0.8

[pi2]
xbmc.host=192.168.0.9

then:
Code:
texturecache.py @section=pi1 qa
texturecache.py @section=pi1 vscan

texturecache.py @section=pi1 c movies
texturecache.py @section=pi1 c tvshows

texturecache.py @section=pi2 c movies
texturecache.py @section=pi2 c tvshows

You can run all of the above options remotely, on your Windows server.
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
(2015-01-23, 20:02)Milhouse Wrote:
(2015-01-23, 19:42)xexe Wrote: (is it just a matter of setting a huge qaperiod = 999999?)

Yes.

(2015-01-23, 19:42)xexe Wrote: Also how can I exclude "mpaa" from being a trigger for a "qax" based refresh

The default fields for "qa.blank.movies" are "plot, mpaa", so use "@qa.blank.movies=plot" and only movies with a blank (empty) plot will be flagged up by qa/qax.

Or "@qa.blank.movies=plot, ?mpaa" would result in qax treating mpaa as a warning rather than a fail (a fail causes a refresh, a warning just outputs a message).

That is brilliant thank you, works perfectly.
Having problems getting your TV shows recognized?

Try my extra TV show matching REGEX here
Reply
I am trying to debug what is going wrong here or if it just an understanding fail on by behalf. I am running headless within docker so if something is indeed goign wrong thats likely the source.

But just to confirm nc, c then nc should show a drop in required cache and not what I am seeing as follows:

Quote:./texturecache.py nc movies

Cache pre-load activity summary for "movies":

| fanart | poster | thumb | TOTAL
--------------+-------------+-------------+-------------+-------------
Cached | - | - | - | 0
Deleted | - | - | - | 0
Duplicate | 197 | 202 | - | 399
Error | - | - | - | 0
Ignored | - | - | - | 0
Not in Cache | 180 | 222 | - | 402
Skipped | 3917 | 4155 | 1 | 8073
Undefined | - | - | - | 0
======================================================================
TOTAL | 4294 | 4579 | 1 | 8874

Loading: 00:00:03.51
Parsing: 00:00:00.28
Comparing: 00:00:07.57
TOTAL RUNTIME: 00:00:11.39

./texturecache.py c movies
...
Need to cache: [ fanart ] for movie: Charlie Zone
Need to cache: [ poster ] for movie: Charlie Zone
...and many more! (First 100 items shown)

Caching artwork: 0 items remaining of 402 (qs: 0, qm: 0), 0 errors, 0 threads active (02.86 downloads per second, ETA: 00:00:00)

Cache pre-load activity summary for "movies":

| fanart | poster | thumb | TOTAL
--------------+-------------+-------------+-------------+-------------
Cached | 180 | 222 | - | 402
Deleted | - | - | - | 0
Duplicate | 197 | 202 | - | 399
Error | - | - | - | 0
Ignored | - | - | - | 0
Skipped | 3917 | 4155 | 1 | 8073
Undefined | - | - | - | 0
======================================================================
TOTAL | 4294 | 4579 | 1 | 8874
Download Time | 00:00:46.03 | 00:01:05.16 | - | 00:01:50.86

Threads Used: 2
Min/Avg/Max: 0.48 / 2.68 / 7.91

Loading: 00:00:03.03
Parsing: 00:00:00.28
Comparing: 00:00:07.76
Downloading: 00:01:51.11
TOTAL RUNTIME: 00:02:02.21

Cache pre-load activity summary for "movies":

| fanart | poster | thumb | TOTAL
--------------+-------------+-------------+-------------+-------------
Cached | - | - | - | 0
Deleted | - | - | - | 0
Duplicate | 197 | 202 | - | 399
Error | - | - | - | 0
Ignored | - | - | - | 0
Not in Cache | 180 | 222 | - | 402
Skipped | 3917 | 4155 | 1 | 8073
Undefined | - | - | - | 0
======================================================================
TOTAL | 4294 | 4579 | 1 | 8874

Loading: 00:00:03.12
Parsing: 00:00:00.28
Comparing: 00:00:07.93
TOTAL RUNTIME: 00:00:11.36
Having problems getting your TV shows recognized?

Try my extra TV show matching REGEX here
Reply
Impossible to say without a logfile. Unusual, though. Check for errors on the Kodi client (in kodi.log), maybe it's got some sort of problem writing to the local SQLite db or filesystem.
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
Very useful script, thanks!

Unfortunately I cannot seem to figure out the problem I am having.
I moved files about a while back. Updated library, cleaned library, cleaned up all my sources, media sources, passwords, etc in xbmc, but was seeing DB errors in the textures db, so trashed it, the thumbnails folder, and tried to rebuild. Ended up missing a lot of TV Banners. Discovered this script and thought my problem would be solved, but have tried running it with various options and I just get errors trying to recache most of the banners, namely that it tries to download them from a non-existent path.

Code:
The following items could not be downloaded:

[thumb     ] [Modern Family                           ] smb://192.168.79.119/Storage/Videos/TV/Modern Family/folder.jpg
[fanart    ] [Modern Family                           ] smb://192.168.79.119/Storage/Videos/TV/Modern Family/fanart.jpg

It is pulling episode art from the correct path as evidence by using the s option
Code:
003322|d/d3629323.jpg|0225|0400|0001|2015-01-25 22:47:17|2015-01-25 14:47:15|smb://192.168.79.119/threeterra/TV/Modern Family/Season 06/Modern Family S06E11 HD TV.tbn
003324|d/dd5606a6.jpg|0225|0400|0001|2015-01-25 22:47:22|2015-01-25 14:47:22|smb://192.168.79.119/threeterra/TV/Modern Family/Season 06/Modern Family S06E12 HD TV.tbn
Matching row ids: 3322 3324

So I have no idea where it is getting the old obsolete path or why it insists on using it to try and cache the banners and fan art.

Is there a certain option I can run the script with to get rid of that path and get it to pull it from the folder where the TV show actually is located?
Reply
The non-existent path is in your media library.

Run:
Code:
texturecache.py jd tvshows "modern family"
and you'll see the artwork paths associated with this show, some of which will refer to your non-existent path, smb://192.168.79.119/Storage/etc.

You need to fix your media library, and replace the non-existent paths with the correct path.

You can do this manually in the GUI with "Choose art..." from the context menu, or do it automatically using mklocal.py (see previous posts for details).
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
(2015-01-26, 04:08)Milhouse Wrote: The non-existent path is in your media library.

Run:
Code:
texturecache.py jd tvshows "modern family"
and you'll see the artwork paths associated with this show, some of which will refer to your non-existent path, smb://192.168.79.119/Storage/etc.

You need to fix your media library, and replace the non-existent paths with the correct path.

You can do this manually in the GUI with "Choose art..." from the context menu, or do it automatically using mklocal.py (see previous posts for details).

Thanks, I finally found it with the jd, and managed to manually set the path, but that would take a long time to do one by one. I thought maybe I could just remove and rescan with qa, but couldn't seem to get qa qa.art.tvshows.tvshow to not throw errors. I'll check out mklocal.py and see if I can get that to fix all the paths.
Reply
Yes, qax doesn't check if the artwork file actually exists, to fix such problems would require removing and re-scanning the entire tvshow which is not the best thing to do. mklocal.py should fix your media library without any removal or re-scanning.
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
(2015-01-25, 22:07)Milhouse Wrote: Impossible to say without a logfile. Unusual, though. Check for errors on the Kodi client (in kodi.log), maybe it's got some sort of problem writing to the local SQLite db or filesystem.

Nothing obvious in the logs so i setup a non docker non headless instance and it worked first time so it looks like it is either headless or docker that is at fault here.

Cheers
Having problems getting your TV shows recognized?

Try my extra TV show matching REGEX here
Reply
  • 1
  • 83
  • 84
  • 85(current)
  • 86
  • 87
  • 197

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