Fix stalls for demuxed content when reconnect after connection is broken #183
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We have been seeing issues with streams starting back up after a disconnect.
To reproduce:
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
tonull
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 theaudioSegmentLoader
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