Skip to content

Conversation

@robertbryer
Copy link
Contributor

When a StreamProcessor for a first period is torn down, ABR stops working for the second period. The second period is fixed at whatever quality it's on when this occurs.

This is because abrController.unRegisterStreamType is called, but only after it's been set to the new period. The result is that the second period doesn't have a StreamProcessor and therefore checkPlaybackQuality doesn't get called. The solution here is not to call when keepBuffers is true, the StreamProcessor has already been overwritten.

@dsilhavy dsilhavy added this to the 3.2.1 milestone Feb 8, 2021
@dsilhavy dsilhavy self-requested a review February 8, 2021 09:16
@dsilhavy
Copy link
Collaborator

dsilhavy commented Feb 8, 2021

Thanks @robertbryer very good finding. The bug described here occurs because of the preload functionality. If no preload is performed before the period switch this fix is not required.

@dsilhavy dsilhavy merged commit ef29480 into Dash-Industry-Forum:development Feb 8, 2021
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.

2 participants