• 1
  • 108
  • 109
  • 110(current)
  • 111
  • 112
  • 197
[RELEASE] Texture Cache Maintenance utility
Try "texturecache.py c audio"
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
This is really odd, on my NFS share in the NAS directly, I deleted a TV Series completely, folder and all, nuked it out of existence and used texturecache.py to clean and prune Kodi's video database as usuall.

When texturecache.py completed I was hoping to see this completely gone in library listing under TV shows, but no, the series was still listed there and clicking it took me to some empty nothingness.

Im 100% sure this wasnt a problem before, its not the first time Ive done this.

Ive since deleted that directly via Kodi context menu in library view, but this feels like a bug I just dont know where it is (Kodi or texturecache.py) as this makes no sense to keep something thats was nuked fully.

Ubuntu 14.04LTS and Kodi v16 compiled from trunk just yesterday.
Reply
texturecache.py would just be performing a regular library clean via JSON, in theory the same as if you selected "Clean library" in the GUI, so unlikely to be texturecache.py.

Maybe this is relevant? https://github.com/xbmc/xbmc/pull/5643

If not, could be a bug in Kodi16 - try again using the GUI "Clean library" and I'd expect the same behaviour.
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 dont have such advancedsetting never have and never will have. Not to mention thats Helix PR and this only happened now recently as in last couple of weeks.

I see https://github.com/xbmc/xbmc/pull/7904 but also doesnt apply since I removed the NAS source
Reply
A debug log of the library clean (when the TV show is in the library, but the tv show folder has been removed from your NAS) might show something, although a separate thread for this discussion is probably appropriate as I'm pretty sure you should have the same behaviour when clicking "Clean Library" in the GUI as you will when using "texturecache.py vclean".
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
Hello,

I have quite a big library with a lot of external sources, I want to perform the C option (delete and recache) but can it be specified for a source ?

I've tryed :
./texturecache.py C tvshows source="TV Series2"
./texturecache.py C tvshows "TV Series 2"

But none of them works.

Or does the normal ./texturecache.py C tvshows will do the trick ? i.e. is it checking for online sources before deleting all related texturecache items ?

I am using sickrage and sometimes the .nfo of an episode is not fully available (episode summary and such) at the moment i grab it and kodi does a library update but the summary wasnt available at that time. So i need to delete completely the texturecache and reload.
Reply
(2015-09-14, 16:09)yongbi Wrote: Hello,

I have quite a big library with a lot of external sources, I want to perform the C option (delete and recache) but can it be specified for a source ?

Not for a source, but you could try selecting based on the path.

Assuming the root of your "TV Series2" source has the path "nfs://192.168.0.3/mnt/share/media/Video/TVSeries2/", then
Code:
./texturecache.py C tvshows @filter=path @filter.operator=startswith "nfs://192.168.0.3/mnt/share/media/Video/TVSeries2/"

will force re-cache those tvshows that are located on the same path.

You can view the tvshows that would be selected as follows:
Code:
./texturecache.py jd tvshows @filter=path @filter.operator=startswith "nfs://192.168.0.3/mnt/share/media/Video/TVSeries2/" @query.seasons=no | grep title

(2015-09-14, 16:09)yongbi Wrote: Or does the normal ./texturecache.py C tvshows will do the trick ? i.e. is it checking for online sources before deleting all related texturecache items ?

No, texturecache.py doesn't check for online sources before deleting cached artwork - that's a risk you need to manage.

(2015-09-14, 16:09)yongbi Wrote: I am using sickrage and sometimes the .nfo of an episode is not fully available (episode summary and such) at the moment i grab it and kodi does a library update but the summary wasnt available at that time. So i need to delete completely the texturecache and reload.

If you just want to reload episodes once the nfo has been updated, you could use the qax option telling it to refresh any episode with a recently updated nfo, eg.
Code:
./texturecache.py qax tvshows @qaperiod=9999 @qa.nfo.refresh=1
would refresh all nfo's modified since 00:00 of the day before today - a value of @qa.nfo.refresh=0 would refresh any nfo modified since 00:00 today.

The qax option will also refresh episodes when the episode thumb is missing from the library but found in the local file system (because the thumbnail wasn't available when the episode was first scraped, but has turned up a day later).

Running qax daily should fix minor issues such as updated nfos and delayed episode thumbs.
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
Nice thank you very much for all the infos and quick response. Gonna write this down in some notepad :p
For thumbnail, should i modify it to @qa.tbn.refresh ?

./texturecache.py qax tvshows @qaperiod=9999 @qa.tbn.refresh=1 ?
Reply
(2015-09-14, 16:59)yongbi Wrote: For thumbnail, should i modify it to @qa.tbn.refresh ?

./texturecache.py qax tvshows @qaperiod=9999 @qa.tbn.refresh=1 ?

No, by default it will automatically refresh episodes with missing artwork once the local image is found, this behaviour requires no extra parameters.

There is an equivalent caching refresh option, @cache.refresh, which you would use with "C" if you only wanted to re-cach recently updated artwork. For instance "C tvshows @cache.refresh=0" would only re-cache tvshow artwork updated since 00:00 - handy if you have another process such as SickRage updating artwork throughout the day.

By the way, @qaperiod is also just the number of days to consider when performing the QA - the default is 30 which would only consider tvshows and episodes added within the last 30 days. Set this value to whatever period works for you, obviously shorter periods result in faster processing (less items processed). The first time you run it you might want a longer period, then use a shorter period if you start to run it regularly (though be aware that some shows/episodes with qa "issues" might eventually "fall out" of the period if the issues remain uncorrected for long enough).
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-09-14, 15:15)Milhouse Wrote: A debug log of the library clean (when the TV show is in the library, but the tv show folder has been removed from your NAS) might show something, although a separate thread for this discussion is probably appropriate as I'm pretty sure you should have the same behaviour when clicking "Clean Library" in the GUI as you will when using "texturecache.py vclean".

See http://forum.kodi.tv/showthread.php?tid=238881
Reply
(2015-09-14, 04:11)Milhouse Wrote: Try "texturecache.py c audio"

Worked like a charm. Thank you, may the gods smile upon you.
Reply
Hi Millhouse, I have a bit of a head scratcher that you might be able to help with.

I've been getting errors lately when caching cast thumbs, but not sure why they're there. Here's one example:
Code:
[cast.thumb] [Judith Drake in Time Lapse              ]
          <td class="primary_photo">
<a href="/name/nm0236946/?ref_=tt_cl_i6"
><img height="44" width="32" alt="Judith Drake" title="Judith Drake"src="http://ia.media-imdb.com/images/G/01/imdb/images/nopicture/32x44/name-2138558783._CB379389446_.png"class="loadlate hidden " loadlate="http://ia.media-imdb.com/images/M/MV5BOTA0Njc4MTEwNl5BMl5BanBnXkFtZTcwNzk2NjAyMw@@._V1_UY44_CR3,0,32,44_AL_.jpg" /></a>          </td>
          <td class="itemprop" itemprop="actor" itemscope itemtype="http://schema.org/Person">
<a href="/name/nm0236946/?ref_=tt_cl_t6"
itemprop='url'> <span class="itemprop" itemprop="name">Judith Drake</span>
</a>          </td>
          <td class="ellipsis">
              ...
          </td>
          <td class="character">
              <div>
            Skunk Ape Wife
                  
              </div>
          </td>

Now a typical image will either show my path, example:
Code:
"art": {},
    "cast": [
      {
        "name": "Sean Penn",
        "order": 0,
        "role": "Jeff Spicoli",
        "thumbnail": "image://smb://10.0.1.2/D3/Media/Movies/Gangster Squad/.actors/Sean_Penn.jpg/"
or be blank:
Code:
"name": "Mary Elise Hayden",
        "order": 10,
        "role": "Jazz Singer"

but lately these have been popping up. I was able to remove all the ones in Movies by editing actor in MySQL and deleting the offending path. But I had a tv show that refused to rid itself of the error, continuously reporting the imdb path. Any idea why that's happening or a way to stop it from repeating. Did this happen because of running qax? Maybe your script went out and looked for it instead of using local file or reporting no local file. IDK??
Reply
(2015-09-16, 02:55)gardnerd4me Wrote: I've been getting errors lately when caching cast thumbs, but not sure why they're there. Here's one example:

I'll need a logfile. Presumably if you viewed the cast metadata for the movie Time Lapse, for the cast member Judith Drake her path (url) would be all that HTML junk - this is a scraper issue/error.

(2015-09-16, 02:55)gardnerd4me Wrote: Did this happen because of running qax? Maybe your script went out and looked for it instead of using local file or reporting no local file. IDK??

The script doesn't update any library metadata directly, nor does the qax option scrape metadata - it only analyses your existing library metadata and if it determines a problem that could potentially be fixed by refreshing (eg. missing artwork, plot etc.) it will remove the item from the library and request a Kodi library scan in order to reload the same item. If any junk metadata is being loaded as a result of qax it is being loaded by Kodi and the selected scraper, just as it would be in any normal library scan.
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
logfile: https://dl.dropboxusercontent.com/u/70301181/cscan.txt

I'm just not sure how to get rid of the problem. Even after removing the offending lines from my db,exporting library and running an nfo.refresh, they are still there. I just want to get rid of them. Wouldn't be a problem if your script didn't show me they existed, lolz
Reply
(2015-09-16, 04:30)gardnerd4me Wrote: logfile: https://dl.dropboxusercontent.com/u/70301181/cscan.txt

I'm just not sure how to get rid of the problem. Even after removing the offending lines from my db,exporting library and running an nfo.refresh, they are still there. I just want to get rid of them. Wouldn't be a problem if your script didn't show me they existed, lolz

Thanks, the error is definitely in your metadata, so exporting your library won't help as you're just exporting junk into your NFO files, which is then being re-imported.

You need to report this problem to the maintainer of whatever scraper you are using.

Unfortunately it's not possible to set (modify or remove) the artwork for cast members using JSON, so there's not anything I can even add to the script to help fix this. At some point - once your scraper is fixed - you'll need to refresh your movies and hopefully the refresh will fix the cast artwork.

In the meantime I'd just ignore the errors for now, they're unlikely to affect the operation of Kodi beyond the ability to show artwork for the affected cast members.
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
  • 1
  • 108
  • 109
  • 110(current)
  • 111
  • 112
  • 197

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