-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
WPE fix: Avoid pruning buffered ranges already enqueued for playback
In WPE WebKit, the buffered range of the currentTime has high chances to have been internally enqueued for playback (an action that can't be undone, there's no way to unenqueue other than flushing the whole playback pipeline). If that range is pruned, an internal flush is triggered, but in order to keep playing from the currentTime onwards, the needed samples must be enqueued again at least since the previous sync sample. This can cause a lot of stress to the video decoder and generate stuttering. This patch solves the problem by avoiding pruning (deleting) ranges belonging to the same buffered range where the currentTime (or seek target) is. This behaviour is protected by the streaming.buffer.enableCurrentTimeRangePruning setting, which is enabled by default and triggers the new behaviour when disabled on purpose by the webpage embedding dash.js.
- Loading branch information
Showing
2 changed files
with
27 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters