-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Segmenduration wrong #2940
Comments
@PolynomialDivision, thanks for reporting. The way we manage some of the objects you reference here (voRepresentation.segments, that keeps the next 10 segments to be played for a given representation) is going to suffer a big change in dash.js v3.0 (to be released shortly). So, the issue you mention that is affecting to ABR is going to be fixed "collaterally". I will double check to be sure of this. |
Thanks for your answer. |
Not yet. Still is not published but it will shortly. I will keep you updated. |
On the dash.js meeting it was said that there is only getNextSegment() left for the scheduler. |
There is some interesting Pull Request #3003. |
Not really, it is related with the index of the current level as it is retrieved by the reference player, when playing multiperiod streams. |
I will send a PR in the next few hours fixing this + extra improvements. |
@PolynomialDivision, already fixed in the PR I am preparing for v3.0.1. Still not published because I am including on it other fixes related with timing. I will let you know once finished. No later than early next week so it is ready for the code freeze for v3.0.1. |
Actually, is this now fixed? |
The getQualityForBitrate function has this if statement:
dash.js/src/streaming/controllers/AbrController.js
Line 499 in 4ee40ce
Here the Fragmentduartion is fetched:
dash.js/src/streaming/controllers/AbrController.js
Line 498 in 4ee40ce
At this line:
dash.js/src/dash/DashAdapter.js
Line 95 in 4ee40ce
What is this line doing?
I have a MPD file specifying the durations by
d='...'
.I think voRepresentation.segmentDuration is always
NaN
.And so
voRepresentation.segments[0].duration
is always taken.Is this always the first segement? What if my durations varies?
What is exactly this list
voRepresentation.segments
?As I understand it, it contains all elements for one Representation?
Why can't I use the element here that I want to fetch?
Is there some way to get the index of the element I want to fetch?
Here is exactly what I mean:
dash.js/src/streaming/thumbnail/ThumbnailTracks.js
Line 169 in 4ee40ce
I just need to get the duration for the next segment in the list that should be downloaded or checked next... Is there a way to get this segment number?
Furthermore, the segment duration is wrong for the insufficient buffer rule leading to weak download behaviour and stalling.
dash.js/src/streaming/rules/abr/InsufficientBufferRule.js
Line 88 in 96898ae
The text was updated successfully, but these errors were encountered: