Jump to content

Reading and writing of nfo for multi-part episodes is wrong


pünktchen

Recommended Posts

pünktchen

As you probably know already, it's not uncommon for cartoons and anime episodes on dvd or television that multiple episodes are broadcasted in sequence as one.

Emby already recognizes those multi-part episodes if they follow the naming convention: https://github.com/MediaBrowser/Wiki/wiki/TV-naming#multi-episode-files

 

But the content of the nfo's that are generated by Emby for those multi-part episodes is wrong!

Emby concatenates the episode titles and the overviews into one single <episodedetails> tag where it should add a seperate <episodedetails> tag for every episode: https://kodi.wiki/view/NFO_files/TV_shows#TV_Episode_Tags

In return, if a correct nfo with multiple <episodedetails> tags exist, Emby only reads the first <episodedetails> tag and thus only creates one episode in the tvshow library.

 

Sample: Disneys Gummibärenbande\Season 01\S01E04E05.mkv

nfo created by Emby:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<episodedetails>
  <plot>Sunni kann das Fiepen von Cubbis Blechflöte nicht mehr hören und verbiegt sie. Daraufhin kommt ein Ton heraus, der eine riesige fliegende Schlange herbeiruft.

Tummi und Zummi entdecken ein seltsames Gummi-Gefährt, das sich als Drachen-Aufspür-Gerät entpuppt. Prompt weckt Tummi einen Drachen auf: aber der ist nicht zum Fürchten, sondern nur einsam.</plot>
  <outline />
  <lockdata>false</lockdata>
  <dateadded>2019-02-08 02:52:07</dateadded>
  <title>Die magische Flöte, Der einsame Drache</title>
  <rating>7.3</rating>
  <year>1985</year>
  <tvdbid>182544</tvdbid>
  <runtime>22</runtime>
  <episode>4</episode>
  <episodenumberend>5</episodenumberend>
  <season>1</season>
  <aired>1985-09-28</aired>
  <fileinfo>
    <streamdetails>
      <video>
        <codec>h264</codec>
        <micodec>h264</micodec>
        <bitrate>2421544</bitrate>
        <width>960</width>
        <height>720</height>
        <aspect>4:3</aspect>
        <aspectratio>4:3</aspectratio>
        <framerate>23.97602</framerate>
        <scantype>progressive</scantype>
        <default>True</default>
        <forced>False</forced>
        <duration>22</duration>
        <durationinseconds>1338</durationinseconds>
      </video>
      <audio>
        <codec>ac3</codec>
        <micodec>ac3</micodec>
        <bitrate>224000</bitrate>
        <language>ger</language>
        <scantype>progressive</scantype>
        <channels>2</channels>
        <samplingrate>48000</samplingrate>
        <default>True</default>
        <forced>False</forced>
      </audio>
    </streamdetails>
  </fileinfo>
</episodedetails>

nfo created by Kodi and other media managers:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<episodedetails>
    <imdbid></imdbid>
    <title>Die magische Flöte</title>
    <showtitle>Disneys Gummibärenbande</showtitle>
    <rating>7.3</rating>
    <votes>4</votes>
    <top250>0</top250>
    <season>1</season>
    <episode>4</episode>
    <plot>Sunni kann das Fiepen von Cubbis Blechflöte nicht mehr hören und verbiegt sie. Daraufhin kommt ein Ton heraus, der eine riesige fliegende Schlange herbeiruft.</plot>
    <outline>Sunni kann das Fiepen von Cubbis Blechflöte nicht mehr hören und verbiegt sie. Daraufhin kommt ein Ton heraus, der eine riesige fliegende Schlange herbeiruft.</outline>
    <mpaa>FSK 0</mpaa>
    <playcount>0</playcount>
    <lastplayed></lastplayed>
    <aired>1985-09-28</aired>
    <studio>Playhouse Disney</studio>
    <thumb>https://thetvdb.com/banners/episodes/76081/182544.jpg</thumb>
    <fileinfo>
        <streamdetails>
            <video>
                <durationinseconds>1338</durationinseconds>
                <codec>avc</codec>
                <aspect>1.333</aspect>
                <width>960</width>
                <height>720</height>
                <scantype>progressive</scantype>
            </video>
            <audio>
                <language>deu</language>
                <codec>AC-3</codec>
                <channels>2</channels>
            </audio>
        </streamdetails>
    </fileinfo>
</episodedetails>
<episodedetails>
    <imdbid></imdbid>
    <title>Der einsame Drache</title>
    <showtitle>Disneys Gummibärenbande</showtitle>
    <rating>7</rating>
    <votes>8</votes>
    <top250>0</top250>
    <season>1</season>
    <episode>5</episode>
    <plot>Tummi und Zummi entdecken ein seltsames Gummi-Gefährt, das sich als Drachen-Aufspür-Gerät entpuppt. Prompt weckt Tummi einen Drachen auf: aber der ist nicht zum Fürchten, sondern nur einsam.</plot>
    <outline>Tummi und Zummi entdecken ein seltsames Gummi-Gefährt, das sich als Drachen-Aufspür-Gerät entpuppt. Prompt weckt Tummi einen Drachen auf: aber der ist nicht zum Fürchten, sondern nur einsam.</outline>
    <mpaa>FSK 0</mpaa>
    <playcount>0</playcount>
    <lastplayed></lastplayed>
    <aired>1985-09-28</aired>
    <studio>Playhouse Disney</studio>
    <thumb>https://thetvdb.com/banners/episodes/76081/331216.jpg</thumb>
    <fileinfo>
        <streamdetails>
            <video>
                <durationinseconds>1338</durationinseconds>
                <codec>avc</codec>
                <aspect>1.333</aspect>
                <width>960</width>
                <height>720</height>
                <scantype>progressive</scantype>
            </video>
            <audio>
                <language>deu</language>
                <codec>AC-3</codec>
                <channels>2</channels>
            </audio>
        </streamdetails>
    </fileinfo>
</episodedetails>
  • Like 4
Link to comment
Share on other sites

Yea it's a long standing issue because in the database each media file gets a single metadata record. It's not something we can easily split apart into two. At some point we'll get to this though. Thanks.

Link to comment
Share on other sites

pünktchen

But as a first step you could read those multi <episodedetails> tags and combine it just for the database?!

Link to comment
Share on other sites

  • 9 months later...
invader

+1 for the reading of <episodedetails> correctly in the nfo. I raised another topic but realised this is the exact same thing I’m experiencing.

Link to comment
Share on other sites

  • 10 months later...
  • 7 months later...
GrimReaper
On 2/10/2019 at 3:10 AM, pünktchen said:

But as a first step you could read those multi <episodedetails> tags and combine it just for the database?!

 

On 2/10/2019 at 5:54 AM, Luke said:

Yes, certainly.

Made another topic before @Happy2Play pointed me here. Could we have at least that "first step"? 

Thanks. 

Edit: @Luke?

Edited by GrimReaper76
Bump
  • Agree 1
Link to comment
Share on other sites

  • 3 weeks later...
GrimReaper

Don't know of another way to attract some attention here - or any kind of reaction. CAPITAL LETTERS MAYBE?

Link to comment
Share on other sites

invader

I really want this too. Hard for the devs to prioritise all the requests though. Fingers crossed it will happen sometime soon. 

Link to comment
Share on other sites

GrimReaper
1 hour ago, invader said:

I really want this too. Hard for the devs to prioritise all the requests though. Fingers crossed it will happen sometime soon. 

Well, I wouldn't call it a request, more of a bug, as @pünktchen clearly explained above. 

If you state:

On 2/22/2018 at 11:34 PM, Luke said:

Hi, we've designed our  metadata support based upon kodi nfo standards, specifically using the kodi wiki as a point of reference.

 

From that standpoint, it should just work

for something that has been around since at least 2008:

NFO files for multiple episodes in an ISO? (kodi.tv)

I reckon Emby should - as a minimum - at least READ that nfo correctly and db accommodate it as such, even if writing same structured nfo ain't technically achievable yet.

I'm very well aware of the number of requests and implemetations devs are coping with, however sorting certain existing issues (and by that I don't refer to this particular one only) should take precedence over introducing new stuff. Currently, "My Media" ain't "my way". And that does bother me.

Link to comment
Share on other sites

Happy2Play
40 minutes ago, GrimReaper76 said:

Well, I wouldn't call it a request, more of a bug

How can it be a bug if it has never been supported in Emby (a standard that has never been coded into Emby)?  Personally a lot more information is needed if you want to show two items for one files as I will not be able to select the second episode, hit play and it plays.

But not a Kodi user so don't know how this it truly suppose to work.

Edited by Happy2Play
Link to comment
Share on other sites

GrimReaper
35 minutes ago, Happy2Play said:

How can it be a bug if it has never been supported in Emby (a standard that has never been coded into Emby)?  Personally a lot more information is needed if you want to show two items for one files as I will not be able to select the second episode, hit play and it plays.

But not a Kodi user so don't know how this it truly suppose to work.

It can work however devs decide it to work, either concatenate and display as a single item (as it does if scraped by Emby) or create separate entry which will point to the same video file, I'm fine with both, as long as it shows inside my library. But atm it is NOT listed/displayed at all, as if it doesn't exist.

Example Show with double-event finale:

1. Folder structure

 

image.thumb.png.17748ed0e1d3da87172a2d73c4e0d289.png

2. Emby:

1392116463_Screenshot2021-06-11014911.thumb.png.8b04cd06f6bda07ca5f04d196ba0060a.png

 

3. Statistics:

image.png.2bd6a37611cd89d228d55faa8a35aaa6.png

 

And all data IS available in nfo.

Edited by GrimReaper76
Append
Link to comment
Share on other sites

Happy2Play

Never used a metadata manager that write them like this, all mine have always contained episodenumberend.  But would assume that was a old Kodi standard.  Just like all the changes they are making with ratings and providerids.

Edited by Happy2Play
Link to comment
Share on other sites

GrimReaper
On 2/10/2019 at 2:05 AM, pünktchen said:

nfo created by Kodi and other media managers:


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<episodedetails>
    <imdbid></imdbid>
    <title>Die magische Flöte</title>
    <showtitle>Disneys Gummibärenbande</showtitle>
    <rating>7.3</rating>
    <votes>4</votes>
    <top250>0</top250>
    <season>1</season>
    <episode>4</episode>
    <plot>Sunni kann das Fiepen von Cubbis Blechflöte nicht mehr hören und verbiegt sie. Daraufhin kommt ein Ton heraus, der eine riesige fliegende Schlange herbeiruft.</plot>
    <outline>Sunni kann das Fiepen von Cubbis Blechflöte nicht mehr hören und verbiegt sie. Daraufhin kommt ein Ton heraus, der eine riesige fliegende Schlange herbeiruft.</outline>
    <mpaa>FSK 0</mpaa>
    <playcount>0</playcount>
    <lastplayed></lastplayed>
    <aired>1985-09-28</aired>
    <studio>Playhouse Disney</studio>
    <thumb>https://thetvdb.com/banners/episodes/76081/182544.jpg</thumb>
    <fileinfo>
        <streamdetails>
            <video>
                <durationinseconds>1338</durationinseconds>
                <codec>avc</codec>
                <aspect>1.333</aspect>
                <width>960</width>
                <height>720</height>
                <scantype>progressive</scantype>
            </video>
            <audio>
                <language>deu</language>
                <codec>AC-3</codec>
                <channels>2</channels>
            </audio>
        </streamdetails>
    </fileinfo>
</episodedetails>
<episodedetails>
    <imdbid></imdbid>
    <title>Der einsame Drache</title>
    <showtitle>Disneys Gummibärenbande</showtitle>
    <rating>7</rating>
    <votes>8</votes>
    <top250>0</top250>
    <season>1</season>
    <episode>5</episode>
    <plot>Tummi und Zummi entdecken ein seltsames Gummi-Gefährt, das sich als Drachen-Aufspür-Gerät entpuppt. Prompt weckt Tummi einen Drachen auf: aber der ist nicht zum Fürchten, sondern nur einsam.</plot>
    <outline>Tummi und Zummi entdecken ein seltsames Gummi-Gefährt, das sich als Drachen-Aufspür-Gerät entpuppt. Prompt weckt Tummi einen Drachen auf: aber der ist nicht zum Fürchten, sondern nur einsam.</outline>
    <mpaa>FSK 0</mpaa>
    <playcount>0</playcount>
    <lastplayed></lastplayed>
    <aired>1985-09-28</aired>
    <studio>Playhouse Disney</studio>
    <thumb>https://thetvdb.com/banners/episodes/76081/331216.jpg</thumb>
    <fileinfo>
        <streamdetails>
            <video>
                <durationinseconds>1338</durationinseconds>
                <codec>avc</codec>
                <aspect>1.333</aspect>
                <width>960</width>
                <height>720</height>
                <scantype>progressive</scantype>
            </video>
            <audio>
                <language>deu</language>
                <codec>AC-3</codec>
                <channels>2</channels>
            </audio>
        </streamdetails>
    </fileinfo>
</episodedetails>

TMM being one of those "others".

Link to comment
Share on other sites

GrimReaper
7 minutes ago, Happy2Play said:

Never used a metadata manager that write them like this, all mine have always contained episodenumberend.  But would assume that was a old Kodi standard.  Just like all the changes they are making with ratings and providerids.

Well, based on this, I'd say it ain't that much new:

1818617846_Screenshot2021-06-11021625.thumb.png.81703c8e449b80e87c682a086c5b53f1.png

1533094206_Screenshot2021-06-11021809.thumb.png.afa70423c63a1edfe75be1df15b4c965.png

Link to comment
Share on other sites

Happy2Play

Well the original standards have changed so old vs new standards will always be a issue.  But at the same time you have to code to maintain both and now you have a mess.

I know this change would break all of my metadata as it is not written this new way.

Link to comment
Share on other sites

GrimReaper

Yeah, I'm aware it does pose an issue for the devs, constant changes and old vs. new structure (although we obviously differ in opinion how "new" this particular issue is, 2008 was quite some time ago). However, I reckon that as a standard it should not/cannot be ignored. Maybe existence of tag <episodenumberend> could be used as a trigger/switch? It either exists or does not, and branch from there? Or simply check for multiple <episodedetails> tags?

Edited by GrimReaper76
Append
Link to comment
Share on other sites

Happy2Play

Well is that not what Kodi issue when they make these changes, are they honoring the previous standard?  Everyone tries to follow Kodi but I don't agree with moving away from existing standards.  This will break years of existing metadata forcing total rewrites.

Link to comment
Share on other sites

Happy2Play
8 minutes ago, GrimReaper76 said:

I guess they call it "progress". 😂

Yep and progress breaks everything in the past.  So when do you move forward?🤨

Link to comment
Share on other sites

I moved forward 5 years ago.  When I get 2 part movies I combine the parts.
When I get multi-episode episodes I manually break them apart to single episodes.

It's always easy to break files apart but not always possible to join multiple parts together especially in the HDR/DV world of 4K but fortunately that is hardly ever needed.

I know this isn't a "solution" for some people but it's pretty easy to do and gives you a 1 to 1 file per meta-data provider media file which completely gets rid of NFO complications, Emby Searches, missing episodes, etc.

  • Like 1
Link to comment
Share on other sites

rbjtech

The other solution is an STRM file (for S01E09 in the above example) with a correct NFO etc that simply points to the S01E09E10 file.   When you play S01E09 (the STRM) you will also mark S01E09E10 as played. :)

 

 

Edited by rbjtech
  • Like 1
Link to comment
Share on other sites

GrimReaper

Thanks both for your input, those are both valid workarounds - but workarounds nonetheless. But we're not talking about some niche-case usage here nor breaking existing logic but reading a properly formatted Kodi nfo, conforming to all standards. And it is my belief that no MacGyver-ing should be needed there. And I don't want to pull "Team Orange" argument as an example how it should be done. 

  • Agree 2
Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...