[Webkit-unassigned] [Bug 201323] New: [MSE] Don't enqueue samples that start at a big discontinuity
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Aug 29 18:10:57 PDT 2019
https://bugs.webkit.org/show_bug.cgi?id=201323
Bug ID: 201323
Summary: [MSE] Don't enqueue samples that start at a big
discontinuity
Product: WebKit
Version: WebKit Nightly Build
Hardware: Unspecified
OS: Unspecified
Status: NEW
Severity: Normal
Priority: P2
Component: Media
Assignee: webkit-unassigned at lists.webkit.org
Reporter: aboya at igalia.com
With the old logic SourceBuffer was enqueueing the first frame to be
appended in any circumstances. This was a bug because the user could
append first [5, 10) and then [0, 5). With the old behavior [5, 10)
would be enqueued first despite being clearly ahead of the initial
playback time (zero). By the time [0, 5) is enqueued it can't be
enqueued anymore because the decodeQueue is already ahead.
This patch fixes that logic to work when the first segments are
appended unordered. The test media-source-first-append-not-starting-at-zero.html
validates it.
The test media-source-append-presentation-durations.html checks the
new logic does not break in presence of presentation duration !=
decode duration.
As part of the same logic block, the lastEnqueuedPresentationTime was
used to decide when it's necessary to perform reenqueue after an
.erase() (it is necessary if any enqueued frames are replaced). Using
lastEnqueuedPresentationTime was not entirely accurate in presence of
B-frames, as you could erase a frame that has a presentation time
higher than the last enqueued one. That logic is replaced with a
monotonicly increasing highestEnqueuedPresentationTime and is tested
by media-source-remove-b-frame.html.
Tests: media/media-source/media-source-append-presentation-durations.html
media/media-source/media-source-first-append-not-starting-at-zero.html
media/media-source/media-source-remove-b-frame.html
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20190830/efa50f35/attachment.html>
More information about the webkit-unassigned
mailing list