-
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
Dashjs v3 - New Segments Management Model #3003
Dashjs v3 - New Segments Management Model #3003
Conversation
…set fragmented attributes at the end of a period
…treamInfo => in onStreamCanLoadNext use case, the streamInfo is not the active one
…t, useful for multiperiod streams
@@ -40,48 +40,45 @@ function ListSegmentsGetter(config, isDynamic) { | |||
|
|||
let instance; | |||
|
|||
function getSegmentsFromList(representation, requestedTime, index, availabilityUpperLimit) { | |||
function getSegmentByIndex(representation, index) { | |||
const list = representation.adaptation.period.mpd.manifest.Period_asArray[representation.adaptation.period.index]. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe add tests of representation and index parameters
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, that's planned for this PR.
seg.mediaRange = s.mediaRange; | ||
seg.index = s.index; | ||
seg.indexRange = s.indexRange; | ||
function getSegmentByTime(representation, requestedTime) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe add tests of representation and requestedTime parameters
…mbnail_urls Fix thumbnail sample hostnames to point to a hostname with a valid cert
Description
It took long time and lot of back and forth but finally, with this PR, I am proposing the first set of big changes for dash.js v3.
As promised during the last face to face dash.js meeting in Berlin, this PR is coming with a re-architecture of the classes that are in charge of segments management so dash.js is less sensible to segment timing and/or alignment issues. We have been working in a much bigger change (fully rearchitecture dash.js core) during the last months but, given those are requiring more time than expected, what we have done is taking that big refactor and replacing just the parts of dash.js code base that we consider more sensible. That allows us to release faster and start getting feedback from you as soon as possible. We will incorporate all the other changes with a 1 month cadence, including all the fixes for the detected issues.
Most important changes coming in this PR:
Please, I would like to ask you to test this PR as much as possible. I have uploaded it to http://dashjsv3.surge.sh/samples/index.html to make easier the testing phase. We are 200% dedicated to this so, please, feel free to report any issue you find. It is really important for me to get a fully stable version so I will be happy to work immediately on fixing any of your reported issues.
Pending work
Known issues: