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

Fix stalls for demuxed content when reconnect after connection is broken #183

Merged
merged 1 commit into from
Aug 9, 2018
Merged

Fix stalls for demuxed content when reconnect after connection is broken #183

merged 1 commit into from
Aug 9, 2018

Conversation

OshinKaramian
Copy link
Contributor

We have been seeing issues with streams starting back up after a disconnect.

To reproduce:

  1. Load demuxed content, a sample can be found: https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8
  2. Allow the buffer to fill up.
  3. Kill your internet connection
  4. Allow the buffer to run out
  5. Reconnect

Playback should continue, but instead it stays in a frozen state.

Description

Without this fix, if there are separate audio/video streams that are loaded, the player will download the video streams (not the audio streams) and playback will freeze.

I believe it is due to https://github.com/videojs/http-streaming/blob/master/src/media-groups.js#L189 since that will set the activePlaylistLoader to null here: https://github.com/videojs/http-streaming/blob/master/src/media-groups.js#L37 -> https://github.com/videojs/http-streaming/blob/master/src/master-playlist-controller.js#L484 -> https://github.com/videojs/http-streaming/blob/master/src/master-playlist-controller.js#L257. Thus the audioSegmentLoader is never restarted (and playback freezes).

There could be a better fix here, but I'm a little unclear what that might look like/how much work that would be (so any input there would be appreciated.

Specific Changes proposed

Restart the audioSegmentLoader if the tech is not in a paused state.

Requirements Checklist

  • Feature implemented / Bug fixed
  • If necessary, more likely in a feature request than a bug fix
  • Reviewed by Two Core Contributors

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants