Shaka-player: Gap jumping fires all the time for live HLS

Created on 2 Mar 2018  路  9Comments  路  Source: google/shaka-player

Have you read the FAQ and checked for duplicate open issues?: Yes

What version of Shaka Player are you using?: v2.3.3

Can you reproduce the issue with our latest release version?: Yes

Can you reproduce the issue with the latest code from master?: Yes

Are you using the demo app or your own custom app?: demo

What browser and OS are you using?: Chrome Linux

What are the manifest and license server URIs?:

https://v2-3-3-dot-shaka-player-demo.appspot.com/demo/#asset=//storage.googleapis.com/shaka-live-assets/player-source.m3u8;play

What did you do? Load the content

What did you expect to happen? Play without stuttering/seeking

What actually happened? Gap jumping seeks all the time, causing stuttering

Jumping forward 0.4769218874664318 seconds to catch up with the seek range.
playhead.js:226 Jumping forward 0.22794781498717498 seconds to catch up with the seek range.
playhead.js:226 Jumping forward 0.23987298092652054 seconds to catch up with the seek range.
playhead.js:226 Jumping forward 0.3442899084472515 seconds to catch up with the seek range.
playhead.js:226 Jumping forward 0.17542092942809973 seconds to catch up with the seek range.
playhead.js:226 Jumping forward 0.16156792942808806 seconds to catch up with the seek range.
playhead.js:226 Jumping forward 0.18938678446960466 seconds to catch up with the seek range.

Not present on v2.3.2, but is present in v2.3.3. I expect this was introduced with the fix for #1224. For live HLS, the seek range is 0-width.

HLS Why didn't we catch this sooner? archived bug

Most helpful comment

You can also reproduce in DASH live by pausing, rewinding to the beginning of the stream, letting the playhead fall outside the seek range, then unpausing.

All 9 comments

Fix cherry-picked for v2.3.4.

I am still seeing this bad behavior in v2.3.4.

It can be reproduced by either playing the live "history" stream in HLS, or by playing the DASH version with startTime set to 0 in load().

So it seems to be more about playing at the front of the seek range, rather than in live HLS specifically.

In the DASH version, the repeated seeks stop if I manually seek forward by about one half second: video.currentTime += 0.5.

You can also reproduce in DASH live by pausing, rewinding to the beginning of the stream, letting the playhead fall outside the seek range, then unpausing.

I can also reproduce this problem in DASH live streams. If you have any fixes, I will be happy to test them.

Fix cherry-picked to v2.3.5.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

interpegasus picture interpegasus  路  3Comments

dakom picture dakom  路  3Comments

avelad picture avelad  路  3Comments

rosenbjerg picture rosenbjerg  路  5Comments

NicolasSiver picture NicolasSiver  路  4Comments