Closed
Bug 1218299
Opened 9 years ago
Closed 9 years ago
Intermittent test_play_twice.html | vp9.webm checking readyState - got 4, expected 2
Categories
(Core :: Audio/Video, defect)
Core
Audio/Video
Tracking
()
RESOLVED
DUPLICATE
of bug 1220512
People
(Reporter: cbook, Unassigned)
References
()
Details
(Keywords: intermittent-failure)
https://treeherder.mozilla.org/logviewer.html#?job_id=16229828&repo=mozilla-inbound
17:11:44 INFO - 44287 INFO TEST-UNEXPECTED-FAIL | dom/media/test/test_play_twice.html | vp9.webm checking readyState - got 4, expected 2
17:11:44 INFO - SimpleTest.is@SimpleTest/SimpleTest.js:267:5
17:11:44 INFO - startTest/checkEnded</<@dom/media/test/test_play_twice.html:49:5
17:11:44 INFO - EventListener.handleEvent*startTest@dom/media/test/test_play_twice.html:83:3
17:11:44 INFO - MediaTestManager/this.nextTest@dom/media/test/manifest.js:1492:7
17:11:44 INFO - MediaTestManager/this.finished@dom/media/test/manifest.js:1471:7
17:11:44 INFO - finish@dom/media/test/test_play_twice.html:34:5
17:11:44 INFO - mayFinish@dom/media/test/test_play_twice.html:39:7
17:11:44 INFO - startTest/checkEnded</<@dom/media/test/test_play_twice.html:56:7
17:11:44 INFO - EventListener.handleEvent*startTest@dom/media/test/test_play_twice.html:83:3
17:11:44 INFO - MediaTestManager/this.nextTest@dom/media/test/manifest.js:1492:7
17:11:44 INFO - MediaTestManager/this.finished@dom/media/test/manifest.js:1471:7
17:11:44 INFO - EventListener.handleEvent*startTest@dom/media/test/test_play_twice.html:83:3
17:11:44 INFO - EventListener.handleEvent*startTest@dom/media/test/test_play_twice.html:83:3
17:11:44 INFO - Async*MediaTestManager/this.runTests@dom/media/test
Comment 2•9 years ago
|
||
Coud be a consequence to bug 1217304?
Before bug 1217304 we could have fired loadeddata before any frames were actually decoded: it was racy.
We now delay changing the readyState, until a frame has been decoded.
We now do:
if (NextFrameStatus() != MediaDecoderOwner::NEXT_FRAME_AVAILABLE) {
LOG(LogLevel::Debug, ("MediaElement %p UpdateReadyStateInternal() "
"Next frame not available", this));
if (mFirstFrameLoaded) {
ChangeReadyState(nsIDOMHTMLMediaElement::HAVE_CURRENT_DATA);
}
if the element is now ended, and *before* FirstFrameLoaded was called. we won't reset the readyState to HAVE_CURRENT_DATA.
I'm not sure how that could happen however. Like we would reach ended mode before FirstFrameLoaded() was called?
The test itself is suspicious however, why would we be in HAVE_CURRENT_DATA when "ended" has been fired?
If we're ended, we're past the current data, there's nothing more to play.
JW, what do you think?
Updated•9 years ago
|
Flags: needinfo?(jwwang)
Comment 3•9 years ago
|
||
(In reply to Jean-Yves Avenard [:jya] from comment #2)
> The test itself is suspicious however, why would we be in HAVE_CURRENT_DATA
> when "ended" has been fired?
> If we're ended, we're past the current data, there's nothing more to play.
> JW, what do you think?
No, it is not suspicious. When we reach 'ended', we should have at least 'HAVE_METADATA'. And since there is no future data at the end, so the only state to be is 'HAVE_CURRENT_DATA'.
Flags: needinfo?(jwwang)
Comment 4•9 years ago
|
||
With bug 1217304, we will never go above HAVE_CURRENT_DATA until FirstFrameLoaded is called. If the element ends before FirstFrameLoaded is called, it is impossible for readyState to be 4 which is HAVE_ENOUGH_DATA.
Comment 5•9 years ago
|
||
This isn't the scenario I was thinking about:
we have readyState = HAVE_ENOUGH_DATA, reach ended.
In UpdateReadyStateInternal() the test: if (NextFrameStatus() != MediaDecoderOwner::NEXT_FRAME_AVAILABLE) {
would be true and we then reach ChangeReadyState(nsIDOMHTMLMediaElement::HAVE_CURRENT_DATA);
However, now with the test checking that FirstFrameLoaded was called; we do not reach this stage should mFirstFrameLoaded is false.
Comment 6•9 years ago
|
||
We can't never reach HAVE_ENOUGH_DATA when mFirstFrameLoaded is false with bug 1217304.
Comment 7•9 years ago
|
||
ah yes good point..
so bug 1217304 can't be the cause of this bug
Comment 8•9 years ago
|
||
https://bugzilla.mozilla.org/show_bug.cgi?id=832768#c797
2024 INFO TEST-UNEXPECTED-FAIL | dom/media/test/test_playback.html | huge-id3.mp3 checking readyState - got 4, expected 2
Comment hidden (Intermittent Failures Robot) |
Comment 10•9 years ago
|
||
Status: NEW → RESOLVED
Closed: 9 years ago
Flags: needinfo?(bechen)
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•