Fix average bandwidth value from decaying when the system bandwidth being constant #1137
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.
Description
In the
movingAverageBandwidthSelector
method, we are using this line to calculate the average.I see a problem here.
To explain with an example,
I have an average value of
1000
currently and a new chunk got downloaded with a bandwidth of500
. And the next chunk is downloaded after1 second
.The
systemBandwidth
is updated after each chunk gets downloaded.So, my expectation is this
500
should be contributed to the average only once until the next chunk gets downloaded.But, as the
checkABR
method is getting called for every250ms
, this500
is getting contributed4 times
until the next chunk gets downloaded, by which the average value is getting decreased gradually because thesystemBandwidth
is being constant until then.You can check the logs attached below.
Video-js-ABR.log
Specific Changes proposed
systemBandwidth
changes and is greater than zero.Requirements Checklist