diff --git a/lib/media/playhead.js b/lib/media/playhead.js index a42fc3f860..393e6c5893 100644 --- a/lib/media/playhead.js +++ b/lib/media/playhead.js @@ -382,10 +382,10 @@ shaka.media.MediaSourcePlayhead = class { seekStart = seekEnd - this.minSeekRange_; } - if (currentTime < seekStart) { - // The seek range has moved past the playhead. Move ahead to catch up. + if (currentTime < seekStart || currentTime > seekEnd) { + // playhead is outside of the seekrange. Move playhead to catch up. const targetTime = this.reposition_(currentTime); - shaka.log.info('Jumping forward ' + (targetTime - currentTime) + + shaka.log.info('Jumping by ' + (targetTime - currentTime) + ' seconds to catch up with the seek range.'); this.mediaElement_.currentTime = targetTime; } diff --git a/test/media/playhead_unit.js b/test/media/playhead_unit.js index 0b7cca091b..bc52c2283b 100644 --- a/test/media/playhead_unit.js +++ b/test/media/playhead_unit.js @@ -683,7 +683,7 @@ describe('Playhead', () => { // It should allow a small buffer around the seek range. seekCount = 0; - currentTime = 1030.062441; + currentTime = 1030; jasmine.clock().tick(500); currentTime = 1027.9233; jasmine.clock().tick(500);