Hi all,
I have been trying to put together some test NFO files for my TV shows library but I am running into a problem and I think I have found the cause, which could be a bug in the way Kodi handles the files.
When I create a movie NFO, I can input the data I want to customise, then add a URL for the scraper to look up for the missing data. For example, I use a brief NFO structure similar to this:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<movie>
<title>Movie Title</title>
<plot>Brief description.</plot>
<tagline>Tagline.</tagline>
<playcount>1</playcount>
<tag>BD</tag>
<dateadded>2017-11-29</dateadded>
</movie>
https://www.themoviedb.org/movie/xxxxxx
The above works perfectly for all my films; I have hundreds of DVD ISOs and Blu-ray media stubs on my NAS so I have all my media information available to me in one place. The same is also true for TV shows:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<tvshow>
<title>Show Title</title>
<plot>Brief description.</plot>
</tvshow>
https://www.themoviedb.org/tv/xxxx
It's important to note that I am using the MovieDB scrapers for both movies and TV shows; I want to move away from the TVDB as it provides very poor quality episode images. So I figured I would be able to follow the same format for each TV episode NFO, for example:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<episodedetails>
<playcount>1</playcount>
</episodedetails>
https://www.themoviedb.org/tv/xxxx/season/1/episode/5
I expected the above to cause Kodi to just pull the <playcount> data from the NFO, then scrape the URL for the rest of the episode information (title, plot, etc.). The idea is to only use the episode NFOs to mark the episodes I have watched, and pull all other data from the MovieDB API. I want to do this so that if I need to re-scrape my library in future, it is quick and painless. My advancedsettings.xml is set to import watched status and for movies this works without fail. However, for TV episodes the watched state
ONLY gets imported if there is no URL in the NFO, like this:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<episodedetails>
<playcount>1</playcount>
</episodedetails>
The problem with that is, no other information is scraped about the episode, so the title, plot, etc. are missing in Kodi. If a URL is present, everything within the <episodedetails> tags is ignored by the scraper and it simply pulls all data from the MovieDB API, ignoring my <playcount> tag. This is not how Kodi works with movie and TV show NFOs. It normally takes the data in the NFO and puts it in the database, then adds to that information anything that is missing, via the URL to the movie / show.
The problem is, if I can't put a URL to the episode in the NFO, I then need to put all the other info in the NFO, otherwise this information is missing in Kodi's database. It seems with TV episodes, your NFO can either store all related info
OR a URL to the info, but not both. In movie and TV show NFOs, you can store as much or as little data in the NFO as you want, then supplement that data with a URL to fill in the gaps.
Is this a bug, or is Kodi designed to read TV episode NFO files differently?
This information from the NFO page on the Kodi wiki is true for movies and TV shows, but contradicts what I am seeing with TV episode NFO files:
Quote:When Kodi locates the nfo file it will load the *.nfo file and:
- If the file is a metadata nfo, Kodi will import the meta-data directly into the library from the .nfo file or
- If the file is a parsing nfo, Kodi will parse the nfo file for a direct URL to the scraper info page, then scrape the online metadata.
- If the file is a combination nfo, Kodi will parse the nfo file and scrape the online metadata, then import the metadata from the nfo file.
I am using what is termed a "combination NFO", but it isn't working as expected. I have also tested all the above with the TVDB scraper as well, and I get the same results, so I don't believe this issue is to do with the scrapers themselves.