add-ons / service.iptv.manager

Integrate TV and radio channels with EPG data from other add-ons in Kodi PVR.
https://github.com/add-ons/service.iptv.manager/wiki
GNU General Public License v3.0
95 stars 28 forks source link

Feature request: Ability to 'merge' channels from different addons #43

Open RobinR1 opened 3 years ago

RobinR1 commented 3 years ago

Currently there are channel specific addons like vrt.nu (één, ketnet, canvas), vier-vijf-zes, vtm go, etc.. and hopefully a lot more in the near future with on-demand content. Some of them also provide live streams, some don't. On the other hand, there are (mainly) live-stream addons like Yelo and TV Vlaanderen which also provide channels already provided by those "on-demand addons" and it would be a nice feature to have the possibility to 'merge' duplicate channels so they behave as a single channel with different sources where you, as a user, can define which addon to use for the on-demand content and which addon for the live-stream. This would definitely increase the Wife Acceptance Factor of this addon :-). This possible feature was discussed first (in dutch) on the facebook group Kodi Vlaanderen.

A possible solution would be to have some sort of channel editor where you can enable or disable a channel, and you can specify which addon is used for the live-stream and which addon is used for the EPG and on-demand content. This way you can edit for example channel "vier", specify that you want live-streams from channel "vier" provided by the Yelo addon and EPG+on-demand content from channel "vier" of the VIER-VIJF-ZES addon. The other channel "vier" that will be in the channel list (as 2 different addons provide that channel) can then manually be disabled (or the channel editor could even propose to the user to disable the other addon which also uses the same channel-id as the ones you defined to be used by the current channel) so that every actual channel is only displayed once by Kodi, but the livestream vs the on-demand content actually comes from different addons. A drawback is that you are limited to merging only 2 addons into one channel. But this implementation may suffice for many users.

Another possible implementation could be that the user can define which channels, all provided by different addons, are actually one and the same channel and then give a preferred order of those addons for each channel. The iptv manager addon should then, for each channel separately, try to acquire as much content from the first preferred addon as possible and then for the next addons in the list add the content that is missing from the addons that come before this one. So if the first addon only provides livestreams, the livestream of this channel will be this one. The next addon in the list for this same channel will then add on-demand content to the channel, but a possible livestream of this addon will be 'discarded' and overridden by the livestream of the first addon. This way many addons can provide data for a specific channel, and the content is provided in an order of preference, filtering out duplicate content. The channel mapping between the addons could even be centrally managed somewhere (possibly community managed) so that this mapping even doesn't need to be done by every independent user of this addon.

But I think, leaving live-streams beside, it will probably be difficult to 'detect' which content from this addon is a duplicate of which content from another addon. I think the "easiest" way to deal with that is to merge the EPG-data of all addons into one, taking the EPG data of the first addon as a base and then adding/replacing EPG data timeslot per timeslot as content for it exists in the other addons. As timeslots may differ between EPG-data from different addons, shows with on-demand content available by another addon should take preference over the EPG-data not containing on-demand content. When timeslots overlap for less than say 10 to 50% (maybe a user setting) or so, the timeslots of the data could even be adjusted so that both shows fit in the final EPG. (maybe even trying to figure out if the naming of the show is similar enough (caps/signs/articles) to mark one as a duplicate of another)

Anyway.. it will probably not be easy to implement but it would be a killer feature! And I think it would be shame to not at least explore this idea here.

dagwieers commented 3 years ago

As was discussed on Facebook this is not easy to do, and even harder to do right in Kodi. But this would be awesome to have and for that reason I am open to discuss this. But we need to think about how the user can manage this, before we attempt to implement something like this.

My main concern is that there is no good way to do this and non-obvious to end-users what is best. Example VRT NU, we have 5 (yes, five!) add-ons offering VRT NU content:

EPG can be very different for all of these.

For VTM GO and VIER-VIJF-ZES have each 4 add-ons to choose from.

dagwieers commented 3 years ago

I documented the integrated Kodi PVR Channel manager in the Frequent questions in the Wiki.