• 1
  • 30
  • 31
  • 32(current)
  • 33
  • 34
  • 197
[RELEASE] Texture Cache Maintenance utility
First of all, thanks very much for this script. Awesome work, it makes using the Pi much more fun Smile

But, I've got a few problems for quite some days now. I'm very bad in understanding code ^^, so can someone tell me, what this might mean?

Quote:Caching artwork: 0 items remaining of 2 (qs: 0, qm: 0), 0 errors, 1 thread active (10.40 downloads per second, ETA: 00:00:00)
/usr/lib/python2.7/urllib.py:1268: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
Traceback (most recent call last):
File "./texturecache.py", line 5201, in <module>
main(sys.argv[1:])
File "./texturecache.py", line 5083, in main
extraFields=_extraFields, query=_query)
File "./texturecache.py", line 2652, in jsonQuery
cacheImages(mediatype, jcomms, database, data, title_name, id_name, force, nodownload)
File "./texturecache.py", line 2691, in cacheImages
parseURLData(jcomms, mediatype, mediaitems, imagecache, data, title_name, id_name)
File "./texturecache.py", line 2940, in parseURLData
parseURLData(jcomms, "seasons", mediaitems, imagecache, item["seasons"], "label", "season", showName=title)
File "./texturecache.py", line 2921, in parseURLData
(poster_url, fanart_url, banner_url) = jcomms.getSeasonAll(item["art"]["poster"])
File "./texturecache.py", line 1449, in getSeasonAll
if fname.startswith("season-all-poster."): poster_url = "image://%s%s" % (urllib2.quote(f["file"], "()"),ADD_BACK)
File "./Lib/urllib.py", line 1268, in quote
KeyError: u'\xfc'

Thanks very much!!!
Reply
@psuch: It's an error due to a foreign character in a directory path, which I'm not handling correctly.

Is there any way you can send me your /storage/.xbmc/userdata/Database/MyVideo7*.db (the last digit will vary depending on the build of XBMC you are using). Failing that, if you enable @logfile=/tmp/tc.log on the command line and run the script again, then send me the /tmp/tc.log file I may be able to reproduce and provide a fix.

Edit: Actually even if you are able to send me your MyVideo7*.db file, including the log as well would be most helpful.

Edit2: I've mocked up some test data that seems to be reproducing this error, if you can send me your data that would be great if not I will hopefully have an update later tonight (assuming there's a solution...)
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
@psuch: Give this version a try, let me know if it fixes the problem.

texturecache.py (Version 1.0.8):
  • Fix: Avoid using urllib2.quote() in getSeasonAll processing, which could fail with foreign codings
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
Its working again. Thank you very much Smile

Awesome response time. You sir, are awesome!!
Reply
(2013-11-10, 19:37)MilhouseVH Wrote: Yeah, I realise that which is why darwin devices will only use the ATV2 path if it exists (does that path exist for MacOSX?) otherwise MacOSX will use the default path (~/.xbmc/userdata), so hopfeully MacOSX users should see no change. I've no idea what the default installation path is for MacOSX, if anyone wants to let me know I'll add it in future...
default paths by platform are given here.

It says:

/Users/<your_user_name>/Library/Application Support/XBMC/userdata/

But that can be shortened to:

~/Library/Application Support/XBMC/userdata/

MilhouseVH Wrote:That's why I added the purgetest option…
True but I got over confident there when adding a long list. Took me a couple hours to fix. ☺ My fault, not yours, of course. Still I think perhaps a 3 character minimum would be a reasonable default. ☺
Reply
Thanks ctawn.

texturecache.py (Version 1.0.9):
  • Add: Mac OS X and Android userdata defaults
  • Chg: Restrict pattern length (excluding wildcards) on purge/purgetest to minimum length of 5 characters (override with @Purge.minlen=n, value of zero will disable).

    Specify purge/purgetest wildcards using %, ie. pattern% for startswith, or %pattern for endswith, otherwise pattern will be interpreted as %pattern% (contains).
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
texturecache.py (Version 1.1.0):
  • Add: imdb movies [filter] option to update a subset of imdb related fields on movies, all or filtered. Uses imdbnumber from the media library to query http://www.omdbapi.com. Specify the fields to be updated using the property @imdb.fields, the default fields being rating and votes. Available fields are: title, year, runtime, genre, plot, plotoutline, rating and votes.

    Output should be piped into set for the changes to be applied to the media library. For example, to update ratings, votes and also year on Avatar:

    ./texturecache.py imdb movies avatar @imdb.fields=+year | ./texturecache.py set

    Only if one or more fields requires updating will a work item be output for each movie. Old and new values will be written to the logfile for each workitem.
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, quick question, i have had the annoying issue that updating poster images for movies IN a movie collection does NOT refresh the movie collection poster, i think this used to work but for some reason now doesn't. so my question is does this script have the ability to refresh movie colleciton poster images to use the first movie in the collection?.

many thanks,
binhex.
Reply
(2013-11-18, 12:02)binhex01 Wrote: hi, quick question, i have had the annoying issue that updating poster images for movies IN a movie collection does NOT refresh the movie collection poster, i think this used to work but for some reason now doesn't. so my question is does this script have the ability to refresh movie colleciton poster images to use the first movie in the collection?.

many thanks,
binhex.

Yes, the script can refresh movie set artwork (eg. "c sets", or to force a re-cache "C sets"). Add the name of the movie set if you want to refresh specific sets.

However changing (or refreshing) the artwork for one of the movies in the set has never resulted in the set artwork being automatically updated - it may be the case that the set artwork would update several days later once XBMC recognised the hash of the set artwork is out of date, but other than that there is no mechanism to automatically refresh set artwork whenever the artwork of a set member is changed.

You might also be interested in the Movie Set Artwork Automator.
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
fantastic!, thanks MilhouseVH, i shall give the script a whirl tonight, odd that you say it never updated the set artwork, i could of sworn it used to, i must be going mad :-).
Reply
(2013-11-18, 12:25)binhex01 Wrote: odd that you say it never updated the set artwork, i could of sworn it used to, i must be going mad :-).

A change to the movie wouldn't update the set directly, however if the set is "sharing" the artwork of one of the movies (there will be a single texture cache entry used by both the movie and the set) then whenever you update that movie artwork the set should start to show the new movie artwork (eventually). This would only work as long as you replaced the shared movie artwork while keeping the exact same filename - if you were to rename the movie artwork, the set would still be referring to the old (and now non-existent) artwork. So changing the movie artwork may have appeared to update the set, and may still do so, but it's really a side effect of the sharing.
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
thanks again MilhouseVH for the info regards how the movie set artwork functions, very useful.
Reply
Is there any tutorials for how this works?
Reply
Only the first post in this thread, it covers much of the basic functionality. Should be pretty straightforward if you are comfortable with a command line. If you still don't understand something specific, ask and I'll try my best to answer it.
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
(2013-11-19, 01:29)MilhouseVH Wrote: Only the first post in this thread, it covers much of the basic functionality. Should be pretty straightforward if you are comfortable with a command line. If you still don't understand something specific, ask and I'll try my best to answer it.


the only experience I have with python is using it to run headphones for music. I'm not sure how to get it running. I've opened texturecache.cfg with python but a window only opens for a few seconds.
my main machine that holds myqsl loads all thumbs instant. my other PCs loads slow and some thumbs don't load at all. my htpc is an a6 apu with an ssd and 8GB of ram. I don't think it should be as slow as it is. Will this script solve this?
I have a large library of media.
Reply
  • 1
  • 30
  • 31
  • 32(current)
  • 33
  • 34
  • 197

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