Add forgotten bufferedStart setting in SegmentInventory #1284
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.
The RxPlayer maintains an inventory of which segments should be right now in browser buffers and at which position, through the
SegmentInventory
structure.This is a complex part of the code which has to be frequently re-synchronized with the browser's buffer yet it allows a LOT of optimizations (preventing reloads when not needed, allowing to not re-load segments on seek, allowing fast-switching, allowing to implement in-JS buffer-memory limitations, allowing more efficient buffer-based adaptive algorithms, allowing to advertise the current played quality...).
I recently found out that
bufferedStart
- a mechanism to indicate the probable start time in seconds of a segment in the browser's buffer in that structure, was not set if the browser's buffer had a large time range of un-categorized buffered data before that segment. This is just something that I forgot to add and its mirror "end" valuebufferedEnd
is actually set in similar conditions.Consequence of not setting this is a little unclear, as the RxPlayer has a lot of resilience in that area, but setting it should normally improve things...!