• 1
  • 11
  • 12
  • 13(current)
  • 14
  • 15
  • 197
[RELEASE] Texture Cache Maintenance utility
(2013-06-27, 01:45)MilhouseVH Wrote: If I've misunderstood your precise setup let me know and I'll try to come up with another suggestion.

Thanks for the offer! I've got it straightened out. I have a Windows server, so I'm running the commands from there.

If you're still interested, here's my setup and the solution I came up with:

WinServer - MySQL & file host
Livingroom - OpenELEC
Bedroom - AppleTV 2

Livingroom was originally Ubuntu with the minimal install script. Mounted AppleTV to that, and it's been working great.

Now I've changed to OpenELEC, and mounting the AppleTV directory was a problem. My OpenELEC box is slightly more powerful than the AppleTV (though not by much), so I run all updates/cleans/etc on there.

The solution was to mount both OpenELEC and AppleTV user directories in Windows. Then I have a PowerShell script that kicks off every day to run the texturecache file, then update, clean, run artworkdownloader, and finally export my video library. I like my library well maintained Smile
Reply
OK great, glad you got it sorted - I do something very similar (although I don't bother exporting the library) on a remote system (R-Pi mounted over NFS + MySQL) hence why I've added much of that kind of functionality to the script! Smile

The previous post with mount commands should still be useful to anyone looking to do something similar, it took a bit of digging to work out the extra mount option is required when mounting the OpenELEC SMB shares in Linux (still no luck with FreeBSD though). Smile
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
Version 0.8.4

* Add: Added wake option to send a WOL magic packet to a suspended/hibernating remote client. Specify the MAC address of the remote client in the network.mac property (ie. network.mac=xx:xx:xx:xx:xx:xx). When the client is no longer required, suspend or hibernate again with the relevant power option.

* Fix: Remove incorrect qa/qax dependency on Textures13.db
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've got the latest version, however I seem to be getting the following errors when doing a full update:

Quote:Traceback (most recent call last):
File "./texturecache.py", line 3916, in <module>
main(sys.argv[1:])
File "./texturecache.py", line 3746, in main
if gConfig.CHECKUPDATE and not argv[0] in ["version","update"]: checkUpdate()
File "./texturecache.py", line 3664, in checkUpdate
(remoteVersion, remoteHash) = getLatestVersion()
File "./texturecache.py", line 3680, in getLatestVersion
response = urllib2.urlopen("%s/%s" % (gConfig.GITHUB, "VERSION"))
File "./Lib/urllib2.py", line 126, in urlopen
File "./Lib/urllib2.py", line 400, in open
File "./Lib/urllib2.py", line 418, in _open
File "./Lib/urllib2.py", line 378, in _call_chain
File "./Lib/urllib2.py", line 1215, in https_open
File "./Lib/urllib2.py", line 1177, in do_open
urllib2.URLError: <urlopen error [Errno -2] Name or service not known>

If the run it again, I get:

Quote:The following items could not be downloaded:
[fanart    ] [The Hobbit: T4 Premiere Special         ] image://http://cf2.imgobject.com/t/p/original/f7C4cfPTll0YMxcndLHTijmWodR.jpg/
**Loads more here**

              |    fanart   |    poster   |    TOTAL    
--------------+-------------+-------------+-------------
Cached        |      -      |      -      |      0      
Deleted       |      -      |      -      |      0      
Duplicate     |      -      |      -      |      0      
Error         |      29     |      50     |      79     
Ignored       |      -      |      -      |      0      
Skipped       |     163     |     143     |     306     
Undefined     |      -      |      -      |      0      
========================================================
TOTAL         |     192     |     193     |     385     
Download Time | 00:01:10.79 | 00:02:05.85 | 00:03:16.12 


Any ideas as it simply skips everything or errors
Reply
This would suggest an internet connectivity problem on the device you are running the script. The first error is the version check against github (possibly a DNS failure). As you didn't experience this error a second time, that would suggest the internet connection is intermittent. An inability to download artwork from the internet (when the artwork does appear to exist) would again suggest a flaky internet connection.

Can you confirm the XBMC client has a working internet connection? It might be worth checking the XBMC log for errors too, as it is XBMC that is attempting (and failing) to download the artwork.
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-06-28, 17:57)MilhouseVH Wrote: This would suggest an internet connectivity problem on the device you are running the script. The first error is the version check against github (possibly a DNS failure). As you didn't experience this error a second time, that would suggest the internet connection is intermittent. An inability to download artwork from the internet (when the artwork does appear to exist) would again suggest a flaky internet connection.

Can you confirm the XBMC client has a working internet connection? It might be worth checking the XBMC log for errors too, as it is XBMC that is attempting (and failing) to download the artwork.

Interesting.. As I was getting a similar issue when updating the library (Unable to connect to server) to pull the metadata.
Can't say it has a flaky internet connection. It's plugged straight into the router via Cat5 and can stream from YouTube etc with no issues.

Are there any ports etc that may need to be open? Saying this though, I have just moved my database to my server so I don't think this script will apply anymore?
Reply
(2013-06-28, 19:49)K20evo Wrote: Are there any ports etc that may need to be open?

No ports should need opening, communication (both the script to github.com for version/updating, and XBMC to download from remote websites) is pretty much all over http (port 80), with the occasional bit of https (port 443). So standard web browsing functionality.

It is possible that some of the remote web sites could be temporarily offline (this can include github), so best to try accessing them in a web browser and see if they're available, and try the script again later when the sites are available.

(2013-06-28, 19:49)K20evo Wrote: Saying this though, I have just moved my database to my server so I don't think this script will apply anymore?

Possibly, though if you're using a shared database, this might suggest multiple clients (one of which is likely to be your "scraper"), in which case syncing the texture cache on your non-scraper clients is made easier with this script. It's really up to you if you find a use for it or not, though. Certainly when bringing up a fresh new client that is connected to MySQL, it's a bit of a godsend. Smile
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-06-28, 19:58)MilhouseVH Wrote:
(2013-06-28, 19:49)K20evo Wrote: Are there any ports etc that may need to be open?

No ports should need opening, communication (both the script to github.com for version/updating, and XBMC to download from remote websites) is pretty much all over http (port 80), with the occasional bit of https (port 443). So standard web browsing functionality.

It is possible that some of the remote web sites could be temporarily offline (this can include github), so best to try accessing them in a web browser and see if they're available, and try the script again later when the sites are available.

(2013-06-28, 19:49)K20evo Wrote: Saying this though, I have just moved my database to my server so I don't think this script will apply anymore?

Possibly, though if you're using a shared database, this might suggest multiple clients (one of which is likely to be your "scraper"), in which case syncing the texture cache on your non-scraper clients is made easier with this script. It's really up to you if you find a use for it or not, though. Certainly when bringing up a fresh new client that is connected to MySQL, it's a bit of a godsend. Smile

Hmm I really do not know what is going on. It just seems to fail to download anything yet I've got no idea why. Pinging 8.8.8.8 gets me constant 30ms ping without and missed :/
Reply
Try pinging 8.8.8.8 - is it stable or do you see packet loss?

What about:
Code:
curl http://cf2.imgobject.com/t/p/original/f7C4cfPTll0YMxcndLHTijmWodR.jpg -o test.jpg
Any errors, if so what errors?

What OS are you running, and on what hardware? Have you tried a different ethernet cable?
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-06-28, 21:28)MilhouseVH Wrote: Try pinging 8.8.8.8 - is it stable or do you see packet loss?

What about:
Code:
curl http://cf2.imgobject.com/t/p/original/f7C4cfPTll0YMxcndLHTijmWodR.jpg -o test.jpg
Any errors, if so what errors?

What OS are you running, and on what hardware? Have you tried a different ethernet cable?

Quote:64 bytes from 8.8.8.8: seq=47 ttl=44 time=35.759 ms

--- 8.8.8.8 ping statistics ---
48 packets transmitted, 48 packets received, 0% packet loss
round-trip min/avg/max = 35.270/36.020/38.057 ms


openelec:~ # curl http://cf2.imgobject.com/t/p/original/f7...cndLHTijmW
odR.jpg -o test.jpg
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (6) Could not resolve host: cf2.imgobject.com


openelec:~ # curl http://cf2.imgobject.com/t/p/original/f7...cndLHTijmW
odR.jpg -o test.jpg
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 180k 100 180k 0 0 735k 0 --:--:-- --:--:-- --:--:-- 740k

Seems the first fails, but the 2nd is fine. I get 0% packetloss from pinging 8.8.8.8
I'm running Openelec on the Pi
Reply
It looks like a DNS problem, and I'm guessing it might be your router. I would still try a different cable though, just to rule that out.

To be honest, I'd also suggest starting a new thread in the Raspberry Pi section as someone who has experienced similar network problems may see it and respond with useful information.

Once you get your network sorted out, fingers crossed, the script will behave flawlessly (assuming you still need 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
Hi,

I'd like to run this most excellent script from another computer on my Windows network. Can I have some suggestions on how best (simplest) to do this and preferably be notified when the script has completed.

TIA
Phil
Reply
(2013-06-30, 17:45)AnotherPhil Wrote: Hi,

I'd like to run this most excellent script from another computer on my Windows network. Can I have some suggestions on how best (simplest) to do this

On Windows, you'll need to install Python 2.7.3 (or 3.3) on the PC running the script - most Linux PCs have it already or can install it with apt-get install python.

You'll need to specify the IP address (or hostname) of the remote client, this is the property xbmc.host. And the MAC address (network.mac) if you want to wake the remote client.

Depending on what action you wish to perform, you may require read/write access to the Userdata folder, the location of which is specified by the userdata property. For remote access, you may need to mount the location of the Userdata folder on the local PC. If you don't intend to perform any cache related operations (ie. you will just be querying the media library or making JSON calls) then you don't need to worry about the Userdata folder and can leave it undefined.

Assuming you configure the XBMC webserver to use port 8080 with no username/password, and don't require access to the Userdata folder, then the minimum information required by the script for remote access to a client is just the xbmc.host, ie:

Code:
texturecache.py jd movies avatar @xbmc.host=192.168.0.1

or create a file called texturecache.cfg in the same directory as the script, and specify:
Code:
xbmc.host=192.168.0.1
then run:
Code:
texturecache.py jd movies avatar

See the README for more details.

(2013-06-30, 17:45)AnotherPhil Wrote: and preferably be notified when the script has completed.

Can't really help you here - maybe send yourself an email or something? I'm sure there's software for Windows that can help you do that.
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-06-28, 21:39)MilhouseVH Wrote: It looks like a DNS problem, and I'm guessing it might be your router. I would still try a different cable though, just to rule that out.

To be honest, I'd also suggest starting a new thread in the Raspberry Pi section as someone who has experienced similar network problems may see it and respond with useful information.

Once you get your network sorted out, fingers crossed, the script will behave flawlessly (assuming you still need it!)

Everybody seems stumped. Migrated to Raspbmc but have the exact same issues, unusual to say the least, not sure where to go now xD
Reply
That leaves your router as the possible culprit, and did you try a different ethernet cable? Also, make sure you don't also have a WiFi dongle installed, even if you're not using 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
  • 1
  • 11
  • 12
  • 13(current)
  • 14
  • 15
  • 197

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