-
Notifications
You must be signed in to change notification settings - Fork 246
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Aborting playback in the event of commercial breaks or X-discontinuity with the inputstream.adaptive addon #1507
Comments
as specified on wiki "WIP" page ADS support is not well supported but atm i have no plan to improve HLS atm |
Ok @CastagnaIT there is currently no short-term solution to the problem in the event of commercial breaks or X-discontinuity (ADS-streams). Greetings Weri |
I had the same problem in one of my addons. Solution is using proxy (HTTP server) and removing |
looks like that sometime the provider send an empty child manifest update
no segments and EXT-X-ENDLIST signalled, on Kodi 21 you should read the log error EDIT: usually EXT-X-ENDLIST is used to signal the end of the stream |
Ok @CastagnaIT that sounds plausible to me. Is there a way to work around the problem in Kodi so that the stream continues running even though there is a signal to stop? Greetings Weri |
by reading specs seem that our parser forgot to check EVENT value to playlist type EDIT: but if EXT-X-ENDLIST is signalled its not so clear to me if its right or not ignore it on live streams, im not so expert but for now sound like a provider encoder bug |
@CastagnaIT , @glennguy For me it wouldn't be bad if a live stream never ended. In my opinion, it even makes sense that I consciously stop a live stream if I no longer want to watch it. Greetings Weri |
not all live shows are like "TV" so endless stream, there are streams that end when the live is finished |
Well @CastagnaIT I understand. Maybe it makes sense to initially limit the workaround to the provider “Pluto.TV”. If necessary, this could then be expanded to include additional providers if an encoder bug also exists there. Would it be possible to provide a temporary fix for testing purposes? I could then test the behavior during live streams with different providers. Greetings Weri |
I can proxy Pluto add-on to make any changes we think are needed
…On Wed, 13 Mar 2024, 21:32 werimail, ***@***.***> wrote:
not all live shows are like "TV" so endless stream, there are streams that
end when the live is finished
i would like to avoid stall in a perpetual buffering the video player
Well @CastagnaIT <https://github.com/CastagnaIT> I understand. Maybe it
makes sense to initially limit the workaround to the provider “Pluto.TV”.
If necessary, this could then be expanded to include additional providers
if an encoder bug also exists there.
Would it be possible to provide a temporary fix for testing purposes? I
could then test the behavior during live streams with different providers.
Greetings Weri
—
Reply to this email directly, view it on GitHub
<#1507 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABPQAKLXRPM55PSMMZ2ODUTYYAFILAVCNFSM6AAAAABEQBC44CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOJTHAYTKMBYGI>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
That doesn't sound bad @matthuisman I'm happy to make myself available for testing purposes. Greetings Weri |
i would wait @glennguy answer that he could know better HLS maybe a kind of workaround could be, |
Sorry for the delay in getting involved I think that the playlist refresh shown above is some sort of error and not a valid playlist... don't know if it's technically invalid according to RFC but it still makes no sense.
This could certainly work around this situation but it's a very specific hack of sorts. Maybe something more generic like a playlist property to ignore the endlist tag? The problem then becomes if a live playlist actually ends we are stuck forever. Not a problem with Pluto most likely, but for example with Matt's Kayo Sports add-on it would be. Then do we add a further condition to check if there has been X amount of refreshes or Y time passed with no segment updates to abort playback? Is this good or bad design? I'm not tied to anything in particular. If we can somewhat agree on a solution that resolves the issue in some way and isn't too hard to maintain then I'm all good :) |
considering the maintenance aspect a property to ignore endlist tag is much easier to implement, however, there is a consideration of stopping updates (and playback) if we don't receive more segments after some updates for the new prop probably the best thing is add a generic "manifest_config" where contains a json dict value, but before doing this is necessary the merge of the PR rework also make a release because there are really too much changes |
Hi @CastagnaIT maybe it's also a bit offtopic... but I had to notice that after the release of the rework with ISA version 21.4.4 the fix #1459 no longer "works". I used now Kodi 21RC2. The subtitles on the German broadcasters ARD and ZDF are displayed within the HLS streams no longer output. Did something “slip out” here (see also #1109 ) ??? With ISA version 21.4.3 this still works as usual! Greetings Weri |
I expected some regression big changes and too much to test... |
however not depends from PR #1459 something dont work with pts, the following code inputstream.adaptive/src/Session.cpp Lines 1056 to 1058 in a9debfa
compare DTSorPTS from the sub reader and on the other side of < the audio/video readers, and so on but sub pts value come from manifest and pts from a/v come from a/v packet itself that have another kind of value happen for example atm i have i dont remember how was working before, i need to find the last working commit and place some debug lines |
compiled previous release 21.4.3 and subtitle "works",
the 10788000000 pts is from subtitles reader, 10788000000 and 20837327155 pts's arent comparable @glennguy seem i found another old ISA bug |
Hi @CastagnaIT , that sounds to me like there is a solution to the problem of subtitles not being displayed for the current ISA version?! Is a separate issue required for this or is it fixed straight away? Greetings Weri |
i have two ideas to solve the "new-old" problem
Is the initial problem about ad breaks or X-discontinuity abort playback still present? |
Do you mean the current ISA version 21.4.4? Have you changed anything about this in the new version? EDIT: I just tested with the current ISA version 21.4.4 and Kodi 21RC2. Unfortunately, the initial problem about ad breaks or X-discontinuity abort playback still occurs there. Greetings Weri |
i was testing more the original issue problem but i found new stream weirdness Problem 1: EXT-X-PROGRAM-DATE-TIME sometime is not precise, so incosistent, the same segment with X pts, after a manifest update dont keep the same X pts i have attached some manifest updates to show the problems: on the first manifest "manifest_1712578185_child-video.txt" the EXT-X-MEDIA-SEQUENCE is "6" on next file from "manifest_1712578212_child-video.txt" become "2", i am pretty confused... this dont seem to be a regular HLS |
O @CastagnaIT that doesn't look good at all...in my opinion, the example stream is also officially offered by Pluto.TV. By the way...have you made any progress with the problem regarding the missing subtitles in the current ISA version 21.4.4? Has @glennguy commented on this before? Greetings Weri |
i opened a new PR to "add back" again the old workaround |
Ah ok, I must have missed @CastagnaIT , sorry... the first tests with PR #1522 are also positive, the subtitles are now displayed correctly again! Thanks for the dismantling and greetings Weri |
Apologies for my delays. I did start typing up a big reply to this thread on the weekend and forgot to finish it :/ |
Hi @CastagnaIT Unfortunately, another tests have shown that the subtitles are only displayed for a short period of time (a few seconds) and then disappear again. Is this also related to the problem here: #24777? EDIT: further testing has shown that this only applies to HLS streams like https://mcdn.daserste.de/daserste/de/master.m3u8. DASH streams (http://mcdn.daserste.de/daserste/dash2/manifest.mpd) are not affected by this phenomenon. As a basis I used the current stable Kodi version 21.0 with the current ISA version from here: https://jenkins.kodi.tv/blue/organizations/jenkins/xbmc%2Finputstream.adaptive/detail/PR-1522/1/artifacts EDIT2: another note... with ISA version 21.4.3 and fix #1496 and Kodi version 21.0, the subtitle display also works permanently with the HLS streams?! Greetings Weri |
this is a side effect of two problems
fix on #1526 PS. CI builds for android are broken, due to recent changes on xbmc repo |
Ok @CastagnaIT, here are the manifest files for the mentioned protocol Edit: by the way...this morning I temporarily switched back to the previous version 1532/7. This has been working for me without any problems so far... Greetings Weri |
@werimail by reading manifests+log looks similar to mine i have rerun the CI builds, i can suggest to try reinstall the binary |
Out of curiosity, do you know why the web url of pluto tv channels crash within a few seconds? |
Happens when you use the same url as another person. The sid= argument must be unique |
if i tried to play that link, after 2-3 manifests the server send only empty manifests with #EXT-X-ENDLIST |
Pluto TV is sure a complex platform, the Roku url header results in freezes and shutters every few seconds but the stream doesn't crash while the Samsung and Vizio headers work fine. Each to their own I guess... |
Thanks @CastagnaIT so far the new version is working quite well for me. I will continue testing in various environments (Windows, Android) over the next few days, hopefully with positive results. Greetings Weri |
a new ISA version has been released with the patches |
Cool, then i will do a release for pvr.plutotv utilizing the new properties. |
ill also update my pluto addon to set this new properties. |
they should be ignored by old versions |
something changed recently? seems pluto playback is again pretty unstable |
Same for pvr.plutotv |
you can try enable/disable workarounds introduced for pluto since has malformed manifests that corrupt the playlist in any possible way the interlude break "pluto logo" often is added not caring if it does not match the current period / segments PTS on last ISA release (of 2 weeks ago) there are no changes that affect it |
Is it possible to have a workaround for whenever you switch to channel while ads are playing? Most Pluto TV channels don't load unless ads are done playing so its a little annoying waiting game. |
as said on my previous comment, some pluto channels are out-of-specs, so customized by the provider If someone is able to improve the situation, you are free to propose a code change as long as it does not affect the standard HLS behaviour, acceptable if the change is not too large and can be enabled/disabled as the others workarounds I've already spent a week on it to implement the workarounds for pluto, from my part i won't waste any more time for a single provider that provides out-of-spec streams |
I completely understand that. However, pluto is one of the biggest providers imo, many people are using pluto, esp. as it is free to use. |
Huge fact, many channels from other regions can also be used which makes this possibly the biggest provider. The workarounds also do not stick when using playlist editors that makes life a whole lot easier when adding a new channel. |
if you use playlist editors with STRM or M3U8 files, just to make it clear HLS workarounds will never be enabled by default |
Unless I’m doing something wrong, I don’t see any difference in the streams with the workarounds or does iptvmerge ignore KODIPROP? @matthuisman |
IPTV merge should bring through the Kodi props. You can easily look at the output playlist to confirm.... |
That's where I'm not sure what is going on. The output iptvmerge playlist simply shows this line for the Pokemon channel. This is the line from the pluto tv playlist I added to iptvmerge. Feedback is appreciated. |
Pretty sure Kodi props have to he in correct order. Try it before extinf
…On Fri, 25 Oct 2024, 06:43 MajinLugia, ***@***.***> wrote:
IPTV merge should bring through the Kodi props. You can easily look at the
output playlist to confirm....
That's where I'm not sure what is going on.
The output iptvmerge playlist simply shows this line for the Pokemon
channel.
#EXTINF:-1 group-title="Kids" tvg-chno="27"
tvg-id="6675c7868768aa0008d7f1c7" tvg-logo="
https://images.pluto.tv/channels/6675c7868768aa0008d7f1c7/colorLogoPNG.png"
, Pokémon
plugin://plugin.program.iptv.merge/?_=play_channel&slug=18.jjwF%2Fw
This is the line from the pluto tv playlist I added to iptvmerge.
#EXTINF:-1 tvg-id="6675c7868768aa0008d7f1c7"tvg-logo="
https://images.pluto.tv/channels/6675c7868768aa0008d7f1c7/colorLogoPNG.png"tvg-chno="27"group-title="Kids",Pokémon
#KODIPROP:inputstream.adaptive.manifest_config={"hls_ignore_endlist":true,"hls_fix_mediasequence":true,"hls_fix_discsequence":true}
https://stitcher-ipv4.pluto.tv/v1/stitch/embed/hls/channel/6675c7868768aa0008d7f1c7/master.m3u8?deviceType=vizio-watchfreeplus&deviceMake=vizio&deviceModel=vizio&deviceVersion=unknown&appVersion=unknown&deviceLat=0&deviceLon=0&deviceDNT=%7BTARGETOPT%7D&deviceId=%7BPSID%7D&advertisingId=%7BPSID%7D&us_privacy=1YNY&vizio_app_domain=%7BAPP_DOMAIN%7D&vizio_app_name=%7BAPP_NAME%7D&profileLimit=&profileFloor=&embedPartner=vizio-watchfreeplus
Feedback is appreciated.
—
Reply to this email directly, view it on GitHub
<#1507 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABPQAKNIPYEFD4WG4VXHERDZ5EWT5AVCNFSM6AAAAABEQBC44CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZVHE2TONRSHE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Oh wait. In IPTV merge turn off use merge proxy setting. When it uses that
it adds Kodi props internally
…On Fri, 25 Oct 2024, 06:43 MajinLugia, ***@***.***> wrote:
IPTV merge should bring through the Kodi props. You can easily look at the
output playlist to confirm....
That's where I'm not sure what is going on.
The output iptvmerge playlist simply shows this line for the Pokemon
channel.
#EXTINF:-1 group-title="Kids" tvg-chno="27"
tvg-id="6675c7868768aa0008d7f1c7" tvg-logo="
https://images.pluto.tv/channels/6675c7868768aa0008d7f1c7/colorLogoPNG.png"
, Pokémon
plugin://plugin.program.iptv.merge/?_=play_channel&slug=18.jjwF%2Fw
This is the line from the pluto tv playlist I added to iptvmerge.
#EXTINF:-1 tvg-id="6675c7868768aa0008d7f1c7"tvg-logo="
https://images.pluto.tv/channels/6675c7868768aa0008d7f1c7/colorLogoPNG.png"tvg-chno="27"group-title="Kids",Pokémon
#KODIPROP:inputstream.adaptive.manifest_config={"hls_ignore_endlist":true,"hls_fix_mediasequence":true,"hls_fix_discsequence":true}
https://stitcher-ipv4.pluto.tv/v1/stitch/embed/hls/channel/6675c7868768aa0008d7f1c7/master.m3u8?deviceType=vizio-watchfreeplus&deviceMake=vizio&deviceModel=vizio&deviceVersion=unknown&appVersion=unknown&deviceLat=0&deviceLon=0&deviceDNT=%7BTARGETOPT%7D&deviceId=%7BPSID%7D&advertisingId=%7BPSID%7D&us_privacy=1YNY&vizio_app_domain=%7BAPP_DOMAIN%7D&vizio_app_name=%7BAPP_NAME%7D&profileLimit=&profileFloor=&embedPartner=vizio-watchfreeplus
Feedback is appreciated.
—
Reply to this email directly, view it on GitHub
<#1507 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABPQAKNIPYEFD4WG4VXHERDZ5EWT5AVCNFSM6AAAAABEQBC44CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZVHE2TONRSHE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Not really sure if its my tv but when I turn off the proxy, it doesn't want to play some channels including Samsung channels. Weird. |
i tested with the below
Without IPTV Merge proxy enabled, I got the output playlist as
Which looks fine. With the IPTV Merge proxy I got
I then confirmed when I play that merge path, the kodi properties are still set as expected This is because IPTV Merge stores them and adds them itself when its called to play that channel slug So I see no issue with IPTV Merge and Kodi properties Also, if you dont have that Merge proxy enabled, you won't get the default user-agent I add which is not a Kodi user-agent. UPDATE: (IPTV Merge proxy does these automatically) |
Yeah this is an odd problem, I have opened an issue over at iptv simple and for some reason I see in the log that I get HTTP error 403 Forbidden, definitely didn’t happen months ago…. |
See my update to my last comment :) |
I swear you are the best! Thank you so much for the help! Got it working now! |
Bug report
Describe the bug
Here is a clear and concise description of what the problem is:
Hi @CastagnaIT I noticed that the stream from DAZN Darts x PlutoTV simply stops after a certain time and you end up back in the Kodi main menu. It doesn't matter which Kodi version is used. According to the responsible developer @matthuisman , this is due to the lack of full support for ad breaks or X-discontinuity in the inputstream.adaptive addon. (matthuisman/slyguy.addons#673 (comment))
For the same stream: https://pluto.tv/de/live-tv/64b67f0424ade50008a3be17, playback via browser works without any problems.
Expected Behavior
Here is a clear and concise description of what was expected to happen:
The stream should run through without stopping after a certain time.
Actual Behavior
The stream from DAZN Darts x PlutoTV simply stops and ends up back in the Kodi main menu.
Possible Fix
To Reproduce
Steps to reproduce the behavior:
Debuglog
The debuglog can be found here:
https://github.com/matthuisman/slyguy.addons/files/14551853/kodi.log
MPD/M3U8s/ISM
An example or copy of a manifest (or manifests for HLS - master and variants) can be found here:
https://r.mjh.nz/PlutoTV/64b67f0424ade50008a3be17-alt.m3u8
Screenshots
Here are some links or screenshots to help explain the problem:
Additional context or screenshots (if appropriate)
Here is some additional context or explanation that might help:
Your Environment
Used Operating system:
Android
iOS
tvOS
Linux
OSX
Windows
Windows UWP
Operating system version/name: Android 10 / Windows 10
Kodi version: 18/19/20/21.0-BETA3
inputstream.adaptive version: inputstream.adaptive v21.4.3 or similar
note: Once the issue is made we require you to update it with new information should that be required.
Team Kodi will consider your problem report however, we will not make any promises the problem will be solved.
The text was updated successfully, but these errors were encountered: