INTERACT FORUM

Windows => Television => Topic started by: BryanC on August 17, 2020, 06:10:35 pm

Title: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: BryanC on August 17, 2020, 06:10:35 pm
I have IPTV (.m3u) xml files, example:

Code: [Select]
#EXTM3U
#EXTINF:0 group-title="USA",US: PBS | HD
#EXTGRP:USA SPORTS
https://address-to-channel.com/pbs
#EXTINF:0 group-title="USA",US: Create HD
#EXTGRP:USA
https://address-to-channel.com/create

When I import the file into MC it breaks up the channels as separate .ts library entries. I assign them a custom tag (IPTV) and use them in Theater View. Works great.

But what would be really nice is if I could assign EPG guide information to those files, so that I could use the TV guide. I could see this happening in one of two ways...either supporting this XML format directly in the television setup (which would be nice to auto-assign channel names so matching them to EPG data is easier) or simply allowing us to use files when adding "channels" in TV Options>Manage Channels. I think that this would be an easy change that would allow us to assign EPG information to IPTV streaming channels.

At the bare minimum it would be nice if we could get "Channel" added to the video Media Subtypes so that we could display and categorize them a bit easier.
Title: Re: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: Yaobing on August 18, 2020, 08:57:10 pm
Sounds like a feasible idea.
Title: Re: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: BryanC on August 23, 2020, 08:39:14 am
Could we also time-shift .ts streams? Currently I can pause it and it seems to buffer, but it's not possible to seek. That would round out IPTV functionality.
Title: Re: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: Yaobing on August 23, 2020, 09:19:42 am
I am working on time-shifting.
Title: Re: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: Yaobing on February 12, 2021, 09:20:40 am
Can you send me a sample m3u file for IPTV channels?
Title: Re: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: Yaobing on March 19, 2021, 01:35:52 pm
Code: [Select]
#EXTM3U
#EXTINF:0 group-title="USA",US: PBS | HD
#EXTGRP:USA SPORTS
https://address-to-channel.com/pbs
#EXTINF:0 group-title="USA",US: Create HD
#EXTGRP:USA
https://address-to-channel.com/create

What are the meanings of these parameters?

Title: Re: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: Yaobing on March 22, 2021, 01:24:44 pm
Code: [Select]
#EXTM3U
#EXTINF:0 group-title="USA",US: PBS | HD
#EXTGRP:USA SPORTS
https://address-to-channel.com/pbs
#EXTINF:0 group-title="USA",US: Create HD
#EXTGRP:USA
https://address-to-channel.com/create

What are the meanings of these parameters?

I think I figured it out.  The last line before the next #EXTINFO is the URL.  The last part of each #EXTINFO: line (after ',') is the channel/station name.  The rest of the line are just extra info, which is not essential (but we can try parsing as much as we can).
Title: Re: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: Hendrik on March 22, 2021, 06:03:02 pm
M3U is a rather "abused" playlist for all sorts of things these days. The tags starting with a hash (#) always preceed the URL they apply to, and as you figured out, EXTINF contains the "title", or in this case channel name, typically in the format of "#EXTINF:<duration>,<title>", but the duration field is typically 0 or -1 for TV, as well as being used to include various extra tags, with the title being the last segment after the comma.

Much of that is documented here, including a few IPTV exclusive quirks like the key-value tags and EXTGRP
https://en.wikipedia.org/wiki/M3U
Title: Re: Support using library files as TV channels so that we can use the EPG for IPTV
Post by: Yaobing on March 24, 2021, 09:53:23 am
Thanks Hendrik!