Skip to content
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

HLS live streams just stops no errors #6251

Open
dbanbahji opened this issue Feb 16, 2024 · 14 comments
Open

HLS live streams just stops no errors #6251

dbanbahji opened this issue Feb 16, 2024 · 14 comments
Labels
component: HLS The issue involves Apple's HLS manifest format priority: P1 Big impact or workaround impractical; resolve before feature release type: bug Something isn't working correctly
Milestone

Comments

@dbanbahji
Copy link

dbanbahji commented Feb 16, 2024

Have you read the FAQ and checked for duplicate open issues?
yes

If the problem is related to FairPlay, have you read the tutorial?

not related to fairplay
What version of Shaka Player are you using?

demo page

Can you reproduce the issue with our latest release version?
yes
Can you reproduce the issue with the latest code from main?
yes

Are you using the demo app or your own custom app?
demo

If custom app, can you reproduce the issue using our demo app?

yes
What browser and OS are you using?

chrome latest
For embedded devices (smart TVs, etc.), what model and firmware version are you using?
n/a

What are the manifest and license server URIs?

https://install.perfectgame.tv/speed/broadcast/15/desktop-playlist.m3u8

What configuration are you using? What is the output of player.getConfiguration()?
demo page default

What did you do?
play stream downloads 1-2 segments then stops downloading anymore, manifest continue to download and be updated.
ts stream with no encrtyption.

What did you expect to happen?

playback to continue

@dbanbahji dbanbahji added the type: bug Something isn't working correctly label Feb 16, 2024
@dbanbahji
Copy link
Author

dbanbahji commented Feb 16, 2024

seems to work fine on hlsjs videojs bitmovin etc and safari native. same behavior on chromecast sdk with just shaka. works with the MPL player.

@shaka-bot shaka-bot added this to the v5.0 milestone Feb 16, 2024
@dbanbahji
Copy link
Author

@avelad i checked 4.5.0 and i dont see any issues with the stream freezing.
is it possible transmuxers changed?
but i do see some of these after a discontinuty. seems like that might be seperate issue. is that worth another issue?
https://v4-5-0-dot-shaka-player-demo.appspot.com/demo/#audiolang=en-US;textlang=en-US;uilang=en-US;asset=https://install.perfectgame.tv/speed/broadcast/15/desktop-playlist.m3u8;panel=CUSTOM%20CONTENT;build=uncompiled

@joeyparrish
Copy link
Member

If the transmuxer were to blame, I think we would still see network requests for segments. It stops requesting segments, so I think that is a bug in HlsParser, SegmentIndex, or StreamingEngine.

@joeyparrish joeyparrish added component: HLS The issue involves Apple's HLS manifest format priority: P1 Big impact or workaround impractical; resolve before feature release labels Feb 27, 2024
@joeyparrish
Copy link
Member

joeyparrish commented Feb 27, 2024

I just confirmed this issue with the latest release, v4.7.11.

No configuration required. Quick link to repro:

https://shaka-player-demo.appspot.com/demo/#asset=https://install.perfectgame.tv/speed/broadcast/15/desktop-playlist.m3u8

@joeyparrish
Copy link
Member

Update: while I was writing those last messages, network requests started happening again. It's still not playing, but my previous guesses about the root cause may be invalid.

@joeyparrish
Copy link
Member

In v4.7.0, v4.6.0, v4.5.0, and v4.4.0 it is broken, but with different symptoms:

  • "Possible encoding problem warnings"
  • Repeated segments in buffer
  • Jumping to catch up to seek range

It appears to be working in v4.3.0. I'll bisect through that range to see what changed. Likely the introduction of our transmuxer. :-)

@dbanbahji
Copy link
Author

ive seen the possible encoding problems errors with media tailor streams as well for ad insertions on hls.
that link and this stream doesnt have any ad insertion just a disconintuty and cue markers to put in ads if they went through an ad server. so you might get 2 bugs here for the price of one :-)

@joeyparrish
Copy link
Member

According to my bisection, your stream works fine before 50c9df4, PR #4870, which was meant to fix issue #4589. Between that and v4.7.0, we see the encoding problem logs I mentioned above. There is some other point at which we seem to transition to the "just stops" symptom.

@dbanbahji
Copy link
Author

if you need more content with dynamic ad breaks, discontinuities, and mediatailor streams encoded/packaged by ateme, let me know. i still see those possible possible encoding problems, repeated segements/audio/frames/freezing, Jumping forward to catch up with the seek range with 4.7.11.

i sometimes see also segment_index.js:522 Assertion failed: SegmentReferences are incorrect and log.js:140 Possible encoding problem detected! Unexpected buffered range for reference shaka.media.SegmentReference and a lot of gap jumping but i dont see gaps  in some of these streams/media. most of the time these dont cause too much impact to the stream sync wise or error or playback wise outside of filling up the console.

@joeyparrish
Copy link
Member

All these things are signs of something that is very wrong. They don't always lead to a failed playback, but they point to broken assumptions and/or bad content. (It's hard to tell which is which from the symptoms alone.)

I confirmed your bisection that the "just stops" symptoms start at 776b69d, PR #6059, which is meant to fix issue #5939.

Since reverting that just leads to different problems ("possible encoding problem", repeated segments, etc.), I don't think that is a viable solution.

@dbanbahji
Copy link
Author

dbanbahji commented Feb 27, 2024

i dont think its bad content, ive been testing this on mpl default sdk for the new shaka hls opt in, along with safari native, bitmovin, hlsjs,theo,videojs plays fine on all those. probably just a small bug :-)

@avelad avelad added component: transmuxer The issue involves our built-in transmuxer and removed component: transmuxer The issue involves our built-in transmuxer labels Feb 28, 2024
@avelad
Copy link
Collaborator

avelad commented Feb 28, 2024

Yes, the issue is at 776b69d, and it looks like the same root cause as #6299

@avelad avelad self-assigned this Feb 28, 2024
@dbanbahji
Copy link
Author

yeah that might fix the stopping part, but do you want another issue for the discontinuity ads related errors?

@avelad avelad removed their assignment Mar 25, 2024
@dbanbahji
Copy link
Author

@avelad i do see nightly fixes the just stops behavior. i still see those possible possible encoding problems, repeated segements/audio/frames/freezing,Jumping forward to catch up with the seek range, console errors etc. should i open a new ticket for those?

@avelad avelad modified the milestones: v4.8, v4.9 Apr 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: HLS The issue involves Apple's HLS manifest format priority: P1 Big impact or workaround impractical; resolve before feature release type: bug Something isn't working correctly
Projects
None yet
Development

No branches or pull requests

4 participants