95bad732f22ce551cff2baa2aa64acb6e4f5edc6: Bug 1208371 - Add PrincipalID to MediaChunks. r?mt,roc draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 26 Jan 2016 16:06:56 +0800 - rev 326516
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Add PrincipalID to MediaChunks. r?mt,roc PrincipalID is a void pointer that can be passed by value in 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 PrincipalID (the nsIPrincipal is static_cast()ed). Changes to a track's PrincipalID 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 the current principal and update any main thread principal observers.
09cac2366c66f9f5d0a6d7b9eb4f88229aff53ae: Bug 1208371 - Move FindTrack from SourceMediaStream to MediaStream. r?roc draft
Andreas Pehrson <pehrsons@gmail.com> - Thu, 21 Jan 2016 19:25:25 +0800 - rev 326515
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Move FindTrack from SourceMediaStream to MediaStream. r?roc
9a7b67e44082285191a700f78af48fe01ed9b9b1: Bug 1208371 - Ensure that MediaManager ends all tracks before finishing its source stream. r?jib draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 26 Jan 2016 19:03:58 +0800 - rev 326514
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Ensure that MediaManager ends all tracks before finishing its source stream. r?jib This puts all the logic in GetUserMediaCallbackMediaStreamListener and none in MediaOperationTask to make it simpler to reason about what's happening. When we want to stop a track, the gUMCallbackListener will send a MEDIA_STOP_TRACK if other tracks will still be live. If it was the last live track, the gUMCallbackListener will send a MEDIA_STOP instead. The MEDIA_STOP makes sure the passed in devices (we pass in all) are stopped before finishing the stream.
1bf38306075bae2fc8e915640cab1451807d2319: Bug 1208371 - Assert when stream finishes but contains live tracks. r?roc draft
Andreas Pehrson <pehrsons@gmail.com> - Thu, 21 Jan 2016 19:23:56 +0800 - rev 326513
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Assert when stream finishes but contains live tracks. r?roc This was the cause of some intermittent assertion failures, as the non-ended track didn't contain enough data when linked to other streams in the graph, but input extraction wouldn't get that data since the stream was finished.
f3c994280c1df2a5a4efb134409528e0c3372dd5: Bug 1208371 - Improve reliability of test_mediarecorder_record_timeslice.html. r?jwwang draft
Andreas Pehrson <pehrsons@gmail.com> - Wed, 06 Jan 2016 11:56:27 +0800 - rev 326512
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Improve reliability of test_mediarecorder_record_timeslice.html. r?jwwang
541943e720449d88dbea3e359fd37268bb799d24: Bug 1208371 - Wait for "loadedmetadata" before setting up nodes in test_mediaElementAudioSourceNodeCrossOrigin.html. r?padenot draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 11:17:16 +0800 - rev 326511
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Wait for "loadedmetadata" before setting up nodes in test_mediaElementAudioSourceNodeCrossOrigin.html. r?padenot
fcfb067d1cfd4575e3e272c326d1b19103239f1a: Bug 1208371 - Clear output canvas on each drawImage(). r?jib draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 326510
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Clear output canvas on each drawImage(). r?jib Otherwise we'd risk reading old pixels in case we draw something transparent.
1d75d013b087ee6d0449084fb41a568a93ef1d7b: Bug 1208371 - Don't dispatch conduit destruction to main thread when not needed. r?bwc draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 326509
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Don't dispatch conduit destruction to main thread when not needed. r?bwc In case MediaPipeline gets destructed on main thread we cannot dispatch to main thread. In this case, destroy the conduits directly. The easiest way to test this that I have found is to shut Firefox down in the middle of a PeerConnection mochitest, when the PeerConnection is still active.
6f6a9e369dfa1b9aa898ac258d76ea7fae72b61b: Bug 1208371 - Guard LoadManagerSingleton with a WeakPtr. r?pkerr draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 326508
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +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.
c4c53242394fd94025db4132bd40d141d8a1c32f: Bug 1208371 - Add disconnect method to test helper AudioStreamAnalyser to improve performance on slow devices. r?padenot draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 326507
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Add disconnect method to test helper AudioStreamAnalyser to improve performance on slow devices. r?padenot
7e7019a639d20475dc0e6204708f4029eee0dd4a: Bug 1208371 - Remove debug canvas from mediaStreamConstructors test to help android perf. r?padenot draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 326506
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Remove debug canvas from mediaStreamConstructors test to help android perf. r?padenot
4283b773279573e93504bc396fc9904db4ac0359: Bug 1208371 - Enable test_peerConnection_trackDisabling.html on android 4.3 debug. r?jib draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:32 +0800 - rev 326505
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +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.
55872846497ce7b0ad60e9fdd8b49651e78c3db4: Bug 1208371 - Remove debug canvas from peerConnection_trackDisabling test to help android perf. r?padenot draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 326504
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Remove debug canvas from peerConnection_trackDisabling test to help android perf. r?padenot
73cbdf4c7f2df7947a631c021c523f1dbd2345a5: Bug 1208371 - Remove debug canvas from addTrackRemoveTrack test to help android perf. r?padenot draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 326503
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Remove debug canvas from addTrackRemoveTrack test to help android perf. r?padenot
844c0a850c97b9df9f6ad15cec6872611462c889: Bug 1208371 - Remove unnecessary fakeTracks:true from test_streams_individual_pause.html. r?jib draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 326502
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Remove unnecessary fakeTracks:true from test_streams_individual_pause.html. r?jib
58afad3a780454ec744e9ea362684ac9019c5412: Bug 1208371 - Add a track getter to gUM for fake tracks. r?jib draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 326501
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Add a track getter to gUM for fake tracks. r?jib
3e9cc0bb17a0f160dcbc2f9c57ca1440ee2459ea: Bug 1208371 - Do not require DOMLocalMediaStream for gUM (audioCapture). r?jib draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 326500
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Do not require DOMLocalMediaStream for gUM (audioCapture). r?jib
0e0be8f6af1d81e2ae419d100653de3b23c99f42: Bug 1208371 - Make GraphDriver callback log calls verbose. r?padenot draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:31 +0800 - rev 326499
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Make GraphDriver callback log calls verbose. r?padenot
d124d699be7e23ca612ce4e12143de8400739097: Bug 1208371 - Switch MediaStreamTrack to enable/disable tracks on owned stream. r?jesup draft
Andreas Pehrson <pehrsons@gmail.com> - Tue, 05 Jan 2016 10:16:30 +0800 - rev 326498
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Switch MediaStreamTrack to enable/disable tracks on owned stream. r?jesup
3cd0bb45f5b6accbb364190c9fa269ca6f700bb2: Bug 1208371 - Let PeerConnection consume principals from tracks instead of streams. r?mt draft
Andreas Pehrson <pehrsons@gmail.com> - Fri, 22 Jan 2016 11:31:54 +0800 - rev 326497
Push 10157 by pehrsons@gmail.com at Thu, 28 Jan 2016 02:49:53 +0000
Bug 1208371 - Let PeerConnection consume principals from tracks instead of streams. r?mt
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 +300000 tip