Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR will...
Allow setting
hls.targetLatency
.Setting
targetLatency
will:stallCount
to0
liveSyncDuration
to new valuehttps://github.com/vk342/hls.js/blob/f8c8c42c2968e5d79661b5f0b0c904b76a9de375/src/controller/latency-controller.ts#L75-L79
Why is this Pull Request needed?
Currently
targetLatency
is calculated as following:liveSyncDuration
is specified in config,targetLatency
is calculated asliveSyncDuration
plusliveSyncOnStallIncrease
multiplied by number of stalls.targetLatency
is calculated asliveSyncDurationCount
multiplied byEXT-X-TARGETDURATION
plus
liveSyncOnStallIncrease
multiplied by number of stalls.As discussed in #6350, incrementing
targetLatency
each time the player encounters the stall may become problematic in low-latency scenarios, especially when the live stream needs to play at consistently low latency for an extended period of time.Allowing to set
targetLatency
will provide the developers who usehls.js
with a simple way to implement a custom logic that will adjusttargetLatency
. This will allow to control latency without performing hard reset on the player.Are there any points in the code the reviewer needs to double check?
The code does not update
liveSyncDuration
value of the config that was supplied on player start-up (a.k.a.userConfig
), used, for example, here:hls.js/src/controller/latency-controller.ts
Line 50 in 0a49731
Is this an expected behaviour?
Resolves issues:
Checklist