Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing movie set posters in Collection View #1111

Open
gavinstevenson opened this issue Aug 23, 2024 · 20 comments
Open

Missing movie set posters in Collection View #1111

gavinstevenson opened this issue Aug 23, 2024 · 20 comments
Labels

Comments

@gavinstevenson
Copy link

I currently have a small test library that contains several movies split into 2 movie sets/collections:

  • 300 Collection
  • Analyze Collection

When I view these sets/collections within Kodi, the associated artwork (poster.jpg, fanart.jpg) and metadata (the string from the <overview> tag) displays correctly. However, when I use the iOS remote, the app does not load the image or overview data.

Here's an excerpt I get from a debug log when navigating to the Collection View using Kodi's default Estuary skin on the TV:

2024-08-23 14:30:13.933 T:7028    debug <general>: EventClient: button name "up" map "R1" pressed
2024-08-23 14:30:13.947 T:6965    debug <general>: HandleKey: 166 (0xa6, obc89) pressed, window 10025, action is Up
2024-08-23 14:30:15.109 T:7028    debug <general>: EventClient: button name "down" map "R1" pressed
2024-08-23 14:30:15.114 T:6965    debug <general>: HandleKey: 167 (0xa7, obc88) pressed, window 10025, action is Down
2024-08-23 14:30:15.766 T:7028    debug <general>: EventClient: button name "up" map "R1" pressed
2024-08-23 14:30:15.774 T:6965    debug <general>: HandleKey: 166 (0xa6, obc89) pressed, window 10025, action is Up
2024-08-23 14:30:17.133 T:7028    debug <general>: EventClient: button name "right" map "R1" pressed
2024-08-23 14:30:17.147 T:6965    debug <general>: HandleKey: 168 (0xa8, obc87) pressed, window 10025, action is Right
2024-08-23 14:30:41.525 T:7157    debug <CWebserver[8080]>: request received for /jsonrpc
2024-08-23 14:30:41.538 T:7029     info <general>: Skipped 1 duplicate messages..
2024-08-23 14:30:41.538 T:7029    debug <general>: JSONRPC Server: New connection detected
2024-08-23 14:30:41.538 T:7029     info <general>: JSONRPC Server: New connection added
2024-08-23 14:30:41.543 T:7158    debug <CWebserver[8080]>: request received for /jsonrpc
2024-08-23 14:30:42.548 T:7135     info <general>: Skipped 6 duplicate messages..
2024-08-23 14:30:43.416 T:7157    debug <CWebserver[8080]>: request received for /jsonrpc
2024-08-23 14:30:45.744 T:7157     info <general>: Skipped 4 duplicate messages..
2024-08-23 14:30:45.744 T:7157    debug <general>: connect replacing configured host test-htpc1 with resolved host 192.168.1.214
2024-08-23 14:30:45.798 T:7176     info <CWebserver[8080]>: Skipped 1 duplicate messages..
2024-08-23 14:30:45.798 T:7176    debug <CWebserver[8080]>: request received for /image/image%3A//%252fmnt%252fvideo%252fmovie_sets_test%252f300%2520Collection%252fposter.jpg/
2024-08-23 14:30:45.800 T:7176    debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movie_sets_test/300 Collection/poster.jpg]
2024-08-23 14:30:46.418 T:7157     info <CWebserver[8080]>: Skipped 5 duplicate messages..
2024-08-23 14:30:46.418 T:7157    debug <CWebserver[8080]>: request received for /jsonrpc
2024-08-23 14:30:57.414 T:7157     info <CWebserver[8080]>: Skipped 14 duplicate messages..
2024-08-23 14:30:57.414 T:7157    debug <CWebserver[8080]>: request received for /jsonrpc
2024-08-23 14:31:02.537 T:7157     info <general>: Skipped 8 duplicate messages..

Note the two lines at the bottom:

2024-08-23 14:30:45.798 T:7176    debug <CWebserver[8080]>: request received for /image/image%3A//%252fmnt%252fvideo%252fmovie_sets_test%252f300%2520Collection%252fposter.jpg/
2024-08-23 14:30:45.800 T:7176    debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movie_sets_test/300 Collection/poster.jpg]

I suspect these two debug log messages are spurious because even though they claim "no matching source found for [path-to-the-poster.jpg]", Kodi is obviously able to locate and load the images just fine as illustrated in the below screenshot of the Kodi interface running on my HTPC.

But when I use the iOS app to try to view the collections, the poster.jpg for the relevant movie sets doesn't load.

Any thoughts or ideas on how I can get the app to display the poster.jpgs for the movie collections?

Screenshot of Kodi interface on TV illustrating working movie set posters.

Note: ignore the crude bright-red writing on the poster. I'm using that to confirm Kodi is picking up local artwork and not scraping the poster.jpg from some website like TMDB or something.
screenshot00000

Screenshot of App illustrating blank/not-loaded movie set posters.

ipad_screen1

Dump of a relevant movie set .NFO:

[root@test-htpc1 pi]$ cat /mnt/video/movie_sets_test/Analyze\ Collection/Analyze\ Collection.nfo 
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--created on 2024-07-19 06:51:35 - tinyMediaManager 5.0.7-->
<collection>
  <title>Analyze Collection</title>
  <overview>A series about a mob boss Paul Vitti and his relationship with his psychiatrist Dr. Ben Sobel.</overview>
  <thumb>/mnt/video/movie_sets_test/Analyze Collection/poster.jpg</thumb>
  <!-- <thumb>https://image.tmdb.org/t/p/original/toKnwHXHEei4k6E42iasehWhdK5.jpg</thumb> -->
  <fanart>/mnt/video/movie_sets_test/Analyze Collection/fanart.jpg</fanart>
  <!-- <fanart>https://image.tmdb.org/t/p/original/zhVKNz29OvsXacU1YKCksBx8yIl.jpg</fanart> -->
  <tmdbid>110127</tmdbid>
  <uniqueid default="true" type="tmdb">110127</uniqueid>
  <genre>Comedy</genre>
  <genre>Crime</genre>
  <studio>Baltimore Pictures</studio>
  <studio>Baltimore Spring Creek Pictures</studio>
  <studio>Spring Creek Productions</studio>
  <studio>Village Roadshow Pictures</studio>
  <studio>Tribeca Productions</studio>
  <studio>Warner Bros. Pictures</studio>
  <studio>Face Productions</studio>
  <studio>NPV Entertainment</studio>
  <dateadded>2024-07-19 04:37:07</dateadded>
  <!--tinyMediaManager meta data-->
  <user_note/>
</collection>

Movie set appears to be correctly recognized in the database:

[root@test-htpc ~]$ mysql -u root -e "SELECT * FROM MyVideos121.sets WHERE idSet=2"
+-------+--------------------+------------------------------------------------------------------------------------------------+
| idSet | strSet             | strOverview                                                                                    |
+-------+--------------------+------------------------------------------------------------------------------------------------+
|     2 | Analyze Collection | A series about a mob boss Paul Vitti and his relationship with his psychiatrist Dr. Ben Sobel. |
+-------+--------------------+------------------------------------------------------------------------------------------------+
@wutschel
Copy link
Collaborator

Maybe you already found signs towards the issue in your debug log. I have seen and aware of multiple issues and situations where Kodi is not providing information (thumbnails, labels, ...) through JSON API even though visible inside Kodi. Especially around thumbnail creation there were several problems in the past, so for now I assume this is the same here. But let's look into the details of the API response. As I remember you can issue JSON commands, it will be helpful, if you can run the same on your end and see what responses come back.

Command to ask for movie sets and related metadata:

{"jsonrpc":"2.0","method":"VideoLibrary.GetMovieSets","params":{"properties":["thumbnail","plot","fanart","playcount","art"]}, "id":2}

Example response (first movie set in my test database)

{
    art =     {
        banner = "image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fmoviebanner%2falien-collection-547ce6386316d.jpg/";
        clearart = "image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fhdmovieclearart%2falien-anthology-5313123240c23.png/";
        clearlogo = "image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fhdmovielogo%2falien-anthology-5313049c37164.png/";
        fanart = "image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fmoviebackground%2falien-anthology-5228ca390c097.jpg/";
        keyart = "image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fmovieposter%2falien-collection-54b18a71c7205.jpg/";
        landscape = "image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fmoviethumb%2falien-anthology-52dff3188b94d.jpg/";
        poster = "image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fmovieposter%2falien-anthology-52247e06cd796.jpg/";
    };
    fanart = "image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fmoviebackground%2falien-anthology-5228ca390c097.jpg/";
    label = "Alien Collection";
    playcount = 0;
    plot = "A science fiction horror film franchise, focusing on Lieutenant Ellen Ripley (Sigourney Weaver) and her battle with an extraterrestrial life-form, commonly referred to as \"the Alien\". Produced by 20th Century Fox, the series started with the 1979 film Alien, then Aliens in 1986, Alien\U00b3 in 1992, and Alien: Resurrection in 1997.";
    setid = 1;
    thumbnail = "";
}

The remote app will now look for "poster" inside "art" (preferred) or "thumbnail" as a fallback. In above case the preferred data is shared:

"image://https%3a%2f%2fassets.fanart.tv%2ffanart%2fmovies%2f8091%2fmovieposter%2falien-anthology-52247e06cd796.jpg/"

This is converted into a URL which allows to download the image from your Kodi instance (IP and port as per your configuration). You can literally open this with a standard web browser:

"http://192.168.178.60:8080/image/image%3A//https%253a%252f%252fassets.fanart.tv%252ffanart%252fmovies%252f8091%252fmovieposter%252falien-anthology-52247e06cd796.jpg/"

Please issue the JSON command and review the response. I assume that either no "thumbnail" or "poster" is shared, or that the file cannot be loaded (e.g. when no thumbnail was created internally). Both would point to problems inside Kodi itself. But let's see.

@gavinstevenson
Copy link
Author

Thanks for your help wutschel. You do indeed remember correctly: I can dig as deep/get as technical as you would like and would be happy to provide the requested JSON queries & responses.

A quick aside: As an FYI to any future readers that might come across this via a Google search, the test library I'm using to troubleshoot this issue is only 3 movies large, but each movie has a complete set of fan arts, posters, disc arts, actor arts, etc. When I conduct each test I use the following procedure:

Testing procedure

  1. Force close/terminate the iPad remote app.
  2. On the iPad, go into Settings > Kodi Remote, enable "Clear cache on next start". This removes all local caches so we start with a clean slate.
  3. [root@test-htpc1 ~]$ systemctl stop kodi # Stop Kodi
  4. [root@test-htpc1 ~]$ rm -rf ~pi/.kodi/userdata/Thumbnails ~pi/.kodi/userdata/Database/MyVideos121.db ~pi/.kodi/userdata/Database/Textures13.db # Remove all local thumbnail caches and databases so that we start with a clean slate.
  5. [root@test-htpc1 ~]$ mysql -u root -e "DROP DATABASE MyVideos121;" # Remove all remote databases so that we start with a clean slate.
  6. [root@test-htpc1 ~]$ systemctl start kodi # Start Kodi
  7. wait ~10 seconds for new databases to be initialized
  8. Use Kodi to re-scan library (takes about 5 seconds to scan all 3 movies)
  9. Unlock iPad, reconnect to Kodi instance, select "Movie" view, pull down to refresh/re-sync with library.
  10. All 3 movies from test library appear almost instantly, all with correct posters, fan arts, actor arts, etc.
  11. Go to Collections View, and see blank/missing posters.

Now on to the requested information:

JSON query results

[root@test-htpc1 ~]$ curl --data-binary '{"jsonrpc":"2.0","method":"VideoLibrary.GetMovieSets","params":{"properties":["thumbnail","plot","fanart","playcount","art"]}, "id":2}' -H 'content-type: application/json;' http://test-htpc1:8080/jsonrpc | python3 -m json.tool
{
    "id": 2,
    "jsonrpc": "2.0",
    "result": {
        "limits": {
            "end": 2,
            "start": 0,
            "total": 2
        },
        "sets": [
            {
                "art": {},
                "fanart": "",
                "label": "300 Collection",
                "playcount": 0,
                "plot": "Fictionalized action films based on the retellings of the Persian Wars, a series of conflicts between the Empire of Persia and Greek city-states.",
                "setid": 1,
                "thumbnail": ""
            },
            {
                "art": {},
                "fanart": "",
                "label": "Analyze Collection",
                "playcount": 0,
                "plot": "A series about a mob boss Paul Vitti and his relationship with his psychiatrist Dr. Ben Sobel.",
                "setid": 2,
                "thumbnail": ""
            }
        ]
    }
}

Well that's surprising... The art section of the response is completely empty ({})! I wonder how that could be...

Directory listing of non-working Movie Set folder

Using the "Analyze Collection" (setid: 2) as an example, here's the full directory listing of the folder.

[root@test-htpc1  ~]$ ls -al /mnt/video/movie_sets_test/Analyze\ Collection/
total 451
drwxr-xr-x 2 pi pi      5 Aug 24 16:12  .
drwxr-xr-x 5 pi pi      5 Aug 11 21:34  ..
-rw-r--r-- 1 pi pi   1197 Aug 23 17:13 'Analyze Collection.nfo'
-rw-r--r-- 1 pi pi 195929 Aug  6 05:08  fanart.jpg
-rw-r--r-- 1 pi pi 185122 Aug  6 05:08  poster.jpg

To my eyes, it looks like the files are all named correctly (based on my reading of the Kodi Wiki at Movie Sets Artwork and Movie Sets Information Folder), but maybe I'm missing something here? Any thoughts on this unexpected development would be welcome, especially since Kodi doesn't seem to have any issue displaying this on the TV.

Could you post a listing of the directory structure of the working set you used above (setid=1, the "Alien Collection" set)? I'd like to compare your working one to my broken one and see if I'm missing something obvious.

Contents of non-working movie set .NFO

[root@test-htpc1 ~]$ cat /mnt/video/movie_sets_test/Analyze\ Collection/Analyze\ Collection.nfo 
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--created on 2024-07-19 06:51:35 - tinyMediaManager 5.0.7-->
<collection>
  <title>Analyze Collection</title>
  <overview>A series about a mob boss Paul Vitti and his relationship with his psychiatrist Dr. Ben Sobel.</overview>
  <thumb>/mnt/video/movie_sets_test/Analyze Collection/poster.jpg</thumb>
  <!-- <thumb>https://image.tmdb.org/t/p/original/toKnwHXHEei4k6E42iasehWhdK5.jpg</thumb> -->
  <fanart>/mnt/video/movie_sets_test/Analyze Collection/fanart.jpg</fanart>
  <!-- <fanart>https://image.tmdb.org/t/p/original/zhVKNz29OvsXacU1YKCksBx8yIl.jpg</fanart> -->
  <tmdbid>110127</tmdbid>
  <uniqueid default="true" type="tmdb">110127</uniqueid>
  <genre>Comedy</genre>
  <genre>Crime</genre>
  <studio>Baltimore Pictures</studio>
  <studio>Baltimore Spring Creek Pictures</studio>
  <studio>Spring Creek Productions</studio>
  <studio>Village Roadshow Pictures</studio>
  <studio>Tribeca Productions</studio>
  <studio>Warner Bros. Pictures</studio>
  <studio>Face Productions</studio>
  <studio>NPV Entertainment</studio>
  <dateadded>2024-07-19 04:37:07</dateadded>
  <!--tinyMediaManager meta data-->
  <user_note/>
</collection>

Could you post a dump of the working .NFO you used above (setid=1, the "Alien Collection" set)? I'd like to compare your working one to my broken one and see if I'm missing something obvious.

Thanks for the clue on where to continue my troubleshooting! If I could have your help getting the above two pieces of info (directory listing and dump of a relevant .NFO), that would help even further.

@wutschel
Copy link
Collaborator

The good news is: Now it is clear why the app does not show any cover. It is just not shared.

The bad news is that I cannot really help too much further. For my test database I just used a scraper, there are no nfo files or movie sets folders.

@kambala-decapitator, you have a Kodi developer in mind who could look into this?

PS: The only thing I wondered about is whether you should use the key 'poster' instead of 'thumb' in your nfo.

@gavinstevenson
Copy link
Author

Ah, I see, well I still appreciate the response nonetheless!

The 'poster' vs. 'thumb' idea is a good one. I'll give that a try and see if I can debug things further.

@kambala-decapitator
Copy link
Collaborator

@kambala-decapitator, you have a Kodi developer in mind who could look into this?

Can ask in the team chat. But what should I ask about exactly? Sorry, haven't followed all the comments here, only understood that it's something about posters.

@wutschel
Copy link
Collaborator

wutschel commented Aug 25, 2024

Can ask in the team chat. But what should I ask about exactly? Sorry, haven't followed all the comments here, only understood that it's something about posters.

Sure, this is about scanning movie sets to database via .nfo files (detailed nfo above). The posters are not shared via JSON API even though shown in Kodi UI.

@KarellenX
Copy link
Member

KarellenX commented Aug 25, 2024

Dump of a relevant movie set .NFO:

Kodi does not use this. There is no such thing as a "collection.nfo" file in the Kodi world.

To my eyes, it looks like the files are all named correctly (based on my reading of the Kodi Wiki at Movie Sets Artwork and Movie Sets Information Folder), but maybe I'm missing something here?

Have you set up the MSIF? It's a bit hard to tell with all the snippets.
Have you entered the MSIF path in the Kodi settings?
Where are the video files for the movies? Same folder?

Can you delete the movies from your library, rescan them and provide a debug log.

@KarellenX
Copy link
Member

Command to ask for movie sets and related metadata:

I tried your command on my install and worked correctly.

jsonsets

@KarellenX
Copy link
Member

I checked my app and seem to have the same issue. Out of 102 sets, only two had artwork displayed -
Shazam! Collection
The Whole Nine/Ten Yards Collection

The only similarity I can see is that both have some sort of punctuation in the title - ! and /

IMG_0534

@wutschel
Copy link
Collaborator

wutschel commented Aug 25, 2024

@KarellenX, thanks for looking into this as well.

For my test database the app loads posters for each of the (17) sets: https://ibb.co/vhq2tBk
I am using Kodi 20.5 for testing, no nfo or MSIF. I was just running the default scraper on the test movie files.
(Edit: Also tested with Kodi 21.0, same result.)

Your JSON response looks like expected ("art" holding "poster"), and the app should attempt to load the images. Can you see issues in the Kodi logs when the app tries to download the images? In the past there have been issues where Kodi was not creating the thumbnails internally and therefor the app could not download the respective images. See xbmc/xbmc#23956.

@KarellenX
Copy link
Member

@wutschel

Here is my Kodi log... https://paste.kodi.tv/javiyageqo.kodi
My MSIF artwork is in a folder named F:\Movies- Sets Art\ which can be seen from line 321
Seems as none of the artwork can be found.

Here is MSIF...
msif

@wutschel
Copy link
Collaborator

Hmm, this shows the same pattern as @gavinstevenson reported

2024-08-26 05:22:04.588 T:1636    debug <CWebserver[8080]>: request received for /image/image%3A//F%253a%255cMovies-%2520Sets%2520Art%255cIndiana%2520Jones%2520Collection%255cposter.jpg/
2024-08-26 05:22:04.589 T:1636    debug <general>: CUtil::GetMatchingSource: no matching source found for [F:\Movies- Sets Art\Indiana Jones Collection\poster.jpg  ]

Looks to me like something not going right inside Kodi. Or do you see any issue with the request to download the image?

@KarellenX
Copy link
Member

This is the pr for the MSIF... xbmc/xbmc#16970
Maybe @rmrector might be able to spot what the problem is?

@gavinstevenson
Copy link
Author

Hi @wutschel, @KarellenX, I see this thread has progressed quite a bit over the last few hours, but just in case it's still helpful, I'll answer the questions that were asked from a few hours ago:

Have you set up the MSIF?

Yes.

Have you entered the MSIF path in the Kodi settings?

Yes:

[root@test-htpc1 ~]$ grep "moviesetsfolder" ~pi/.kodi/userdata/guisettings.xml 
    <setting id="videolibrary.moviesetsfolder">/mnt/video/movie_sets_test/</setting>

Where are the video files for the movies? Same folder?

No, per the wiki, the MSIF and the video file directories are separate. The wiki specifically advises against creating the MSIF folder inside another Kodi source folder (i.e., "do not create [the MSIF directory] inside your movie or tv show source folders"). If I should instead be creating these in the same folder, please let me know. The wiki may need to be updated.

The MSIF directory is: /mnt/video/movie_sets_test/
The video file directory is: /mnt/video/movies_test/

Can you delete the movies from your library, re-scan them and provide a debug log.

Sure. I included a relevant snippet above, but if you're curious for a full debug output, please see link here. (Warning: it's several thousand lines long. See below for line numbers to relevant excerpts.)

Some quick searching through the log seems to indicate that Kodi is correctly locating the Movie Sets collection folders and is correctly slurping up the associated -poster.jpg and -fanart.jpg images (despite occasionally complaining that it then can't find a matching source). And indeed, when viewing the collection artwork on the TV, the artwork displays as expected, but when viewing on the iPad app remote, those images don't show up.

Line numbers and excerpts from above debug log file illustrating that Kodi is finding the movie set folders:

[root@test-htpc1 ~]$ grep -n "Looking for local artwork for movie set" ~pi/.kodi/temp/kodi.log
1520:2024-08-25 14:38:50.325 T:20794   debug <general>: VideoInfoScanner: Looking for local artwork for movie set '300 Collection' in folder '/mnt/video/movie_sets_test/300 Collection/'
2040:2024-08-25 14:38:50.844 T:20794   debug <general>: VideoInfoScanner: Looking for local artwork for movie set 'Analyze Collection' in folder '/mnt/video/movie_sets_test/Analyze Collection/'
2183:2024-08-25 14:38:50.994 T:20794   debug <general>: VideoInfoScanner: Looking for local artwork for movie set 'Analyze Collection' in folder '/mnt/video/movie_sets_test/Analyze Collection/'

Line numbers and excerpts from above debug log file illustrating that Kodi is caching the movie set artwork:

[root@test-htpc1 ~]$ grep -n "Caching image '/mnt/video/movie_sets_test" ~pi/.kodi/temp/kodi.log
2597:2024-08-25 14:38:52.178 T:20786   debug <general>: Caching image '/mnt/video/movie_sets_test/300 Collection/poster.jpg' to 'e/e4a919bf.jpg':
2643:2024-08-25 14:38:52.221 T:20786   debug <general>: Caching image '/mnt/video/movie_sets_test/300 Collection/fanart.jpg' to 'f/f3359ebb.jpg':
5340:2024-08-25 14:38:53.346 T:20794   debug <general>: Caching image '/mnt/video/movie_sets_test/Analyze Collection/poster.jpg' to 'b/b6082b0d.jpg':
5387:2024-08-25 14:38:53.383 T:20794   debug <general>: Caching image '/mnt/video/movie_sets_test/Analyze Collection/fanart.jpg' to 'a/a194ac09.jpg':

Line numbers and excerpts from above debug log file illustrating (potentially spurious) messages about no matching sources for pieces of artwork:

[root@test-htpc1 ~]$ grep -n "no matching source found for" ~pi/.kodi/temp/kodi.log
7440:2024-08-25 14:39:26.882 T:20844   debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movies_test/ANALYZE_THIS_(1999)_(DVD)/ANALYZE_THIS-poster.jpg]
7442:2024-08-25 14:39:26.882 T:20845   debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movies_test/ANALYZE_THAT_(2002)_(DVD)/ANALYZE_THAT-poster.jpg]
7444:2024-08-25 14:39:26.882 T:20844   debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movies_test/ANALYZE_THIS_(1999)_(DVD)/ANALYZE_THIS-poster.jpg]
7446:2024-08-25 14:39:26.882 T:20843   debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movies_test/300_(2007)_(BLURAY)/300-poster.jpg]
7455:2024-08-25 14:39:26.882 T:20845   debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movies_test/ANALYZE_THAT_(2002)_(DVD)/ANALYZE_THAT-poster.jpg]
7493:2024-08-25 14:39:26.882 T:20843   debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movies_test/300_(2007)_(BLURAY)/300-poster.jpg]
7496:2024-08-25 14:39:26.882 T:20843   debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movies_test/300_(2007)_(BLURAY)/300-poster.jpg]
8098:2024-08-25 14:39:31.800 T:20846   debug <general>: CUtil::GetMatchingSource: no matching source found for [/mnt/video/movie_sets_test/Analyze Collection/poster.jpg]

Dump of a relevant movie set .NFO:

Kodi does not use this. There is no such thing as a "collection.nfo" file in the Kodi world.

Ah, that's surprising. I assumed that when a user had "Local information provider only" selected when scanning new items into a database, the same code responsible for scanning .NFOs for local movies and music would also support movie sets .NFOs. Does this then mean that even when a user has "Local information provider only" selected when scanning movies, whatever code is responsible for ingesting movie sets will always go out to some kind of external information provider to scrape things like plot summaries?

If so, then I can see value in adding .NFO support to movie collections for all the same reasons .NFOs for other source types are supported (namely, being able to control what's added in your local database without having to rely on an external 3rd party).

@KarellenX
Copy link
Member

Does this then mean that even when a user has "Local information provider only" selected when scanning movies, whatever code is responsible for ingesting movie sets will always go out to some kind of external information provider to scrape things like plot summaries?

The Set/Collection data comes from the nfo file from the movie.

    <set>
        <name>Bourne Collection</name>
        <overview>The Bourne films are a series of action thriller movies...</overview>
    </set>

@gavinstevenson
Copy link
Author

Ah, interesting. In that case, what's the expected behavior when one movie in a set contains one <overview> string while a sequel in the same set contains a different <overview> string (because perhaps it was scraped at a different time, potentially years later, and the data source it originally came from, like TMDB, was updated with a different overview)?

I believe I've seen this before with several long-lived franchises like the Fast and the Furious movie sets, the Harry Potter movie set, the John Wick movie set, etc.

@KarellenX
Copy link
Member

IIRC, the most recent will overwrite the existing.
There is some work in progress for a set.nfo, but it will be limited in what it can do...
xbmc/xbmc#24557

@wutschel
Copy link
Collaborator

Should this be moved to Kodi? I cannot see the iOS app doing anything about this.

@gavinstevenson
Copy link
Author

Hi @wutschel,

I'd be supportive of doing so. As you indicated in #1111 (comment) and #1111 (comment) and #1111 (comment), the app can only work with the data it getting from Kodi. If that's not going right, there's only so much you'll be able to do.

Further, as @KarellenX in #1111 (comment), he's seeing the same behavior, which leads me to believe this is a bona fide bug.

Do you have the ability to move this bug to the main xbmc repo (thus preserving all the debug/investigation work above)?

@wutschel
Copy link
Collaborator

wutschel commented Dec 8, 2024

@kambala-decapitator, can this issue be moved to the xbmc project? Otherwise it should be closed as we cannot do anything on the App side.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants