b8f87a9c54d893808c484fa80b0e09ef08d0ec7b: Bug 1208371 - Ensure a media element's ImageContainer is protected when playing a stream. r=mt,jesup
Andreas Pehrson <pehrsons@gmail.com> - Thu, 04 Feb 2016 09:27:09 +0800 - rev 292076
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Ensure a media element's ImageContainer is protected when playing a stream. r=mt,jesup HTMLMediaElement needs special protection when playing a stream since its ImageContainer can outlive the video track of a stream. Consider for instance when a (cross-origin) video track is removed from a DOMMediaStream by a user and the remaining video track (non-CORS) does not yet contain any actual video frames. The HTMLMediaElement will display a frame from the removed track but the DOMMediaStream's principal has been updated to not include the principal from the removed track. With this patch we handle this by letting VideoFrameContainer notify HTMLMediaElement when it has flushed out all video frames belonging to a certain PrincipalHandle. I.e., when a new PrincipalHandle has been applied to the underlying ImageContainer. MozReview-Commit-ID: LvIZPl6Rdgj
72c2bc247b28132ea50edc10067f61f6a2936c3e: Bug 1208371 - Ensure DOMMediaStream principals reflect what could reside in their playback streams. r=mt,jesup
Andreas Pehrson <pehrsons@gmail.com> - Wed, 16 Mar 2016 16:00:34 +0100 - rev 292075
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Ensure DOMMediaStream principals reflect what could reside in their playback streams. r=mt,jesup Calculating a principal when adding a track is easy - just combine the new track principal into the stream's principal. When removing a track it's a bit trickier. The DOMMediaStream has to wait until the MediaStreamGraph has removed the track from the underlying playback stream. We do this by letting the MediaStreamGraph return a Pledge (single threaded Promise) when blocking a track in a stream (the way we end removed tracks). The pledge gets passed to the MediaStreamGraph and when the block has been applied it is passed back to the main thread where it is finally resolved and the DOMMediaStream may recompute its principal once all outstanding track removals have been applied. MozReview-Commit-ID: 3QP0YcDyfGf
e67192879d48871b13c407d9b3656f3055c457c0: Bug 1208371 - Hook up MediaPipeline with PrincipalHandle. r=mt,bwc
Andreas Pehrson <pehrsons@gmail.com> - Thu, 03 Mar 2016 17:30:39 +0100 - rev 292074
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Hook up MediaPipeline with PrincipalHandle. r=mt,bwc MozReview-Commit-ID: DLyLZu7kC3p
9bf356b402b539d790d0d95df973c9928390fa7b: Bug 1208371 - Hook up DecodedStream with PrincipalHandle. r=mt,jwwang
Andreas Pehrson <pehrsons@gmail.com> - Tue, 02 Feb 2016 13:14:13 +0800 - rev 292073
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Hook up DecodedStream with PrincipalHandle. r=mt,jwwang MozReview-Commit-ID: 1LmiFyfjhsr
d2f2af7a92ecf3d818c7ba072ec1e088089be2d6: Bug 1208371 - Add a PrincipalHandleListener to MediaStreamTrack. r=mt,jesup
Andreas Pehrson <pehrsons@gmail.com> - Tue, 15 Mar 2016 10:52:25 +0100 - rev 292072
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Add a PrincipalHandleListener to MediaStreamTrack. r=mt,jesup MozReview-Commit-ID: JvhXrlKPZAC
7bc17d548c9ad3a038de5ebc54c5735ae6fab385: Bug 1208371 - Add `NotifyPrincipalHandleChanged` to MediaStreamTrackListener. r=mt,jesup
Andreas Pehrson <pehrsons@gmail.com> - Tue, 26 Jan 2016 16:45:25 +0800 - rev 292071
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Add `NotifyPrincipalHandleChanged` to MediaStreamTrackListener. r=mt,jesup MozReview-Commit-ID: Hq0XtqIiMAO
7e8bffba9688fd968efaf7329f8b2e34fafa1c5d: Bug 1208371 - Add PrincipalHandle to MediaChunks. r=mt,jesup
Andreas Pehrson <pehrsons@gmail.com> - Wed, 06 Apr 2016 14:56:44 +0200 - rev 292070
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Add PrincipalHandle to MediaChunks. r=mt,jesup PrincipalHandle is a thread safe pointer to a holder of (the main-thread-only nsIPrincipal) that can be passed around the MSG. A MediaStreamTrack whose source has just updated its principal, sets the new principal aside (as its "pending principal"), and combines the new principal into its current principal. Then the source starts passing the new principal to the MediaStreamGraph as a PrincipalHandle. Changes to a track's PrincipalHandle on the MSG will be surfaced through the MediaStreamTrackListener API. These changes are dispatched to main thread and compared to a MediaStreamTrack's pending principal. In case of a match the track knows the correct principal is flowing and can move the pending principal to be the current principal and update any main thread principal observers. MozReview-Commit-ID: D0JXGWhQFFU
72e28ac8e54236c221b1ebf00be2de5e7a804321: Bug 1208371 - Implement operator!= for nsMainThreadPtrHandle. r=bholley
Andreas Pehrson <pehrsons@gmail.com> - Thu, 04 Feb 2016 00:24:52 +0800 - rev 292069
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Implement operator!= for nsMainThreadPtrHandle. r=bholley MozReview-Commit-ID: EjlvLi9VsFA
bc51bc21181543d940647d1b088e734f95553970: Bug 1208371 - Move FindTrack from SourceMediaStream to MediaStream. r=roc
Andreas Pehrson <pehrsons@gmail.com> - Thu, 21 Jan 2016 19:25:25 +0800 - rev 292068
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Move FindTrack from SourceMediaStream to MediaStream. r=roc MozReview-Commit-ID: 2BzGdGdbpy0
9a6c2705123870e3a7120d2e1f682baddc895ceb: Bug 1208371 - Improve reliability of test_mediarecorder_record_timeslice.html. r=jwwang
Andreas Pehrson <pehrsons@gmail.com> - Wed, 06 Jan 2016 11:56:27 +0800 - rev 292067
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Improve reliability of test_mediarecorder_record_timeslice.html. r=jwwang MozReview-Commit-ID: HFstfYnRyJP
c6bc774c70a0b1d01fae56a0c2fcb40b92ab4da3: Bug 1208371 - Wait for "loadedmetadata" before setting up nodes in test_mediaElementAudioSourceNodeCrossOrigin.html. r=padenot
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 11:17:16 +0800 - rev 292066
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Wait for "loadedmetadata" before setting up nodes in test_mediaElementAudioSourceNodeCrossOrigin.html. r=padenot MozReview-Commit-ID: HruqsknDHi7
4d753fefa7765aadf91d92e91daf1cd7c60dcbf7: Bug 1208371 - Clear output canvas on each drawImage(). r=jib
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 292065
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Clear output canvas on each drawImage(). r=jib Otherwise we'd risk reading old pixels in case we draw something transparent. MozReview-Commit-ID: LjNXE4Rmrmt
08e7e6ddff876f802bfe33c0763793cdb40ba981: Bug 1208371 - Guard LoadManagerSingleton with a WeakPtr. r=pkerr
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 292064
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Guard LoadManagerSingleton with a WeakPtr. r=pkerr LoadManagerSingleton has a separate shutdown path (xpcom-shutdown) from its users (Audio/VideoConduit - garbage collected). These have appeared racy, so in some cases the singleton was destructed before the users had deregistered (e.g., when conduits destructed by SnowWhiteKiller). A WeakPtr can solve this. MozReview-Commit-ID: AVrpd3QqOGx
ce5a05155b602ef692239c79425362816f307b77: Bug 1208371 - Add disconnect method to test helper AudioStreamAnalyser to improve performance on slow devices. r=padenot
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 292063
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Add disconnect method to test helper AudioStreamAnalyser to improve performance on slow devices. r=padenot MozReview-Commit-ID: 4MYF004uK8R
914a5488d905685c68777987438ec4b3632249e5: Bug 1208371 - Remove debug canvas from mediaStreamConstructors test to help android perf. r=padenot
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 292062
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Remove debug canvas from mediaStreamConstructors test to help android perf. r=padenot MozReview-Commit-ID: 62lDtTvZ5g2
043eba623b66e4f7eda29c792a4b1663dbf10f40: Bug 1208371 - Enable test_peerConnection_trackDisabling.html on android 4.3 debug. r=jib
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 292061
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Enable test_peerConnection_trackDisabling.html on android 4.3 debug. r=jib Disabling the audio analyser debug canvas gave us enough perf to enable the test reliably here. MozReview-Commit-ID: AGEfsD4pyME
dcc81f090c9ce6ea53b405418c16d77e0007003c: Bug 1208371 - Remove debug canvas from peerConnection_trackDisabling test to help android perf. r=padenot
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 292060
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Remove debug canvas from peerConnection_trackDisabling test to help android perf. r=padenot MozReview-Commit-ID: 7EWJ5GaO6fK
178ef911672ef80fd84e825cadc0d590bb57964e: Bug 1208371 - Remove debug canvas from addTrackRemoveTrack test to help android perf. r=padenot
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 292059
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Remove debug canvas from addTrackRemoveTrack test to help android perf. r=padenot MozReview-Commit-ID: Ejyvk1Vc66k
1b244668d4ef57761428b900a0d74980186a7dcb: Bug 1208371 - Remove unnecessary fakeTracks:true from test_streams_individual_pause.html. r=jib
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 292058
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Remove unnecessary fakeTracks:true from test_streams_individual_pause.html. r=jib MozReview-Commit-ID: BAnCqWqVEOA
56c5c55479977a2225ceaa02d87aa280ef9cbb8b: Bug 1208371 - Add a track getter to gUM for fake tracks. r=jib
Andreas Pehrson <pehrsons@gmail.com> - Wed, 06 Apr 2016 14:47:43 +0200 - rev 292057
Push 74761 by pehrsons@gmail.com at Thu, 07 Apr 2016 09:40:51 +0000
Bug 1208371 - Add a track getter to gUM for fake tracks. r=jib MozReview-Commit-ID: 8kc4ehGFBX7
(0) -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip