tonywagner / mlbserver

39 stars 7 forks source link

xmltv suggestion #37

Open warrentc3 opened 3 weeks ago

warrentc3 commented 3 weeks ago

Loving this software and wish I found it much sooner!

Anyway, this is essentially the output of the various transformations I have scripted that generates a bit richer of an xmltv. Thought I'd share. I'm still trying to suss out how to get the game id's for "episode numbers".

<programme channel="SingleA.VIS" start="20240611213000 -0400" stop="20240612003000 -0400">
    <title lang="en">Minor League Baseball: California League</title>
    <sub-title lang="en">Modesto Nuts at Visalia Rawhide</sub-title>
    <desc lang="en"/>
    <date>20240611</date>
    <category lang="en">Sports</category>
    <category lang="en">Baseball</category>
    <category lang="en">Sports event</category>
    <icon src="https://img.mlbstatic.com/mlb-photos/image/upload/ar_167:215,c_fill/fl_relative,l_team:516:fill:spot.png,w_1.0,h_1,x_0.5,y_0,fl_no_overflow,e_distort:100p:0:200p:0:200p:100p:0:100p/fl_relative,l_team:515:logo:spot:current,w_0.38,x_-0.25,y_-0.16/fl_relative,l_team:516:logo:spot:current,w_0.38,x_0.25,y_0.16/w_750/team/515/fill/spot.png"/>
    <series-id system="team-id">516</series-id>
    <episode-num system="original-air-date">2024-06-11 21:30:00</episode-num>
    <episode-num system="game-id">756827</episode-num>
    <new/>
    <live/>
    <sport>Baseball</sport>
    <team lang="en">Visalia Rawhide</team>
    <team lang="en">Modesto Nuts</team>
</programme>
tonywagner commented 3 weeks ago

I added some of that output in https://github.com/tonywagner/mlbserver/commit/fbae4b8af5b05dd3025e5a0a033fbc7b4c93cd37

Are multiple "series-id" values supported, to cover both the home & away teams?

Is original air date necessary? There are no reruns here. :)

I'm open to changing the title/subtitle format, but I don't want to mess with existing setups, if folks depend on the current formatting.

warrentc3 commented 3 weeks ago

Are multiple "series-id" values supported, to cover both the home & away teams?

technically, "series-id" isn't defined in the official xmltv.dtd, but it's one that many clients can use. imo, i think series id is best left to teamid of the team specific channel. that way if one were to "dvr" the save game from both team channels, it could identify it as a separate entity.

safe to say i have spent an unreasonable amount of time munging xmltv over the years.

ahughes03 commented 3 weeks ago

So I have a question that I'm thinking is related to this topic: does the current xml file provide "episode titles"?

I'm asking because with the Jellyfin 10.9 bump, I've lost the ability to record series (I now have to record single episodes at a time). I'm wondering if the pitching matchup can be set as an episode title in a series as a way to get this Jellyfin functionality back up and running?

Here's a Jellyfin Github issue for more info: https://github.com/jellyfin/jellyfin/issues/11976

If this is off-topic, please ignore me and move along :)

warrentc3 commented 3 weeks ago

For reference, here's some sample EPG xmltv output from epg123 and ChannelsDVR for the Phillies game tonight.

epg123

<programme start="20240612230000 +0000" stop="20240613020000 +0000" channel="EPG123.35038.schedulesdirect.org">
    <title>MLB Baseball</title>
    <sub-title>Philadelphia Phillies at Boston Red Sox</sub-title>
    <desc>From Fenway Park in Boston.</desc>
    <date>20240612</date>
    <category>Sports</category>
    <category>Baseball</category>
    <language>en</language>
    <icon src="http://1.2.3.4:9009/image/4baeab6a9f4bad800096543ea2a62af9b58f8b4f67e0555341fff7836299b0c3.jpg" width="480" height="720"/>
    <icon src="http://1.2.3.4:9009/image/1cf007802e2f8cc6b18b9410abe0cc4ca428bf14bb30f238f7b3166de9cf58b7.jpg" width="540" height="720"/>
    <icon src="http://1.2.3.4:9009/image/4d33742a70e7a5593de8127eda81d91ce86e4eb15f8e5a14ae5352dd2b57c9c5.jpg" width="720" height="540"/>
    <icon src="http://1.2.3.4:9009/image/c3ffe3d8c0d777ae3aa7023628f7e258331969430359705cbef875fe43dbb0bc.jpg" width="960" height="540"/>
    <sport>Baseball</sport>
    <team>Philadelphia Phillies</team>
    <team>Boston Red Sox</team>
    <episode-num system="dd_progid">EP04924166.1487</episode-num>
    <episode-num system="original-air-date">2024-06-12 19:00:50</episode-num>
    <video>
        <quality>HDTV</quality>
    </video>
    <new/>
    <live/>
</programme>

image

ChannelsDVR

<programme start="20240612230000 +0000" stop="20240613020000 +0000" channel="1205">
    <title>MLB Baseball</title>
    <sub-title>Philadelphia Phillies at Boston Red Sox</sub-title>
    <desc>From Fenway Park in Boston.</desc>
    <category>Sports</category>
    <category>Sports event</category>
    <category>Baseball</category>
    <icon src="https://tmsimg.fancybits.co/assets/p26159774_tb2_h9_ab.jpg?w=720&amp;h=540"></icon>
    <series-id system="tms">191273</series-id>
    <episode-num system="tms">EP049241661487</episode-num>
    <new></new>
    <live></live>
  </programme>

image

warrentc3 commented 3 weeks ago

So I have a question that I'm thinking is related to this topic: does the current xml file provide "episode titles"?

I'm asking because with the Jellyfin 10.9 bump, I've lost the ability to record series (I now have to record single episodes at a time).

I don't use Jellyfin, but if they're honoring the xmltv.dtd still, then having the game id as episode number at a minimum should be enough to distinguish between programmes.

Episode names aren't derived from the 'title' element, they're derived from the 'sub-title' element. The starting pitcher info is going into description which wouldn't/shouldn't be used by clients to discern different "episodes".

ahughes03 commented 3 weeks ago

Right... so maybe including an episode title output with the game date would allow series recording. Again, sorry to have hijacked the thread, and that epg123 output looks amazing!

warrentc3 commented 3 weeks ago

Right... so maybe including an episode title output with the game date would allow series recording. Again, sorry to have hijacked the thread, and that epg123 output looks amazing!

You didn't hijack. It's quite relevant. Some of the items I mentioned earlier would address the programme uniqueness needed for the "series recording".

Probably could also work out an "episode numbering" strategy that would help too. Such as having the "TV Season" being the season/type/year and "Episode" being the game number and the team id being the "Series ID".

<episode-num system="onscreen" >S2024E65</episode-num>
<episode-num system="mlb.tv">game/72684836</episode-num>

https://github.com/XMLTV/xmltv/blob/master/xmltv.dtd