From 395eb52b37b7295672a16fa8b2f565ae29eadd6d Mon Sep 17 00:00:00 2001 From: CastagnaIT Date: Wed, 21 Aug 2024 16:29:43 +0200 Subject: [PATCH 1/4] [StreamUtils] Removed inputstream.adaptive.manifest_type This is obsolete already deprecated on Kodi 21 --- src/iptvsimple/utilities/StreamUtils.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/iptvsimple/utilities/StreamUtils.cpp b/src/iptvsimple/utilities/StreamUtils.cpp index 76eddc79..d3a72554 100644 --- a/src/iptvsimple/utilities/StreamUtils.cpp +++ b/src/iptvsimple/utilities/StreamUtils.cpp @@ -106,7 +106,7 @@ void StreamUtils::SetAllStreamProperties(std::vector Date: Wed, 21 Aug 2024 17:01:42 +0200 Subject: [PATCH 2/4] [StreamUtils] Add smoothstreaming mimetype for ISAdaptive --- src/iptvsimple/utilities/StreamUtils.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/iptvsimple/utilities/StreamUtils.cpp b/src/iptvsimple/utilities/StreamUtils.cpp index d3a72554..ae82daba 100644 --- a/src/iptvsimple/utilities/StreamUtils.cpp +++ b/src/iptvsimple/utilities/StreamUtils.cpp @@ -107,7 +107,8 @@ void StreamUtils::SetAllStreamProperties(std::vector Date: Thu, 22 Aug 2024 18:32:11 +0200 Subject: [PATCH 3/4] [StreamUtils] Always set headers and mimetype for inputstream.adaptive --- src/iptvsimple/utilities/StreamUtils.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/iptvsimple/utilities/StreamUtils.cpp b/src/iptvsimple/utilities/StreamUtils.cpp index ae82daba..cda87912 100644 --- a/src/iptvsimple/utilities/StreamUtils.cpp +++ b/src/iptvsimple/utilities/StreamUtils.cpp @@ -22,7 +22,15 @@ using namespace iptvsimple::utilities; void StreamUtils::SetAllStreamProperties(std::vector& properties, const iptvsimple::data::Channel& channel, const std::string& streamURL, bool isChannelURL, std::map& catchupProperties, std::shared_ptr& settings) { - if (ChannelSpecifiesInputstream(channel)) + // Check if the channel has explicitly set up the use of inputstream.adaptive, + // if so, the best behaviour for media services is: + // - Always add mimetype to prevent kodi core to make an HTTP HEADER requests + // this because in some cases services refuse this request and can also deny downloads + // - If requested by settings, always add the "user-agent" header to ISA properties + const bool isISAdaptiveSet = + channel.GetProperty(PVR_STREAM_PROPERTY_INPUTSTREAM) == INPUTSTREAM_ADAPTIVE; + + if (!isISAdaptiveSet && ChannelSpecifiesInputstream(channel)) { // Channel has an inputstream class set so we only set the stream URL properties.emplace_back(PVR_STREAM_PROPERTY_STREAMURL, streamURL); @@ -40,7 +48,7 @@ void StreamUtils::SetAllStreamProperties(std::vector Date: Fri, 23 Aug 2024 13:00:39 +0200 Subject: [PATCH 4/4] changelog and version 21.8.6 --- pvr.iptvsimple/addon.xml.in | 2 +- pvr.iptvsimple/changelog.txt | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/pvr.iptvsimple/addon.xml.in b/pvr.iptvsimple/addon.xml.in index d26e36b5..adebeec3 100644 --- a/pvr.iptvsimple/addon.xml.in +++ b/pvr.iptvsimple/addon.xml.in @@ -1,7 +1,7 @@ @ADDON_DEPENDS@ diff --git a/pvr.iptvsimple/changelog.txt b/pvr.iptvsimple/changelog.txt index f153da49..2b1b261c 100644 --- a/pvr.iptvsimple/changelog.txt +++ b/pvr.iptvsimple/changelog.txt @@ -1,3 +1,9 @@ +v21.8.6 +- Always add mimetype for inputstream.adaptive +- Better handled user-agent header for inputstream.adaptive use cases +- Fix missing manifest user-agent header for inputstream.adaptive +- Add missing SmoothStreaming mimetype for inputstream.adaptive + v21.8.5 - Translations updates from Weblate - be_by, de_de, es_es, it_it, pt_br, sl_si, zh_cn