Closed Bug 1660399 Opened 4 years ago Closed 4 years ago

[wpt-sync] Sync PR 25170 - Revert "Give blink::CueTimeline a timer for precisely handling cue events"

Categories

(Core :: DOM: Core & HTML, task, P4)

task

Tracking

()

RESOLVED FIXED
82 Branch
Tracking Status
firefox82 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 25170 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/25170
Details from upstream follow.

Maggie Cai <mxcai@chromium.org> wrote:

Revert "Give blink::CueTimeline a timer for precisely handling cue events"

This reverts commit cb9cdc6693ba2ac64292494cca7ad28a6a00f084.

Reason for revert: This CL is likely the cause of build failure for Builder Linux Tests (dbg)(1) since https://ci.chromium.org/p/chromium/builders/ci/Linux%20Tests%20%28dbg%29%281%29/91043. Revert to see if that fix the build

Original change's description:

Give blink::CueTimeline a timer for precisely handling cue events

Cue-related events (enter, exit, cuechange) are fired up to 250ms late,
and there is a similar latency in their display which is quite
noticeable.

The underlying problem is that we only update cues alongside the
timeupdate event, which is fixed at 4 Hz.

My solution is to add a separate timer to CueTimeline
(CueTimeline::cue_event_timer_) which is given a timeout for the
next cue event based on the current playback position and rate. This
allows for significantly more precise cue timing accuracy without a
significant performance penalty.

Additionally, several web tests were written with the expectation that
the 'time marches on' algorithm is run before video playback begins
(ie, upon loading text track cues). This behavior is not in accordance
with the spec (as outlined in crbug/1050767), so this CL fixes those
expectations and adds a new test to prevent regressing.

Bug: 576310, 1050767
Change-Id: I675f5f030a68ba9cee10e12b3e79a9b174048193
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2008079
Commit-Queue: Will Cassella \<cassew@google.com>
Reviewed-by: Fredrik Söderquist \<fs@opera.com>
Cr-Commit-Position: refs/heads/master@{#800148}

TBR=fs@opera.com,alancutter@chromium.org,mlamouri@chromium.org,cassew@google.com

Change-Id: I0563b173344cef976c16b4f2851b45762a67843f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 576310
Bug: 1050767
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2368614
Reviewed-by: Maggie Cai \<mxcai@chromium.org>
Commit-Queue: Maggie Cai \<mxcai@chromium.org>
Cr-Commit-Position: refs/heads/master@{#800432}

PR 25170 applied with additional changes from upstream: 093d4eed8ba6b92f205f35d80ad91a750bbd4a2d
Component: web-platform-tests → DOM: Core & HTML
Product: Testing → Core

CI Results

Ran 0 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 1 tests and 1 subtests

Status Summary

Firefox

OK : 1
PASS : 1

Chrome

OK : 1
PASS : 1

Safari

PASS : 1
ERROR: 1

Links

GitHub PR Head
GitHub PR Base

Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/6f391b1eb0fd
[wpt PR 25170] - Revert "Give blink::CueTimeline a timer for precisely handling cue events", a=testonly
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 82 Branch
You need to log in before you can comment on or make changes to this bug.