Skip to content

Commit 78df4f0

Browse files
Remove experimental maxDecoderRate (#111)
1 parent 5f1be37 commit 78df4f0

2 files changed

Lines changed: 2 additions & 19 deletions

File tree

src/core/Settings.js

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,7 @@ import Events from './events/Events';
7676
* },
7777
* timeShiftBuffer: {
7878
* calcFromSegmentTimeline: false,
79-
* fallbackToSegmentTimeline: true,
80-
* maxDecoderRate: NaN
79+
* fallbackToSegmentTimeline: true
8180
* },
8281
* metrics: {
8382
* maxListDepth: 100
@@ -269,8 +268,6 @@ import Events from './events/Events';
269268
* Enable calculation of the DVR window for SegmentTimeline manifests based on the entries in \<SegmentTimeline\>.
270269
* @property {boolean} [fallbackToSegmentTimeline=true]
271270
* In case the MPD uses \<SegmentTimeline\ and no segment is found within the DVR window the DVR window is calculated based on the entries in \<SegmentTimeline\>.
272-
* @property {number} [maxDecoderRate=NaN]
273-
* The maximum rate your decoder can run at, can be used to overshoot the startup seek in anticpation of delay in hardware e.g.) TVs
274271
*/
275272

276273
/**
@@ -972,8 +969,7 @@ function Settings() {
972969
},
973970
timeShiftBuffer: {
974971
calcFromSegmentTimeline: false,
975-
fallbackToSegmentTimeline: true,
976-
maxDecoderRate: null
972+
fallbackToSegmentTimeline: true
977973
},
978974
metrics: {
979975
maxListDepth: 100

src/streaming/controllers/StreamController.js

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1117,19 +1117,6 @@ function StreamController() {
11171117
// If calcFromSegmentTimeline is enabled we saw problems caused by the MSE.seekableRange when starting at dvrWindow.start. Apply a small offset to avoid this problem.
11181118
const offset = settings.get().streaming.timeShiftBuffer.calcFromSegmentTimeline ? 0.1 : 0;
11191119
startTime = Math.max(startTime, dvrWindow.start + offset);
1120-
1121-
// In hardware playback use optional maxDecoderRate setting to compensate for startup delay
1122-
const maxDecoderRate = settings.get().streaming.timeShiftBuffer.maxDecoderRate;
1123-
if(maxDecoderRate && !isNaN(maxDecoderRate)){
1124-
const seektime = liveEdge - playbackController.getOriginalLiveDelay();
1125-
const segmentDuration = streams[0].getStreamInfo().manifestInfo.maxFragmentDuration;
1126-
const seektimeQuantised = segmentDuration * (1 + parseInt(seektime / segmentDuration))
1127-
const positionInSegment = seektimeQuantised - seektime
1128-
1129-
logger.info(`Overshoot start seek by ${positionInSegment/maxDecoderRate} to compensate for decoder.`);
1130-
startTime += positionInSegment/maxDecoderRate
1131-
}
1132-
11331120
}
11341121
} else {
11351122
// For static stream, start by default at period start

0 commit comments

Comments
 (0)