From 484cac982034f3c445bceca0829631514a7c00c0 Mon Sep 17 00:00:00 2001 From: Rob Walch Date: Thu, 30 Jul 2020 13:52:17 -0400 Subject: [PATCH] Do not use shorter track duration when updating fragment timing at a discontinuity --- src/controller/level-helper.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/controller/level-helper.js b/src/controller/level-helper.js index 44ac7a8d018..d262b13d5bb 100644 --- a/src/controller/level-helper.js +++ b/src/controller/level-helper.js @@ -46,7 +46,8 @@ export function updatePTS (fragments, fromIdx, toIdx) { } else { // we dont know startPTS[toIdx] if (toIdx > fromIdx) { - fragTo.start = fragFrom.start + (fragFrom.minEndPTS ? fragFrom.minEndPTS - fragFrom.start : fragFrom.duration); + const contiguous = fragFrom.cc === fragTo.cc; + fragTo.start = fragFrom.start + ((contiguous && fragFrom.minEndPTS) ? fragFrom.minEndPTS - fragFrom.start : fragFrom.duration); } else { fragTo.start = Math.max(fragFrom.start - fragTo.duration, 0); }