Closed Bug 1200099 Opened 9 years ago Closed 9 years ago

Eliminate HTMLMediaElement::mPlaybackStream

Categories

(Core :: Audio/Video, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla43
Tracking Status
firefox43 --- fixed

People

(Reporter: roc, Assigned: roc)

References

Details

(Whiteboard: [backout-asap])

Attachments

(4 files, 5 obsolete files)

40 bytes, text/x-review-board-request
jwwang
: review+
Details
40 bytes, text/x-review-board-request
jwwang
: review+
Details
40 bytes, text/x-review-board-request
jwwang
: review+
Details
40 bytes, text/x-review-board-request
jwwang
: review+
Details
We don't really need this. Instead of blocking MediaStream playback when the media element is paused, we can just disconnect the MediaStream output, and then reconnect it if we play again.

This simplifies code and makes progress towards fixing bug 1189506.
Green except where I'm hitting bug 1084185. I'll work around that by making test_streams_element_capture behave like test_streams_element_capture_reset.
Green on Linux64 that is...
Bug 1200099. Ensure mSameOriginMedia is propagated to DecodedStream even if we don't get a watch notification. r=jwwang
Attachment #8655718 - Flags: review?(jwwang)
Bug 1200099. Add a test that captured cross-origin video streams render black. r=jwwang
Attachment #8655719 - Flags: review?(jwwang)
Bug 1200099. Ensure mSameOrigin is initialized. r=jwwang
Attachment #8655720 - Flags: review?(jwwang)
Bug 1200099. Relax test assumptions to accommodate streams not blocking. r=jwwang
Attachment #8655721 - Flags: review?(jwwang)
Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang
Attachment #8655722 - Flags: review?(jwwang)
Attachment #8655718 - Attachment is obsolete: true
Attachment #8655718 - Flags: review?(jwwang)
Attachment #8655719 - Attachment is obsolete: true
Attachment #8655719 - Flags: review?(jwwang)
Attachment #8655720 - Attachment is obsolete: true
Attachment #8655720 - Flags: review?(jwwang)
Attachment #8655721 - Attachment is obsolete: true
Attachment #8655721 - Flags: review?(jwwang)
Attachment #8655722 - Attachment is obsolete: true
Attachment #8655722 - Flags: review?(jwwang)
Bug 1200099. Ensure mSameOriginMedia is propagated to DecodedStream even if we don't get a watch notification. r=jwwang
Attachment #8655728 - Flags: review?(jwwang)
Bug 1200099. Add a test that captured cross-origin video streams render black. r=jwwang
Attachment #8655729 - Flags: review?(jwwang)
Bug 1200099. Relax test assumptions to accommodate streams not blocking. r=jwwang
Attachment #8655730 - Flags: review?(jwwang)
Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang
Attachment #8655731 - Flags: review?(jwwang)
Comment on attachment 8655728 [details]
MozReview Request: Bug 1200099. Ensure mSameOriginMedia is propagated to DecodedStream even if we don't get a watch notification. r=jwwang

https://reviewboard.mozilla.org/r/18007/#review16127

::: dom/media/MediaDecoderStateMachine.cpp:336
(Diff revision 1)
> +  SameOriginMediaChanged();

I believe this is fixed by bug 1199654 which give DecodedStream::mSameOrigin an initial false value.
Attachment #8655728 - Flags: review?(jwwang) → review+
Comment on attachment 8655729 [details]
MozReview Request: Bug 1200099. Add a test that captured cross-origin video streams render black. r=jwwang

https://reviewboard.mozilla.org/r/18009/#review16131
Attachment #8655729 - Flags: review?(jwwang) → review+
Attachment #8655730 - Flags: review?(jwwang) → review+
Comment on attachment 8655730 [details]
MozReview Request: Bug 1200099. Relax test assumptions to accommodate streams not blocking. r=jwwang

https://reviewboard.mozilla.org/r/18011/#review16129

::: dom/media/test/test_streams_element_capture.html:78
(Diff revision 1)
> -manager.runTests(gSmallTests, startTest);
> +var testVideo = getPlayableVideo(gSmallTests);

Might be worth a todo that we test only one file for the duration bug of gstreamer. Once it is fixed, we are able to run through all files in gSmallTests again.
Comment on attachment 8655731 [details]
MozReview Request: Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang

https://reviewboard.mozilla.org/r/18013/#review16133

::: dom/media/VideoFrameContainer.cpp
(Diff revision 1)
> -  mImageSizeChanged = false;

Why deleting this line?
Attachment #8655731 - Flags: review?(jwwang) → review+
https://reviewboard.mozilla.org/r/18007/#review16127

> I believe this is fixed by bug 1199654 which give DecodedStream::mSameOrigin an initial false value.

That's probably true, but I think it's best to avoid assuming that mDecoder's mSameOriginMedia is false when InitializationTask runs.
https://reviewboard.mozilla.org/r/18013/#review16165

::: dom/media/VideoFrameContainer.cpp
(Diff revision 1)
> -  mImageSizeChanged = false;

If the video frame changes size, and then someone calls ClearCurrentFrame, we should still ensure that InvalidateFrame gets called by VideoFrameContainer::InvalidateWithFlags. It's simpler and safer to only clear mImageSizeChanged when we actually call InvalidateFrame, anyway.
Depends on: 1201969
This issue has caused a major smoketest blocker.
Whiteboard: [backout-asap]
Depends on: 1201986
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: