Граф коммитов

264 Коммитов

Автор SHA1 Сообщение Дата
Karl Tomlinson fc0ef5c59f bug 1242268 record MSG memory sizes asynchronously r=padenot
This removes the one second timeout for MSG collection, extending the timeout
period to the 50 second timeout of nsMemoryReporterManager.

Also removed:

* The condition variable logic that can stop waiting without checking the
  condition set when memory reports are complete.

* Races with mAudioStreamSizes modification on two threads after wait timeout.

Memory from streams in offline graphs that are not yet running is now also
included.

MozReview-Commit-ID: FkI61iJFrZ5

--HG--
extra : rebase_source : 200d332165ef21497bcfa24b86b6ff029f8ac212
2016-07-04 10:40:48 +12:00
Karl Tomlinson 42c4a689dc bug 1242268 collect memory reports of AudioNode dom objects on the main thread r=padenot
This will permit allowing the main thread to run while collecting
reports from graph thread objects.

MozReview-Commit-ID: 7xChGz7xJ8M

--HG--
extra : rebase_source : a69dd197bfd3173c9a46979bac35e654d7d0771e
2016-07-01 18:46:34 +12:00
Karl Tomlinson dc9ad2f5b2 bug 1242268 use pointers instead of copies of string literals in AudioNode memory reporting r=padenot
MozReview-Commit-ID: E85FGrmfOWI

--HG--
extra : rebase_source : 0895e91ca000164f70251ae0fbb61fcca39cbe56
2016-07-04 16:24:47 +12:00
Karl Tomlinson b85b74eb00 bug 1242268 don't try to wake up an empty MSG that is shutting down to report memory r=padenot
MozReview-Commit-ID: IWNUjWijukk

--HG--
extra : rebase_source : d153f3c3434c3a844a950fefbd87d6f75e88db6e
2016-07-04 20:55:29 +12:00
ctai ff32ed223d Bug 1266646 - Change HTMLMediaElement::StreamSizeListerner to inherit MediaStreamTrackDirectListener. r=pehrsons
MozReview-Commit-ID: HnNv9BnlbDy

--HG--
extra : transplant_source : i0%FA%08%16%A6/%96%13%C5%F22%5E%EC%8C%2B%C6%B1%F3_
2016-05-10 17:02:15 +08:00
ctai fd36b32d94 Bug 1266646 - Move group of MediaStreamListener to a new header file. r=pehrsons
This can reduce the include header dependency. MediaStreamVideoSink will inherit from DirectMediaStreamTrackListener. But we can't use forward declaration on MediaStreamListener because the usage of nsTArray<RefPtr<MediaStreamVideoSink>>.

MozReview-Commit-ID: 328s4Kw9NvW

--HG--
extra : transplant_source : %D2%18%E3%3B%0C%D8%F04%F3%EB%EB%A0%A7%8B%B1%A9%AB%97rY
2016-06-30 15:07:48 +08:00
ctai 533acf2e59 Bug 1266646 - Rename MediaStreamDirectListener and MediaStreamTrackDirectListener to DirectMediaStreamListener and DirectMediaStreamTrackListener respectively. r=pehrsons
Rename those two function to better name alignment with AddDirectListener and AddDirectTrackListener.

MozReview-Commit-ID: 6QY08oyih1X

--HG--
extra : transplant_source : %5C%1C%23%AC%D7%0D%97%24%CB%ED%8E%D5%60/%5E%07%F2%85Z%DA
2016-04-29 11:45:25 +08:00
Andreas Pehrson f40d583675 Bug 1280445 - Clear out all MediaSegments directly on forced MediaStreamGraph shutdown. r=jesup
MozReview-Commit-ID: 3nDPEAAJABw

--HG--
extra : rebase_source : 9bda288ff3dc7382671e365ada7d88c23fc6c50f
extra : source : 43ecb11eccfb4c2bce62b5dc0e3a6c1ddc19609a
2016-06-16 12:45:29 +01:00
Andreas Pehrson e028368c0f Bug 1280445 - Remove wrapper from MediaStream. r=jesup, r=padenot
MozReview-Commit-ID: CTCFloIUXKa

--HG--
extra : rebase_source : b1c2073c638bb65c19a0f40e8d17e9a5bae15c98
extra : source : c6d854b3209e7de7d97153c0bfc492c1d5f1e6b5
2016-06-29 12:27:13 +02:00
Andreas Pehrson be9d25eccb Bug 1274221 - Ensure MediaStreamListeners are always notified of created and ended tracks. r=ctai, r=jesup
This means that when a MediaStreamListener is added to a stream, we'll call
NotifyQueuedTrackChanges with TRACK_EVENT_CREATE for all tracks that already
exist.

Likewise, we'll call NotifyQueuedTrackChanges with TRACK_EVENT_ENDED for all
tracks that exist and have ended.

This fixes potential race conditions where a track was created and/or ended
before the listener was asynchronously added.

MozReview-Commit-ID: G3juhfiZMtg

--HG--
extra : rebase_source : d2ca7cb24ce154c4aa342bb477aee455c9cfef92
extra : intermediate-source : 80443106b2636d8de3c3de44f2706e99d70c06ae
extra : source : 70e8c5a785a9866e6205b54bd1c45faaf834717d
2016-05-24 13:23:50 +02:00
Andreas Pehrson 141eefc951 Bug 1208373 - Introduce a new blocking mode to MediaInputPort. r=jesup
This lets us notify about a created TrackUnionStream track (and since it was
created, we can notify when it ends), even though it has been blocked from main
thread.

MozReview-Commit-ID: HyopzISBfbb

--HG--
extra : rebase_source : a18be6b0fcb194c016ae06c62eb5cebbf86eb8d5
extra : intermediate-source : 38e3e48c8dd011a0503f1241c7b21a630738c6c0
extra : source : 690904309e169aa74f95163f0d796493ef882972
2016-06-07 16:20:29 +02:00
Paul Adenot 59f0db4ad0 Bug 1281193 - Lock when touching tracks in SourceAudioStreams. r=pehrsons
MozReview-Commit-ID: 2aSS8esq5jq
2016-06-22 17:44:46 +02:00
Sebastian Hengst 6d87e39b07 Backed out 9 changesets (bug 1208373) for frequent failures in test_peerConnection_addtrack_removetrack_events.html on Android 4.3 debug. r=backout
Backed out changeset 95412432bf10 (bug 1208373)
Backed out changeset 38e3e48c8dd0 (bug 1208373)
Backed out changeset 72cf70065470 (bug 1208373)
Backed out changeset 8cffa26910a8 (bug 1208373)
Backed out changeset 9a8c5a9bb9d5 (bug 1208373)
Backed out changeset bc120c9071bb (bug 1208373)
Backed out changeset fb8a0b464701 (bug 1208373)
Backed out changeset 5ddb73097cfd (bug 1208373)
Backed out changeset c4827087a333 (bug 1208373)
2016-06-14 11:06:51 +02:00
Sebastian Hengst 82d615aa16 Backed out 3 changesets (bug 1274221) for frequent failures in test_peerConnection_addtrack_removetrack_events.html on Android 4.3 debug. r=backout
Backed out changeset 80443106b263 (bug 1274221)
Backed out changeset 795bcfd6223d (bug 1274221)
Backed out changeset 30c253e762c6 (bug 1274221)
2016-06-14 11:05:33 +02:00
Sebastian Hengst 599c66055a Backed out changeset 2c235b056514 (bug 1266646) for frequently crashing in mda's test_streams_element_capture_createObjectURL.html. r=backout 2016-06-13 21:24:54 +02:00
Sebastian Hengst f310d4012a Backed out changeset c89b8cc657b2 (bug 1266646) 2016-06-13 21:23:53 +02:00
ctai 4b40fd1bc1 Bug 1266646 - Rename MediaStreamDirectListener and MediaStreamTrackDirectListener to DirectMediaStreamListener and DirectMediaStreamTrackListener respectively. r=jesup,pehrsons
Rename those two function to better name alignment with AddDirectListener and AddDirectTrackListener.

MozReview-Commit-ID: 6QY08oyih1X

--HG--
extra : rebase_source : e0f2ac5de75d54a870f5a99f08505e40aa0696d9
2016-04-29 11:45:25 +08:00
ctai 4ab1e6cc57 Bug 1266646 - Change HTMLMediaElement::StreamSizeListerner to inherit MediaStreamTrackDirectListener. r=jesup, r=pehrsons
MozReview-Commit-ID: HnNv9BnlbDy

--HG--
extra : rebase_source : 7d04886895910b00964c2ce36a337873195b12fa
2016-05-10 17:02:15 +08:00
Andreas Pehrson 36786eb617 Bug 1274221 - Ensure MediaStreamListeners are always notified of created and ended tracks. r=ctai, r=jesup
This means that when a MediaStreamListener is added to a stream, we'll call
NotifyQueuedTrackChanges with TRACK_EVENT_CREATE for all tracks that already
exist.

Likewise, we'll call NotifyQueuedTrackChanges with TRACK_EVENT_ENDED for all
tracks that exist and have ended.

This fixes potential race conditions where a track was created and/or ended
before the listener was asynchronously added.

MozReview-Commit-ID: G3juhfiZMtg

--HG--
extra : rebase_source : 4f7b9c116e7d25cfc4c3894551173925613c6c14
extra : intermediate-source : 45bfebd36a99baef6bee50e52ac9c78965a7f1c2
extra : source : 70e8c5a785a9866e6205b54bd1c45faaf834717d
2016-05-24 13:23:50 +02:00
Andreas Pehrson d551df2bcf Bug 1208373 - Introduce a new blocking mode to MediaInputPort. r=jesup
This lets us notify about a created TrackUnionStream track (and since it was
created, we can notify when it ends), even though it has been blocked from main
thread.

MozReview-Commit-ID: HyopzISBfbb

--HG--
extra : rebase_source : a3d676257473bba08190b8e2b24d027c42306621
extra : intermediate-source : 5454dcaa31ff8eb060b6f1531a376dcbc24ffb4d
extra : source : 690904309e169aa74f95163f0d796493ef882972
2016-06-07 16:20:29 +02:00
Carsten "Tomcat" Book 79d88f89e8 Backed out changeset 5454dcaa31ff (bug 1208373) 2016-06-09 15:18:42 +02:00
Carsten "Tomcat" Book fe2de5bf49 Backed out changeset 45bfebd36a99 (bug 1274221) 2016-06-09 15:18:36 +02:00
Andreas Pehrson e9c91bddf6 Bug 1274221 - Ensure MediaStreamListeners are always notified of created and ended tracks. r=ctai, r=jesup
This means that when a MediaStreamListener is added to a stream, we'll call
NotifyQueuedTrackChanges with TRACK_EVENT_CREATE for all tracks that already
exist.

Likewise, we'll call NotifyQueuedTrackChanges with TRACK_EVENT_ENDED for all
tracks that exist and have ended.

This fixes potential race conditions where a track was created and/or ended
before the listener was asynchronously added.

MozReview-Commit-ID: G3juhfiZMtg

--HG--
extra : rebase_source : 6f4fe68b888b6dd0d9ee370b6a390ff17da5f1de
extra : source : 70e8c5a785a9866e6205b54bd1c45faaf834717d
2016-05-24 13:23:50 +02:00
Andreas Pehrson 5b155d5add Bug 1208373 - Introduce a new blocking mode to MediaInputPort. r=jesup
This lets us notify about a created TrackUnionStream track (and since it was
created, we can notify when it ends), even though it has been blocked from main
thread.

MozReview-Commit-ID: HyopzISBfbb

--HG--
extra : rebase_source : 55d6dd5d6a34a0b499b45e0b72f900fc37cff1bf
extra : source : 690904309e169aa74f95163f0d796493ef882972
2016-06-07 16:20:29 +02:00
Karl Tomlinson 605ca4cc77 bug 1275754 strip obsolete updates from mStreamUpdates when adding new updates r=padenot
MozReview-Commit-ID: 64tRYsgC1pC

--HG--
extra : rebase_source : 85e43345c3eabc885f87c8c0dad5d16a2c2e6f6c
2016-05-25 19:18:17 +12:00
ctai 7e0671d483 Bug 1266647 - Clean NotifyQueuedTrackChange to only notify when command is track create and track end. r=jesup r=pehrsons
MozReview-Commit-ID: 4Pp3xHeBIW4

--HG--
extra : transplant_source : %D4c%13P%82Y%04%FA%0E%9D%9C%97%91%AAH%FCI%C3u_
2016-05-04 16:08:44 +08:00
Andreas Pehrson 3683deb67f Bug 957691 - Restore assertions. r=karlt
MozReview-Commit-ID: 1guHCRCzQjS

--HG--
extra : rebase_source : 64705edf4a784d43602b2f1de8d9594d0990d801
2016-04-21 11:44:35 +02:00
ctai 5d4238b60d Bug 1266644 - Simple refactoring. r=jesup r=pehrsons
Update some comments, rename.

MozReview-Commit-ID: A747Fd8mH3D
2016-04-07 11:44:00 +08:00
ctai 1bcafe7412 Bug 1266644 - Unlock mMutex earlier. r=jesup r=pehrsons
MozReview-Commit-ID: 3Pf3yxwQlHI
2016-04-25 11:59:39 +08:00
ctai 8fcb64e480 Bug 1266644 - Rename StreamBuffer to StreamTracks. r=jesup r=pehrsons
Rename StreamBuffer to StreamTracks. We still need a place to keep the track information in every MediaStream, even the StreamBuffer::Track::mSegment is empty.

--HG--
rename : dom/media/StreamBuffer.cpp => StreamTracks.cpp
rename : dom/media/StreamBuffer.h => StreamTracks.h
2016-01-26 10:49:01 +08:00
Kyle Huey c73656947b Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Andreas Pehrson 1e072d6fc3 Bug 1266680 - Rename BlockTrackId to BlockSourceTrackId. r=jesup
It wasn't clear which TrackID should be passed to MediaInputPort::BlockTrackId(); source or destination.

MozReview-Commit-ID: I9LoSjdpRwE

--HG--
extra : rebase_source : 20eeb5e4ee47eb1cdf00e94cdc72ee11177bbee2
2016-04-22 17:14:26 +02:00
Paul Adenot 8fda7f21b4 Bug 1266438 - Remove workaround on OSX when switching device, not necessary with duplex mode. r=jesup
MozReview-Commit-ID: 7IontuEuiQj
2016-04-22 16:24:19 +02:00
Paul Adenot b3adcea90b Bug 1266438 - Reset the AEC and other processing when audio devices change. r=jesup
MozReview-Commit-ID: Jrr9E9ZSukv
2016-04-22 16:24:17 +02:00
Andreas Pehrson ca31cde16e Bug 1246310 - Resample the AudioSegment in SourceMediaStream::AddAudioTrack. r=padenot
AddAudioTrack() has this comment:
>    * Like AddTrack, but resamples audio from aRate to the graph rate.

Even so it would only resample the AudioSegments added through AppendToTrack.
Not the initial one, provided to AddAudioTrack itself, even though
MediaPipelineReceiveAudio depends on this functionality.

MozReview-Commit-ID: BibF9ByjKq3

--HG--
extra : rebase_source : 6de274d0cb76e4eaa39846285dd981c8ba34271b
extra : source : 3eb785084ec7268f3ddee2da3dc78646086bc749
2016-04-15 15:52:59 +02:00
Sotaro Ikeda 3b81e9dd7d Bug 1262278 - Rename PlanarYCbCrImage::SetData and PlanarYCbCrImage::SetDataNoCopy r=nical 2016-04-18 20:12:41 -07:00
Randell Jesup ca7a35732f Bug 1264195: Re-add SetMicrophoneActive() calls into the GraphDriver r=padenot
With bustage fix for warnings as errors
2016-04-13 14:31:35 -04:00
Sebastian Hengst 34207787dd Backed out changeset 53f96832a304 (bug 1264195) for building halting with error "GraphDriver.h:536:8: error: private field 'mMicrophoneActive' is not used". r=backout on a CLOSED TREE 2016-04-13 20:44:52 +02:00
Randell Jesup 68a3156330 Bug 1264195: Re-add SetMicrophoneActive() calls into the GraphDriver r=padenot 2016-04-13 14:31:35 -04:00
Randell Jesup fdb1a04f38 Bug 1263251: Calculate AudioTrackPresent() correctly in MediaStreamGraph r=padenot
MozReview-Commit-ID: CFrdDkMUqGP
2016-04-08 14:54:00 -04:00
Andreas Pehrson e899edc733 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

--HG--
extra : rebase_source : cfbad5e5e7f43af4da4bfc213494b7b8e22cde17
2016-02-04 09:27:09 +08:00
Andreas Pehrson 6862394047 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

--HG--
extra : rebase_source : 6642849ec1c7d774467395dee82b0a37fdd33a99
2016-03-16 16:00:34 +01:00
Andreas Pehrson 15e9109891 Bug 1208371 - Add `NotifyPrincipalHandleChanged` to MediaStreamTrackListener. r=mt,jesup
MozReview-Commit-ID: Hq0XtqIiMAO

--HG--
extra : rebase_source : 3483bff525ba50bc45f409463e7eb49056adbdf4
2016-01-26 16:45:25 +08:00
Andreas Pehrson 849f97a6f3 Bug 1208371 - Move FindTrack from SourceMediaStream to MediaStream. r=roc
MozReview-Commit-ID: 2BzGdGdbpy0

--HG--
extra : rebase_source : f011fe75b86e0db80443f0042866678d438d6d63
2016-01-21 19:25:25 +08:00
Andreas Pehrson f1662d16c9 Bug 1208371 - Switch MediaPipeline to use direct listeners on tracks. r=jesup,bwc
MozReview-Commit-ID: BSSfkTwXoVN

--HG--
extra : rebase_source : 8f001d4513062bb426f0a18670a3692ecf737a52
2016-03-18 14:21:51 +01:00
Andreas Pehrson 77ac51c2c4 Bug 1208371 - Add DirectTrackLister to MediaStreamGraph and MediaStreamTrack. r=roc,jesup
MozReview-Commit-ID: HRWa6A35FSC

--HG--
extra : rebase_source : 85f2507cc91c62105eda6568b5a40edd604d5af8
2016-03-03 17:28:37 +01:00
Andreas Pehrson d8ed56d953 Bug 1208371 - Make it possible to block tracks in a MediaInputPort initally. r=roc
MozReview-Commit-ID: AwOO0lW9zpj

--HG--
extra : rebase_source : 01be9776a411498d83f8f3ebb156db45d302709c
2016-01-05 10:16:25 +08:00
Andreas Pehrson 8ee8a34873 Bug 1208371 - Add a MediaStreamTrackListener to MediaStreamGraph. r=roc
MozReview-Commit-ID: 6KHzimw9kiP

--HG--
extra : rebase_source : 78e7f4b4bf18eaf390ee09c08f6f5c19d9f24d65
2016-03-03 17:27:59 +01:00
Andreas Pehrson d29c47befe Bug 1208371 - Allow MediaInputPorts mapped to a destination TrackID. r=roc
This lets us know the track's TrackID in the destination stream before
the input port has been processed.
For sanity we only allow mapping to a destination TrackID if the
destination stream does not have any TRACK_ANY input ports already
assigned to it as that can cause intermittent TrackID collisions.

MozReview-Commit-ID: ClFyQl0nYFC

--HG--
extra : rebase_source : 25fa0f34cb4fa9293a572bff03fe005c33be0195
2016-01-05 10:16:22 +08:00
Andreas Pehrson f52f9b9310 Bug 1208371 - Add convenience method for checking if TrackID is explicit. r=roc
MozReview-Commit-ID: 330Fk17FJD4

--HG--
extra : rebase_source : 27395cdf427e6096f90097c1502b7930162d2c3e
2016-01-05 10:16:22 +08:00