-
Notifications
You must be signed in to change notification settings - Fork 67
update DVR Window Range for livestreams with infinite window size #233
update DVR Window Range for livestreams with infinite window size #233
Conversation
app/js/mss/MssFragmentController.js
Outdated
@@ -100,20 +100,22 @@ Mss.dependencies.MssFragmentController = function() { | |||
return; | |||
} | |||
// In case of live streams, update segment timeline according to DVR window | |||
else if (manifest.timeShiftBufferDepth && manifest.timeShiftBufferDepth > 0) { | |||
else if ((manifest.timeShiftBufferDepth && manifest.timeShiftBufferDepth > 0) || manifest.canSeek ) { |
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 we can assume that if CanSeek=TRUE then we have systematically a DVRWindowLength > 0.
Then the test could be simply:
if (manifest.canSeek)
Another solution, maybe more relevant, is to set timeShiftBufferDepth
to Inifinity (in MssParser) if DVRWindowLength
is not set and if CanSeek=TRUE
.
But then we have to ensure it has no side effect.
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.
Going for manifest.canseek only would be cleaner, yes.
However, we can't rely on the canseek property actually being available in the manifest:
<SmoothStreamingMedia MajorVersion="2" MinorVersion="2" TimeScale="10000000" IsLive="TRUE" Duration="0" LookAheadFragmentCount="2" DVRWindowLength="300000000">
(from Azure Media Live Stream)
we'd have to set the canSeek property in the parser based on DVRWindowLength > 0 if the property is missing in XML manifest.
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.
Yes, ok for considering missing CanSeek
property when DVRWindowLength
is > 0.
Now we have to check if we can set DVRWindowLength
to Infinity by default if not set & CanSeek=TRUE
984b27c
to
e6a485a
Compare
Thanks for the pointer regarding |
Hi @IcoDeveloper , can you update the PR so that it integrates the changes as we discussed? |
@IcoDeveloper , the Pr seems to be ok in fact. I have updated to clean the code and tested on my side. |
Workaround for DVRWindow Range not updating on live MSS stream with infinite DVR window size #232