Closed
Bug 1010206
Opened 11 years ago
Closed 11 years ago
test layout/reftests/webm-video/bug686957.html is racy when using async-video
Categories
(Core :: Graphics: Layers, defect)
Core
Graphics: Layers
Tracking
()
RESOLVED
FIXED
mozilla32
People
(Reporter: nical, Assigned: nical)
References
Details
Attachments
(1 file)
933 bytes,
patch
|
padenot
:
review+
|
Details | Diff | Splinter Review |
With async-video, delivering frames to the compositor asynchronous with respect to the main thread's transaction. As a result, it is not guaranteed that a video frame will be composited in the composition that follows a seek (although in most cases it will, because async-video tends to deliver frames faster than main-thread transaction can.
The reftest bug686957.html seeks and takes a screenshot asap using setTimout(..., 0); which intermittently fails on Windows with async-video. giving 15ms instead of 0 in setTimeout (completely arbitray value) makes the test always pass (in theory the ImageBridgeChild thread could still catch a cold and we have no absolute guarantee that the frame will be delivered in time for the screenshot, since there is no synchronizaion between async video frames and the rest of the world, but in practice it seems good enough).
Assignee | ||
Comment 1•11 years ago
|
||
try push with the fix + OMTC + async-video: https://tbpl.mozilla.org/?tree=Try&rev=289959cb0a8f (we are only interested in the win7 reftests here, the other one is for another bug. It used to failed 40% of the time.
Assignee | ||
Comment 2•11 years ago
|
||
Attachment #8422388 -
Flags: review?(cajbir.bugzilla)
Assignee | ||
Comment 3•11 years ago
|
||
Comment on attachment 8422388 [details] [diff] [review]
Use a 15ms timeout to make the screenshot less likely to race with async-video
Review of attachment 8422388 [details] [diff] [review]:
-----------------------------------------------------------------
We need this to land the Windows OMTC work (which we want to land asap), so asking Paul for an express-review :)
Attachment #8422388 -
Flags: review?(cajbir.bugzilla) → review?(paul)
Comment 4•11 years ago
|
||
Comment on attachment 8422388 [details] [diff] [review]
Use a 15ms timeout to make the screenshot less likely to race with async-video
Review of attachment 8422388 [details] [diff] [review]:
-----------------------------------------------------------------
::: layout/reftests/webm-video/bug686957.html
@@ +5,5 @@
> <video src="frames.webm"
> preload="auto"
> id="v"
> onloadedmetadata="document.getElementById('v').currentTime=document.getElementById('v').duration"
> + onseeked="setTimeout(function(){document.documentElement.className = '';}, 15);"
This is terrible but was also not guaranteed to work in the first place. Throw in a comment about the fact that if this fail, we need to increase
the timeout as another terrible workaround.
Also, we should find a way of making this not racy, for example by looking at the frame painted count, which is available from content. Open a bug about that in Video/Audio, please.
r+ anyways because this should not block OMTC Windows.
Attachment #8422388 -
Flags: review?(paul) → review+
Assignee | ||
Comment 5•11 years ago
|
||
Comment 6•11 years ago
|
||
This patch had the misfortune of landing in the middle of a large bustage pileup on inbound that led to me having to revert to a last-good cset in lieu of waiting 3-4 hours for green instead. Unfortunately, that means this was backed out along with the others. If this was confirmed green on Try, it can re-land at your convenience.
https://hg.mozilla.org/integration/mozilla-inbound/rev/eb2a6f7785a2
Assignee | ||
Comment 7•11 years ago
|
||
Comment 8•11 years ago
|
||
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
You need to log in
before you can comment on or make changes to this bug.
Description
•