[RELEASE] Movie Set Artwork Automator

  Thread Rating:
  • 3 Votes - 4.67 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
Tomkun Offline
Fan
Posts: 576
Joined: Jul 2004
Reputation: 4
Location: Japan
Post: #16
I tried uninstalling/reinstalling, but to no avail; get this though:

Code:
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - ------------------------------------------------------------
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Processing movie set: Jurassic Park Series
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - ------------------------------------------------------------
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Existing cached thumb: D:\Home Theatre\XBMC\portable_data\userdata\Thumbnails\Video\a\ad882f00.tbn
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Existing fanart: D:\Home Theatre\XBMC\portable_data\userdata\Thumbnails\Video\Fanart\ad882f00.tbn
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Processing movie: Jurassic Park
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Processing movie: Jurassic Park III
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Processing movie: The Lost World Jurassic Park
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Possible thumbnails: [u'D:\\Movies\\- Sets -\\Jurassic Park\\poster.jpg']
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Selected thumbnail: D:\Movies\- Sets -\Jurassic Park\poster.jpg
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Updating video database
                                            Set: 18
                                            Artwork: thumb
                                            File: D:\Movies\- Sets -\Jurassic Park\poster.jpg
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Possible fanart: [u'D:\\Movies\\- Sets -\\Jurassic Park\\fanart.jpg']
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Selected fanart: D:\Movies\- Sets -\Jurassic Park\fanart.jpg
21:52:01 T:1476   DEBUG: [Movie Set Artwork Automator (Frodo)] - Updating video database
                                            Set: 18
                                            Artwork: fanart
                                            File: D:\Movies\- Sets -\Jurassic Park\fanart.jpg

The script is finding the poster just fine and even updating the database, or so it says - however when I open up the sets view, they are still using the old posters.
find quote
trentf Offline
Member
Posts: 59
Joined: Jan 2013
Reputation: 5
Location: Australia
Post: #17
Ok, it may be that the new thumbnail caching system in Frodo isn't 100% reliable (and I just got lucky in my testing, you didn't), and the script should still overwrite the thumbnail cache files as well as updating the video database.

Could you try removing the example thumbnail files (D:\Home Theatre\XBMC\portable_data\userdata\Thumbnails\Video\a\ad882f00.tbn and D:\Home Theatre\XBMC\portable_data\userdata\Thumbnails\Video\Fanart\ad882f00.tbn), restart XBMC and see if the new poster appears?

If it does, I will update the script to overwrite those files. If it still doesn't work, i might need to remove the reference to the image filename from the texture cache db.
find quote
saitoh183 Offline
Posting Freak
Posts: 959
Joined: Jul 2011
Reputation: 15
Location: Canada
Post: #18
Happy to see a addon to handle movie sets (most manager handle only grouping of movies but not the changing of fanart since its only by editing the DB directly. I wanted to know if i could use this addon if my setup doesnt contain a "Set" folder. All my movies are just under Movies ...ie : ...\Movies\<movie name>\<movie name>.mkv

I just let xbmc group them up (via set tag) but i dont actually group them up in my Movie folder. From what i noticed in your both examples movies are in a set folder in both possible configurations.

[Image: watched-clearlogo.jpg]

If my replies help you, please click on my reputation [Image: rep_xbmc.JPG] below :) thanks :)
find quote
Tomkun Offline
Fan
Posts: 576
Joined: Jul 2004
Reputation: 4
Location: Japan
Post: #19
(2013-01-30 01:03)saitoh183 Wrote:  Happy to see a addon to handle movie sets (most manager handle only grouping of movies but not the changing of fanart since its only by editing the DB directly. I wanted to know if i could use this addon if my setup doesnt contain a "Set" folder. All my movies are just under Movies ...ie : ...\Movies\<movie name>\<movie name>.mkv

I just let xbmc group them up (via set tag) but i dont actually group them up in my Movie folder. From what i noticed in your both examples movies are in a set folder in both possible configurations.

I think you can if you use the separate folder option and name the files <movieset>-fanart.jpg and <movieset>-poster.jpg.
find quote
trentf Offline
Member
Posts: 59
Joined: Jan 2013
Reputation: 5
Location: Australia
Post: #20
(2013-01-30 01:03)saitoh183 Wrote:  Happy to see a addon to handle movie sets (most manager handle only grouping of movies but not the changing of fanart since its only by editing the DB directly. I wanted to know if i could use this addon if my setup doesnt contain a "Set" folder. All my movies are just under Movies ...ie : ...\Movies\<movie name>\<movie name>.mkv

I just let xbmc group them up (via set tag) but i dont actually group them up in my Movie folder. From what i noticed in your both examples movies are in a set folder in both possible configurations.

Tomkun is correct, you can leave your movies all at the same level and just define an artwork folder where the files are prefixed with the set names used in the nfo files.
find quote
saitoh183 Offline
Posting Freak
Posts: 959
Joined: Jul 2011
Reputation: 15
Location: Canada
Post: #21
(2013-01-30 01:48)trentf Wrote:  
(2013-01-30 01:03)saitoh183 Wrote:  Happy to see a addon to handle movie sets (most manager handle only grouping of movies but not the changing of fanart since its only by editing the DB directly. I wanted to know if i could use this addon if my setup doesnt contain a "Set" folder. All my movies are just under Movies ...ie : ...\Movies\<movie name>\<movie name>.mkv

I just let xbmc group them up (via set tag) but i dont actually group them up in my Movie folder. From what i noticed in your both examples movies are in a set folder in both possible configurations.

Tomkun is correct, you can leave your movies all at the same level and just define an artwork folder where the files are prefixed with the set names used in the nfo files.

I will give it a try...does it handle special characters? like Mission Impossible Collection...in the nfo its Mission: Impossible Collection(like TMDB) but you cant put ":" in a file name
Also does it support recursive scan of artwork like

...\Movieset artwork\poster\...
...\Movieset artwork\fanart\....

***Edit** gave it a first run with everything in a folder Movieset and got 0 updated...the format for the file name is <set name>-poster.jpg?

[Image: watched-clearlogo.jpg]

If my replies help you, please click on my reputation [Image: rep_xbmc.JPG] below :) thanks :)
(This post was last modified: 2013-01-30 03:38 by saitoh183.)
find quote
trentf Offline
Member
Posts: 59
Joined: Jan 2013
Reputation: 5
Location: Australia
Post: #22
Thanks for the feedback. I don't actually use the single artwork folder (I just added it as I though it might be useful for others), so i haven't tested it with a lot of set names.

You have raised a couple issues.

Firstly, there is no special handling for filename illegal characters at the moment. How would you like it handled? Should the script:
- Drop any illegal chars (from all supported OSes) from the name. Eg "Mission: Impossible Collection" -> Mission Impossible Collection" ?
- Use an encoding so there are no potential clashes. Eg URL encode the name "Mission: Impossible Collection" -> "Mission%3A%20Impossible%20Collection" or all but space char "Mission%3A Impossible Collection"
- Other?

Secondly, the artwork folder is not scanned recursively. So you can't have poster and fanart sub folders. If you want this feature, let me know.
find quote
saitoh183 Offline
Posting Freak
Posts: 959
Joined: Jul 2011
Reputation: 15
Location: Canada
Post: #23
For illegal character, it depends on how you treat the name from the nfo file. Stripping and replacing with a space would be the better choice since most people will just remove the illegal character and leave a space since most of the time it most likely will be ":".

For the recursive it could be good to have for people that want to keep things separated but under the same parent folder.

What about how i should name the file in the settings so it scans <set name>-poster.jpg/fanart.jpg .

[Image: watched-clearlogo.jpg]

If my replies help you, please click on my reputation [Image: rep_xbmc.JPG] below :) thanks :)
find quote
trentf Offline
Member
Posts: 59
Joined: Jan 2013
Reputation: 5
Location: Australia
Post: #24
(2013-01-30 04:55)saitoh183 Wrote:  For illegal character, it depends on how you treat the name from the nfo file. Stripping and replacing with a space would be the better choice since most people will just remove the illegal character and leave a space since most of the time it most likely will be ":".

For the recursive it could be good to have for people that want to keep things separated but under the same parent folder.

What about how i should name the file in the settings so it scans <set name>-poster.jpg/fanart.jpg .

Ok, I will change it to just drop illegal chars for now. Since as you say, it will most likely be ':' for ASCII names. As for international users with unicode names, not sure what to do about that. Perhaps they can use common folder mode instead ;-)

The script already applies the settings configured filenames for both modes, so it should already be checking for <set name>-poster.jpg if you have thumbnails set as poster.jpg. I tested this yesterday and it was working. Are you sure set name matches exactly and the artwork folder contains it at top level? If so, send me the log.
find quote
Tomkun Offline
Fan
Posts: 576
Joined: Jul 2004
Reputation: 4
Location: Japan
Post: #25
(2013-01-30 05:18)trentf Wrote:  
(2013-01-30 04:55)saitoh183 Wrote:  For illegal character, it depends on how you treat the name from the nfo file. Stripping and replacing with a space would be the better choice since most people will just remove the illegal character and leave a space since most of the time it most likely will be ":".

For the recursive it could be good to have for people that want to keep things separated but under the same parent folder.

What about how i should name the file in the settings so it scans <set name>-poster.jpg/fanart.jpg .

Ok, I will change it to just drop illegal chars for now. Since as you say, it will most likely be ':' for ASCII names. As for international users with unicode names, not sure what to do about that. Perhaps they can use common folder mode instead ;-)

The script already applies the settings configured filenames for both modes, so it should already be checking for <set name>-poster.jpg if you have thumbnails set as poster.jpg. I tested this yesterday and it was working. Are you sure set name matches exactly and the artwork folder contains it at top level? If so, send me the log.

Another case would be to change a colon ':' to a dash '-', because I have seen that used a lot too.
find quote
trentf Offline
Member
Posts: 59
Joined: Jan 2013
Reputation: 5
Location: Australia
Post: #26
(2013-01-30 05:28)Tomkun Wrote:  Another case would be to change a colon ':' to a dash '-', because I have seen that used a lot too.

I think converting one char to another might be confusing and then more people might wonder why it isn't finding their artwork. For now i think a simple regexp to strip anything that isn't alphanumeric, brackets, dash/underscore or space might be enough - s/[^a-zA-Z0-9()_ -]//g

If i get time I might add more lenient file existance checking. Rather than ask the OS if a file exists, do a file listing and apply the same regexp to files found, so that even if a set name uses ':' and the fanart filename uses '-', both would be stripped so a match would still be found on the name itself.

TODO list when I get home:
- Add thumbnail cache update (if Tomkun confirms problem)
- Add recursive search of artwork dir
- Strip illegal chars from set name when looking for artwork
- Add more logging about which files are being checked, for easier debugging of problems
find quote
saitoh183 Offline
Posting Freak
Posts: 959
Joined: Jul 2011
Reputation: 15
Location: Canada
Post: #27
(2013-01-30 05:18)trentf Wrote:  
(2013-01-30 04:55)saitoh183 Wrote:  For illegal character, it depends on how you treat the name from the nfo file. Stripping and replacing with a space would be the better choice since most people will just remove the illegal character and leave a space since most of the time it most likely will be ":".

For the recursive it could be good to have for people that want to keep things separated but under the same parent folder.

What about how i should name the file in the settings so it scans <set name>-poster.jpg/fanart.jpg .


The script already applies the settings configured filenames for both modes, so it should already be checking for <set name>-poster.jpg if you have thumbnails set as poster.jpg. I tested this yesterday and it was working. Are you sure set name matches exactly and the artwork folder contains it at top level? If so, send me the log.

So i changed my settings back to poster.jpg and fanart.jpg...scan said it updated 31 movies but when i check, some have fanart updated and some dont and none have there poster updated.

here is the log: http://xbmclogs.com/show.php?id=31194

[Image: watched-clearlogo.jpg]

If my replies help you, please click on my reputation [Image: rep_xbmc.JPG] below :) thanks :)
find quote
saitoh183 Offline
Posting Freak
Posts: 959
Joined: Jul 2011
Reputation: 15
Location: Canada
Post: #28
I dont know if this could be the problem:

Code:
00:17:11 T:4424   DEBUG: [Movie Set Artwork Automator (Frodo)] - Updating video database
                                            Set: 54
                                            Artwork: thumb
                                            File: T:\Moviesets\Toy Story Collection-poster.jpg
00:17:11 T:4424   DEBUG: [Movie Set Artwork Automator (Frodo)] - Found fanart: T:\Moviesets\Toy Story Collection-fanart.jpg
00:17:11 T:4424   DEBUG: [Movie Set Artwork Automator (Frodo)] - Updating video database
                                            Set: 54
                                            Artwork: fanart
                                            File: T:\Moviesets\Toy Story Collection-fanart.jpg
00:17:11 T:4424   DEBUG: [Movie Set Artwork Automator (Frodo)] -

In this snippet Artwork for poster seems to be associated with "thumb". Does this refer to the "Type" column in the Art table in XBMC db? If so, shouldn't it be Artwork :poster since the "Type" column that contains the word "poster" refers to the change of set poster. There is no entry in the DB for "media_id":54 , "media_type": set and "type": thumb. The only thumb that has 54 associated with it is "media_type":episode which refers to Tv shows (in my screenshot below) When i check my db none of the poster fields are changed to the collection poster only the fanarts are changed since Artwork: fanart would correspond to the proper type in the Type column.
Here is the pick of what i mean:

[Image: art_zps1d3079c8.jpg]

[Image: watched-clearlogo.jpg]

If my replies help you, please click on my reputation [Image: rep_xbmc.JPG] below :) thanks :)
(This post was last modified: 2013-01-30 07:55 by saitoh183.)
find quote
trentf Offline
Member
Posts: 59
Joined: Jan 2013
Reputation: 5
Location: Australia
Post: #29
Thanks for your debugging work saitoh183! It looks like you have manually set poster artwork using the UI. When the movies are first scanned and XBMC automatically assigns artwork to movie sets it only sets fanart and thumb (at least, that's what it does on my RC3 install).

I will make changes to set whatever is being used currently in the DB.
find quote
Milhouse Online
Team-Kodi Member
Posts: 4,208
Joined: Jan 2011
Reputation: 95
Post: #30
It may depend on the scraper.

I scraped my movies with the Universal Scraper and it has set fanart and poster in my db (MySQL), no manual edits from me.

I only have "thumb" for TV shows, scraped with TheTVDB.

PS. It might also help if you log your SQL queries/updates at the DEBUG level.

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.
(This post was last modified: 2013-01-30 08:48 by Milhouse.)
find quote
Post Reply