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

89 Коммитов

Автор SHA1 Сообщение Дата
sajitk 582e1a55fa Bug 1219480 - Replace PRLogModuleInfo with LazyLogModule in the media directory. r=rillian 2015-11-15 14:49:01 +01:00
Wes Kocher f3a9eb2a26 Backed out changeset 1e5f3d1151d6 (bug 1219480) for cpp unittest bustage CLOSED TREE
--HG--
extra : commitid : BMVKq6cPeho
2015-11-11 09:36:56 -08:00
sajitk 3cbe348cdd Bug 1219480 - Replace PRLogModuleInfo with LazyLogModule in the media directory. r=rillian
--HG--
extra : rebase_source : c73098485fa005d914304fb6e7f8eba3c15e66dc
2015-11-11 06:52:00 +01:00
Karl Tomlinson 3c93b81fd5 bug 1217625 remove ADD_STREAM_SUSPENDED r=padenot
Sometimes we'll need an initial suspended count of 2, which is not supported
by this API, but this is not necessary anyway.

--HG--
extra : rebase_source : 56ecca7c14025ea7e18ba9a20e0b7725a610b429
2015-10-22 22:14:46 +13:00
Andreas Pehrson cd79c1257d Bug 1216417 - Add logging for audio and video output changes in MSG. r=roc
--HG--
extra : commitid : 22iTDWGdkKT
extra : rebase_source : fe30f433900b8e685f6c1d525c1b279babbb8079
2015-10-29 13:19:51 +08:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Andreas Pehrson 867415c0b5 Bug 1170958 - Remove ProcessedMediaStream::ForwardTrackEnabled. r=roc,jesup
TrackUnionStream guarantees that TrackIDs are maintained if no tracks
have claimed them before.

In the gUM case, we have a SourceMediaStream which we wholly own (the
DOMMediaStream's Input stream), piped into a TrackUnionStream which
no-one external is able to add tracks to (the DOMMediaStream's Owned
stream) - addTrack()ed tracks are added to the DOMMediaStream's Playback
stream.

The MediaStreamTracks being enabled/disable refer to a TrackID in the
DOMMediaStream's Owned stream.

Alas, we don't need to forward a track's enabled state, we can just do
it on the source.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : 4388211be87ebe8a3839ea031b5c504d642806ab
2015-09-30 09:31:54 +08:00
Andreas Pehrson 937747498a Bug 1170958 - Refactor DOMMediaStream to contain a 3-stage track chain. r=roc
This lets us separate tracks by ownership like so:
* Input    - Owned by the producer of the DOMMediaStream (gUM etc.)
* Owned    - Contains Input tracks (per above) or tracks cloned tracks
             if this DOMMediaStream is a clone.
* Playback - Contains Owned tracks plus tracks addTrack()ed to this
             DOMMediaStream minus tracks removeTrack()ed from this
             DOMMediaStream.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : fba22e96c6c65a74e012509f3da67a4d7df7a244
2015-09-30 09:31:54 +08:00
Andreas Pehrson 53a6c38d0d Bug 1170958 - Allow MediaInputPort to lock to a specific input track. r=roc
Locking to specific tracks lets us dynamically remove and add single
tracks to a ProcessedMediaStream.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : 0b1b79077f95bbefc8c71de551c5e3483a7d6ac0
2015-09-30 09:31:53 +08:00
Andreas Pehrson 2802ee3e88 Bug 1170958 - Add input stream and track as args to NotifyQueuedTrackChanges. r=roc
This allows for tracking the input track of an added track (for
ProcessedMediaStream tracks; SourceMediaStream tracks don't have input
tracks) directly in the NotifyQueuedTrackChanges handler, which will be
necessary for locking MediaInputPorts to specific tracks.

--HG--
extra : commitid : GPSNwBVyD4j
extra : rebase_source : 4bed5dffe66b71b7ad23f4c02531d84af25cd316
2015-09-30 09:31:53 +08:00
Karl Tomlinson 75183c57ba bug 1205558 introduce SecondsToNearestStreamTime r=padenot
--HG--
extra : rebase_source : 4a0cce9e1c89ee08d7b1d09babeda861380f1ff2
2015-09-18 15:42:00 +12:00
Karl Tomlinson e8c9471dea bug 1208327 make enum AudioContextOperation strongly typed and forward declare instead of including AudioContext.h r=roc
AudioContext.h is now exported only under mozilla.dom.

--HG--
extra : rebase_source : 7fc0a25a6bb8efe497a0e779dca2df5d7e3397b1
2015-09-25 08:49:03 +12:00
Wes Kocher 03a1803261 Backed out 9 changesets (bug 1170958) for frequent test_getUserMedia_addTrackRemoveTrack.html failures
Backed out changeset 277c1f8098d1 (bug 1170958)
Backed out changeset aa86bb9eea95 (bug 1170958)
Backed out changeset 8af8b85a4b26 (bug 1170958)
Backed out changeset ec1bf225e9cb (bug 1170958)
Backed out changeset 4a04ddca2b6b (bug 1170958)
Backed out changeset e85c9977a311 (bug 1170958)
Backed out changeset 16b40ff04e8f (bug 1170958)
Backed out changeset ad206925c84a (bug 1170958)
Backed out changeset 2106eccec79b (bug 1170958)
2015-09-25 13:08:55 -07:00
Andreas Pehrson b4ff8db67c Bug 1170958 - Remove ProcessedMediaStream::ForwardTrackEnabled. r=roc,jesup
TrackUnionStream guarantees that TrackIDs are maintained if no tracks
have claimed them before.

In the gUM case, we have a SourceMediaStream which we wholly own (the
DOMMediaStream's Input stream), piped into a TrackUnionStream which
no-one external is able to add tracks to (the DOMMediaStream's Owned
stream) - addTrack()ed tracks are added to the DOMMediaStream's Playback
stream.

The MediaStreamTracks being enabled/disable refer to a TrackID in the
DOMMediaStream's Owned stream.

Alas, we don't need to forward a track's enabled state, we can just do
it on the source.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson eacfc2cf0e Bug 1170958 - Refactor DOMMediaStream to contain a 3-stage track chain. r=roc
This lets us separate tracks by ownership like so:
* Input    - Owned by the producer of the DOMMediaStream (gUM etc.)
* Owned    - Contains Input tracks (per above) or tracks cloned tracks
             if this DOMMediaStream is a clone.
* Playback - Contains Owned tracks plus tracks addTrack()ed to this
             DOMMediaStream minus tracks removeTrack()ed from this
             DOMMediaStream.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson cbd58a2839 Bug 1170958 - Allow MediaInputPort to lock to a specific input track. r=roc
Locking to specific tracks lets us dynamically remove and add single
tracks to a ProcessedMediaStream.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:18 +08:00
Andreas Pehrson 7aca9eb1fd Bug 1170958 - Add input stream and track as args to NotifyQueuedTrackChanges. r=roc
This allows for tracking the input track of an added track (for
ProcessedMediaStream tracks; SourceMediaStream tracks don't have input
tracks) directly in the NotifyQueuedTrackChanges handler, which will be
necessary for locking MediaInputPorts to specific tracks.

--HG--
extra : commitid : Kvj9RrN9MgP
2015-09-25 23:23:17 +08:00
Robert O'Callahan 592e13f05f Bug 1189506. Call StreamTimeToGraphTime in MediaStreamGraphImpl::UpdateCurrentTimeForStreams, since we know blocking has been taken account of already there. r=karlt
--HG--
extra : commitid : YABaL6h9O0
extra : rebase_source : 3032e3a04a14f2d203ea29c501d8ebc08f531365
2015-09-08 16:38:40 +12:00
Robert O'Callahan 5e38d30d6f Bug 1189506. Create StreamTimeToGraphTime/GraphTimeToStreamTime that don't take account of blocking, and call them from AudioNodeStream. r=karlt
--HG--
extra : commitid : KZL20bqIcTe
extra : rebase_source : 001476a097968e6fa382949ababbf6bdd5e4f76d
2015-09-16 16:35:16 +12:00
Robert O'Callahan 13179ae295 Bug 1189506. Rename StreamTimeToGraphTime/GraphTimeToStreamTime to ...WithBlocking. r=karlt
--HG--
extra : commitid : 77I6WKoXbJA
extra : rebase_source : b289cbcb99c4bc52d70c78a6195c992bb5ba7ac1
2015-09-08 15:41:00 +12:00
Robert O'Callahan d745ffaf22 Bug 1189506. Remove unused NotifyConsumptionChanged. r=karlt
--HG--
extra : commitid : 844LybDIKss
extra : rebase_source : 6a514c1ef0926e540e4d27a1e3f9561636c38ddb
2015-09-04 21:39:35 +12:00
Robert O'Callahan 964e856e68 Bug 1189506. Remove no-longer-used TimeVarying.h. r=karlt
--HG--
extra : commitid : 2i4IxiPCeuH
extra : rebase_source : 399fa74717306d873d1ddb655400af81090146e4
2015-09-04 18:49:27 +12:00
Robert O'Callahan af915b4615 Bug 1189506. Replace MediaStream::mBlocked with simpler MediaStream::mStartBlocking. r=karlt
--HG--
extra : commitid : 6oeQQSBwAhx
extra : rebase_source : 3eca2ce813fa457435976f9027753ff73d6e7ac8
2015-09-04 18:44:43 +12:00
Robert O'Callahan 9c2e5faea3 Bug 1189506. Remove unused MediaStreamGraph::GetBufferedTicks. r=karlt
--HG--
extra : commitid : LtZfMVKOr50
extra : rebase_source : 4eff93b6d89b135b04b46c987d468e6d6ec9dbd4
2015-09-04 18:44:20 +12:00
Robert O'Callahan 2e597371be Bug 1189506. Remove mExplicitBlockerCount and related code since it's always zero now. r=karlt
--HG--
extra : commitid : 3UdhGMG9QiH
extra : rebase_source : 041f2fa34a458926dbe5e376d7003f9a9734a981
2015-09-04 17:00:25 +12:00
Robert O'Callahan 49907deeb0 Bug 1189506. Remove MediaStream::mBlockInThisPhase. r=karlt
--HG--
extra : commitid : HnnHdwAwJZ0
extra : rebase_source : 403dd9e309f56f0aa84467f0652ac5b6a98c242d
2015-09-04 16:57:32 +12:00
Robert O'Callahan 4de38847f5 Bug 1189506. Simplify blocking code now that stream blocking decision are always independent of other streams. r=karlt
--HG--
extra : commitid : 7du3gdoRlpL
extra : rebase_source : ea22fe1b46a9a27bbab3fc250f688aa9dae53250
2015-09-16 16:15:55 +12:00
Robert O'Callahan 33caf40bd0 Bug 1189506. Remove MediaInputPort::mFlags. r=karlt
--HG--
extra : commitid : L7X1cMHM93I
extra : rebase_source : 699460a9f2c736f09549cdef50b0cb2d052daa21
2015-09-04 16:45:21 +12:00
Robert O'Callahan 53dbc8f50e Bug 1189506. Remove aFlags parameter from AllocateInputPort. r=karlt
--HG--
extra : commitid : GZuYprloPNM
extra : rebase_source : 17ca412dd6232ad5c739918500d959a03895a65c
2015-09-04 16:42:42 +12:00
Robert O'Callahan 86c380603b Bug 1189506. Convert ChangeExplicitBlockerCount to MediaStream::Suspend/Resume. r=padenot
--HG--
extra : commitid : EAfe35GbRPL
extra : rebase_source : f6da37f3a9e8eefbdcf3e6787ec7edcc99e53859
2015-09-11 01:45:36 +12:00
Robert O'Callahan 65cc97b0f3 Bug 1189506. Make AudioContext responsible for tracking all nodes which need to be suspended and resumed. r=padenot
This simplifies MediaStreamGraph by removing the need for it to be aware
of which AudioContext a stream belongs to.

This also makes it easier to reuse stream suspending for purposes other than
AudioContext suspend/resume.

--HG--
extra : commitid : 9EmNxlrjVFO
extra : rebase_source : fee4b35d09c8f5dec76e41840d81423cde619886
2015-09-16 16:15:21 +12:00
Robert O'Callahan 6abd4c751d Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang
--HG--
extra : commitid : 3xsVxxZxINX
extra : rebase_source : 7c51fb071f9f303919ece13ff44d7a9a4cc438a9
2015-08-31 23:33:53 +12:00
Paul Adenot a5e8e37e15 Bug 901633 - Part 13 - Teach the resampler at the input of the MSG to dynamically change its channel count if needed. r=jesup
When the audio comes from a PeerConnection, we don't know how many channels the
audio will have, and it can change anyways.

--HG--
extra : rebase_source : b4d78217db012d2d94ede6d6724209b6046fbb29
2015-09-01 14:25:48 +02:00
Paul Adenot 86793c21b6 Bug 1190676 - Part 3 - Make getting a MediaStreamGraph for a channel more explicit. r=roc
Hopefully this wil also prevent getting the wrong graph.

--HG--
extra : rebase_source : 3465c29807798d237c4d289b1a88845684373de5
2015-08-25 10:17:31 +02:00
Karl Tomlinson 330a9459ea bug 1197043 move AudioNodeStream creation to stream class r=padenot
--HG--
extra : rebase_source : 2e399f5d59b057a0cca6a423481ac86f6fa2c507
2015-08-12 11:26:24 +12:00
Karl Tomlinson 4415ffebb7 bug 1197043 introduce MediaStreamGraph::AddStream() r=padenot
--HG--
extra : rebase_source : a6a5412a33709f349ab5a4c6db0801887c9d423c
2015-08-12 11:46:56 +12:00
Karl Tomlinson cd9d54d222 bug 1197043 remove unnecessary aSampleRate parameter for AudioNodeStream creation r=padenot
--HG--
extra : rebase_source : 63ba0bf5008a9acd0a268051cbcde43ba5bfad0a
2015-08-12 11:04:13 +12:00
Karl Tomlinson 7894dd5b6a bug 1198100 remove mNotificationMainThreadRunnable r=baku
If AddMainThreadListener() were called multiple times after
mFinishedNotificationSent is set then we'd get some extra NotifyRunnables but
NotifyMainThreadListeners() clears mMainThreadListeners anyway so we still get
only one notification per listener.

mNotificationMainThreadRunnable is an unnecessary optimization, so better not
to add storage to every MediaStream.

--HG--
extra : rebase_source : 7f0441d95134f1456058f668db30fb40bd9475c1
2015-08-24 11:54:24 +12:00
Karl Tomlinson fb9954a77c bug 962719 update stream state to processed time after processing r=padenot
Notifications are now up to date with processing, and
MediaStream::GetCurrentTime() now returns "the main-thread's view of how much
data has been processed by this stream", as documented.

--HG--
extra : rebase_source : 90eb894f7b5e7cf56c3635e68716fd2514494f7e
2015-07-29 19:32:10 +12:00
Karl Tomlinson 3ff62a58db bug 962719 provide video frames to the container as soon as available r=roc
This does not affect the target time of the video frames, but may mean that more
frames are displayed.

--HG--
extra : rebase_source : f804f2f58ce5ce2668e047f83adf614d9043f3a2
2015-08-14 14:16:57 +12:00
Karl Tomlinson 452d683354 bug 1190285 remove unused graph update indices r=roc
--HG--
extra : rebase_source : 8699f779b3e2e370815d563c248ac1c2d8bcba09
2015-07-31 21:36:05 +12:00
Karl Tomlinson 9005394c64 bug 1190285 unvirtualize MediaStream::AdvanceTimeVaryingValuesToCurrentTime() r=roc
--HG--
extra : rebase_source : 6a1fad0a4db718ede4256b91689250ebbfa97cfa
2015-08-03 12:28:19 +12:00
Karl Tomlinson 4ca41a6841 bug 1190285 move GraphTime definition to avoid GraphDriver.h includes r=padenot
--HG--
extra : rebase_source : 18cc48140505eff426483c08c1dd4c9c3c0aa909
2015-07-23 11:48:47 +12:00
Karl Tomlinson fdab75f3a4 bug 1190285 remove unused HaveEnoughBuffered r=padenot
--HG--
extra : rebase_source : 87bfcfb201f57e441adaefccf379c04cad0a2736
2015-07-31 18:54:05 +12:00
Karl Tomlinson 20bf85f5cd bug 1190285 remove unused DispatchWhenNotEnoughBuffered r=padenot
--HG--
extra : rebase_source : 68f91e0b11ecd0c70d6848c7a505b0208c885d0b
2015-07-31 18:46:04 +12:00
Nicholas Nethercote 87b80f8c66 Bug 1188745 - Rename nsTArray::SizeOfExcludingThis() as ShallowSizeOfExcludingThis(). r=froydnj.
This makes it clearer that, unlike how SizeOf*() functions usually work, this
doesn't measure any children hanging off the array.

And do likewise for nsTObserverArray.

--HG--
extra : rebase_source : 6a8c8d8ffb53ad51b5773afea77126cdd767f149
2015-07-28 23:24:24 -07:00
Paul Adenot d95134e72e Bug 1156472 - Part 4 - Add a new MediaStreamGraph API to connect a MediaStream to a capture stream. r=jesup,roc 2015-07-24 14:28:16 +02:00
Wes Kocher 83b4188234 Backed out 14 changesets (bug 1156472) for test_getUserMedia_audioCapture.html failures on b2g emulator
Backed out changeset deec8eb18346 (bug 1156472)
Backed out changeset 0f5bec4c05ba (bug 1156472)
Backed out changeset 2dd83ac00bf9 (bug 1156472)
Backed out changeset abd4e47887f7 (bug 1156472)
Backed out changeset 4824d9874663 (bug 1156472)
Backed out changeset 12805598e6fa (bug 1156472)
Backed out changeset e2f0062a1f67 (bug 1156472)
Backed out changeset 99ef8e436a7f (bug 1156472)
Backed out changeset 65bbfc1546af (bug 1156472)
Backed out changeset 2ab4f16eaf0a (bug 1156472)
Backed out changeset 7f565685e20a (bug 1156472)
Backed out changeset 28c03c98cb2b (bug 1156472)
Backed out changeset d477cfba6e1d (bug 1156472)
Backed out changeset 9819fa56caa1 (bug 1156472)
2015-07-24 13:15:57 -07:00
Paul Adenot 6722383386 Bug 1156472 - Part 4 - Add a new MediaStreamGraph API to connect a MediaStream to a capture stream. r=jesup,roc 2015-07-24 14:28:16 +02:00
Carsten "Tomcat" Book 2b73aa4f63 Backed out 14 changesets (bug 1156472) for bustage on a CLOSED TREE
Backed out changeset 2ddbf85a42c0 (bug 1156472)
Backed out changeset 306d02e17081 (bug 1156472)
Backed out changeset 03598139f39a (bug 1156472)
Backed out changeset 4b1e6069b598 (bug 1156472)
Backed out changeset 6c588a5eaaec (bug 1156472)
Backed out changeset 8c98d7beaea7 (bug 1156472)
Backed out changeset fbf59fbb5875 (bug 1156472)
Backed out changeset 66479dd9eed9 (bug 1156472)
Backed out changeset c8502deeed33 (bug 1156472)
Backed out changeset 1a60ff1149a1 (bug 1156472)
Backed out changeset af1638279785 (bug 1156472)
Backed out changeset 8210276a98ca (bug 1156472)
Backed out changeset 13730e7c5997 (bug 1156472)
Backed out changeset 05acb71cf981 (bug 1156472)
2015-07-24 17:08:37 +02:00