• 1
  • 146
  • 147
  • 148(current)
  • 149
  • 150
  • 197
[RELEASE] Texture Cache Maintenance utility
The script is GPLv2 licensed so as long as you comply with the licence, whatever you do is fine by me.

If you have any questions about script usage please post publicly in this thread.
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
(2017-04-04, 00:04)Milhouse Wrote: The script is GPLv2 licensed so as long as you comply with the licence, whatever you do is fine by me.

I have a GPLv3 on my project. How do I differentiate your script from mine and their respective licenses.
  1. Will it comply if I place a copy of your script and GPLv2 license in my project root directory with my scripts and GPLv3? or
  2. Do I place a copy of your script in its own directory with the GPLv2 license? or
If I do one of two on the list above, is there anything else I need to do to comply with the license? Please forgive me, I have no legal background, and am trying to understand the license in layman's terms.
Reply
(2017-04-04, 00:58)user11235 Wrote: I have a GPLv3 on my project. How do I differentiate your script from mine and their respective licenses.
  1. Will it comply if I place a copy of your script and GPLv2 license in my project root directory with my scripts and GPLv3? or
  2. Do I place a copy of your script in its own directory with the GPLv2 license? or
If I do one of two on the list above, is there anything else I need to do to comply with the license? Please forgive me, I have no legal background, and am trying to understand the license in layman's terms.

IANAL but often there is conflict between GPLv2 and GPLv3. However, #2 would be OK with me.
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
(2017-04-04, 01:55)Milhouse Wrote: IANAL but often there is conflict between GPLv2 and GPLv3. However, #2 would be OK with me.
Realistically, I just need KODI to display the updated .nfo information after it has been changed. I think it'd be best if I simply instructed the users of my software to install your software as a prerequisite, and then add a line of code like
Code:
os.system(python texturecache.py ........)
This will simply execute your software after the .nfo file has been updated. 1) Would that be compliant with the license? Thanks for taking the time to help me sort this out.

My software adds an empty video file as a sort of "Coming Soon..." holder file. There are generally 3 files: an empty .avi video file, a poster file, and a .nfo file with "Coming Soon - " placed before the title in the <title> block.
Code:
.../Official Event Name 100: Awesomeness/event name 100.avi
.../Official Event Name 100: Awesomeness/event name 100.nfo
.../Official Event Name 100: Awesomeness/event name 100.jpg

The .avi file is deleted and replaced by a .mp4/.mkv file of a similar but different name (matching its parent directory), and the .nfo and .jpg files get renamed to match the new .mp4/.mkv file. The "Coming Soon... " is removed in the <title> block inside the .nfo. I think running something like
Code:
python texturecache.py qax movies @qaperiod=-1 @qa.nfo.refresh=1

would work with '@qa.nfo.refresh=1' just in case the software modifies the .nfo at [23:59:59] and the texturecache is called as [00:00:00]
If no other .nfo files have been modified in since midnight the day before, only that video metadata is re-scraped. 2) Is that correct?

The reason I'm asking is because I tested something similar over the last two days, and I'm not sure if the results I am getting are the expected behavior. I added a sample video named '1234.mp4' to my library two days ago and at that time created 1234.nfo file containing
Code:
<movie>
    <title>Coming Soon... Test Movie</title>
</movie>

The video title displayed in KODI correctly as 'Coming Soon... Test Movie'. Yesterday morning [2017-04-03 11:15:15] I edited the .nfo by removing "Coming Soon... ".
Just now at [2017-04-04 00:35:42], I ran
Code:
python texturecache.py qax movies @qaperiod=-1 @qa.nfo.refresh=0
The movie title was renamed in KODI. I was expecting this file to be ignored because the .nfo was modified before midnight today 3)Is that the expected behavior?
Reply
1) I think so

2) You can probably simplify it further to this:

Code:
texturecache.py qax movies "Comming Soon..." @qaperiod=-1 @qa.nfo.refresh=1
so that only the movie with the title "Coming Soon..." is processed.

(2017-04-04, 08:39)user11235 Wrote: The video title displayed in KODI correctly as 'Coming Soon... Test Movie'. Yesterday morning [2017-04-03 11:15:15] I edited the .nfo by removing "Coming Soon... ".
Just now at [2017-04-04 00:35:42], I ran
Code:
python texturecache.py qax movies @qaperiod=-1 @qa.nfo.refresh=0
The movie title was renamed in KODI. I was expecting this file to be ignored because the .nfo was modified before midnight today 3)Is that the expected behavior?

The "qa.nfo.refresh=0" property isn't instructing the script to process only files changed since midnight, it's telling it to always reprocess those files in addition to any other movies that fail QA for other rules.

So if your movie was refreshed despite the NFO not being modified since midnight then it most likely failed QA for a reason other than the modification date of the file - the console output would have indicated the reason for refreshing the movie.

For example, if you see "FAIL (missing plot)" then it is failing QA because the plot for your "Coming Soon..." movie is blank, and you are using the default "qa.blank.movies" property which is "plot, mpaa" - thus any movie with a blank plot or mpaa rating will be refreshed. Try adding "@qa.blank.movies=title" as I think that will work and will prevent movies being refreshed due to missing plot or mpaa (assuming your movies always have a title).
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 Milhouse thank you for you work, i have one question, does this work/apply to "with Multiple sources for single movie,Stack HD,SD movies with context menu to choose" http://forum.kodi.tv/showthread.php?tid=...pid2543110 and if so can you make a tutorial on how to do it.
Reply
(2017-04-06, 17:55)aniel Wrote: hello Milhouse thank you for you work, i have one question, does this work/apply to "with Multiple sources for single movie,Stack HD,SD movies with context menu to choose" http://forum.kodi.tv/showthread.php?tid=...pid2543110 and if so can you make a tutorial on how to do it.

What functionality are you interested in? Presumably caching, in which case I don't see why it shouldn't work.
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
(2017-04-06, 22:29)Milhouse Wrote:
(2017-04-06, 17:55)aniel Wrote: hello Milhouse thank you for you work, i have one question, does this work/apply to "with Multiple sources for single movie,Stack HD,SD movies with context menu to choose" http://forum.kodi.tv/showthread.php?tid=...pid2543110 and if so can you make a tutorial on how to do it.

What functionality are you interested in? Presumably caching, in which case I don't see why it shouldn't work.

im interested on "main idea will be to add movies/ tv show from different sources (ftp, etc) to library, and combine same/duplicates movies (different quality, versions) into only one item in library, with a pop up menu allowing to chose between different quality/audio (2d, 3d, english, spanish audio etc)."

i have found this threads http://forum.kodi.tv/showthread.php?tid=217682 take a look please, aslo the developer does not have any .exe build and i dont know how to get it to work or compile it. thank you
Reply
No, this script is not a scraper.
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
(2017-04-07, 00:21)Milhouse Wrote: No, this script is not a scraper.

thank you
Reply
Hi @Milhouse

Hope you are keeping well.

I had an unfortunate incident and had to reinstall my RPi OSMC (server) and install everything fresh.

When I run ./texturecache.py sources I get this:

Code:
FATAL: The task you wish to perform requires that the JSON-RPC server is
       enabled and running on the Kodi system you wish to connect.

       In addition, ensure that the following options are ENABLED on the
       Kodi client in Settings -> Services -> Remote control:

            Allow programs on this system to control Kodi
            Allow programs on other systems to control Kodi

       A connection cannot be established to the following JSON-RPC server:
       10.0.1.120:9090

       Check settings in properties file texturecache.cfg

My cfg file looks like this:

Code:
# set a default section
section=server

cache.ignore.types=+^special://thumbnails

[server]
kodi.host=10.0.1.120
cache.ignore.types=+.*/animatedgifs/.*.gif$

#[bedroom]
#kodi.host=10.0.1.122
#cache.ignore.types=+.*/animatedgifs/.*.gif$

[TVroom]
kodi.host=10.0.1.121
# We want to ignore the animated GIFs made by Aeon MQ 7 skin

Remote control by other program on 'this system' and 'other systems' are enabled in Kodi.
Am I doing something wrong? I probably am. It was a long time ago I did this. Don't remember what the procedures are.

What is the first command I need to run after letting Kodi scanning for movies and it is done?

Would appreciate your guidance and help.

Thanks in advance.
Reply
I really don't know what to do, or am doing wrong.

Code:
osmc@SimorghOSMC:~$ ./texturecache.py c movies
Traceback (most recent call last):
  File "./texturecache.py", line 8605, in <module>
    main(sys.argv[1:])
  File "./texturecache.py", line 8305, in main
    if not checkConfig(argv[0]): sys.exit(2)
  File "./texturecache.py", line 7845, in checkConfig
    data = wcomms.sendJSON(REQUEST, "libPing", checkResult=False, useWebServer=True)
  File "./texturecache.py", line 2220, in sendJSON
    return self.sendWeb("POST", "/jsonrpc", id, request, {"Content-Type": "application/json"}, timeout=timeout)
  File "./texturecache.py", line 2167, in sendWeb
    raise httplib.HTTPException("Remote web host requires webserver.username/webserver.password properties")
httplib.HTTPException: Remote web host requires webserver.username/webserver.password properties
osmc@SimorghOSMC:~$
Reply
Regarding your first post, is your OSMC server using IP address 10.0.1.120? You'd only get that error if there is no JSON-RPC service listening on that IP address - if you've enabled this in Kodi (reboot for good measure, it might not always start when first enabled in the GUI) then double check you're using the correct IP address.

The error in your second post follows on the from the comment above... if you're sure kodi doesn't have a password configured in the GUI then double check you're connecting to the Kodi webserver on the correct IP address - you might be connecting to a different webserver entirely.
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 everyone,

I'm using the texture cache maintenance utility since a long time, but yesterday, I realized the "prune" switch (both p and P) wants to prune all my tv shows episodes thumbnails cached from thetvdb.

Then, the "c" option claims those files are missing, and redownload them.

This is not the way it was working a year ago (IIRC of course) when I wrote a script to automatically prune then cache the textures, so it took me some time to see the problem.

I did not change anything in the config file in the mean time, so I wonder if it's a new behaviour that can be solved with a new setting, or if it's a bug in the script.

Any help would be appreciated, and I'm sorry I can't tell when the issue has begun.

Thanks.

Smeulf.

My System : LibreElec 8.0.1 (Kodi 17.1) running on a RPi 2
Reply
(2017-05-06, 23:59)Smeulf Wrote: Hi everyone,

I'm using the texture cache maintenance utility since a long time, but yesterday, I realized the "prune" switch (both p and P) wants to prune all my tv shows episodes thumbnails cached from thetvdb.

Can you provide a log file (add "@logfile=/tmp/tc.log") for the "p" command - this will list what it wants to remove without removing anything and should allow me to determine why it's doing it and then we can see if it's legitimate (or a bug).

The log file may be large so if necessary zip it and upload to dropbox etc.
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
  • 146
  • 147
  • 148(current)
  • 149
  • 150
  • 197

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