Commit Graph

612 Commits

Author SHA1 Message Date
Andreas Pehrson
48987b4908 Bug 1170958 - Don't create owned MediaStreamTracks in MetadataLoaded. r=roc
When play()ing a media element after it has ended, MediaDecoder will
again call MetadataLoaded(). When capturing the media to a
DOMMediaStream, that will attempt to create new MediaStreamTracks in the
stream with the original TrackIDs. That won't work, since the original
tracks with the same TrackIDs have already ended.

We solve it by only explicitly creating MediaStreamTracks in the stream
in captureStream(), and only if they're already known. Otherwise the
tracks will be created asynchronously when available in the underlying
stream.
2015-09-25 23:23:18 +08:00
Andreas Pehrson
07dddbef19 Bug 1170958 - Improve logging of MediaStreams and playback. r=roc 2015-09-25 23:23:18 +08:00
Andreas Pehrson
4132b4532f 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.
2015-09-25 23:23:18 +08:00
Andreas Pehrson
06c7ef7f26 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.
2015-09-25 23:23:17 +08:00
Nicholas Nethercote
0929981996 Bug 1207741 - Remove gfxIntSize. r=nical.
gfxIntSize is just a typedef of gfx::IntSize, so this is very mechanical. The
only tricky part is deciding for each occurrence whether to replace it with
IntSize, gfx::IntSize or mozilla::gfx::IntSize; in all cases I went with the
shortest one that worked given the existing "using namespace" declarations.
2015-09-23 11:49:05 -07:00
Bobby Holley
53f8074964 Bug 1072150 - Use the opt-out for various sloppy consumers. r=bz 2015-09-24 14:02:41 -07:00
Randall Barker
733d03589d Bug 1166961 - Show click to play button on Fennec when autoplay is blocked. r=mfinkle 2015-09-16 16:22:00 +02:00
Nicholas Nethercote
3ddf3a726a Bug 1203427 (part 5) - Add logging of timer firings. r=froydnj. 2015-09-10 00:50:51 -07:00
Robert O'Callahan
054bdf8318 Bug 1189506. Don't bother blocking captured media-element MediaStreams while we're not decoding. r=jwwang
They should just run in realtime since we're getting rid of blocking.
2015-09-04 00:46:33 +12:00
Ehsan Akhgari
2abce617ac Bug 1199049 - Part 1: Move nsCORSListenerProxy.* to necko; r=jduell 2015-09-12 19:20:52 -04:00
Gerald Squelart
f90ce6e64f Bug 1198435 - Call RemoveMediaElementFromURITable before modifying mLoadingSrc, so that a future LookupMediaElementURITable won't access this element anymore. r=rillian 2015-09-10 09:01:44 +02:00
Gerald Squelart
5d85627056 Bug 1198435 - MediaElementTableCount now checks that the element is not present for URIs other than the expected one. r=rillian 2015-09-10 09:00:15 +02:00
Alastor Wu
ac97832fee Bug 1201969 - pause element only when start playing. r=baku 2015-09-09 10:41:33 +08:00
Robert O'Callahan
6e3741b957 Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang 2015-08-31 23:33:53 +12:00
Ehsan Akhgari
8e8dfa292a Bug 1200673 - Try to create the audio channel agent in the constructor for AutoNotifyAudioChannelAgent too; r=baku
Landed on a CLOSED TREE
2015-09-01 12:10:46 -04:00
Ehsan Akhgari
5c52312be6 Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 20:44:23 -04:00
Ehsan Akhgari
c62449cc00 Backout bug 1200208 for build bustage on a CLOSED TREE 2015-08-31 16:49:27 -04:00
Ehsan Akhgari
8ebd48792f Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 16:24:51 -04:00
Ryan VanderMeulen
8d905ff1e7 Backed out changeset 6b264cf230a0 (bug 1200208) for Windows bustage.
CLOSED TREE
2015-08-31 14:11:58 -04:00
Ehsan Akhgari
8711fed1f5 Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 13:44:55 -04:00
Paul Adenot
5c549f01e0 Bug 1190676 - Part 12 - Fix mozCaptureStream. r=pehrsons 2015-08-27 16:13:56 +02:00
Paul Adenot
ac7efa62cc Bug 1190676 - Part 9 - Fix consumers: AudioCapture. r=roc 2015-08-25 10:29:51 +02:00
Paul Adenot
b4e244c376 Bug 1190676 - Part 1 - Use the right MediaStreamGraph when setting a MediaStream as mozSrcStream on an HTMLMediaElement. r=roc 2015-08-25 10:16:41 +02:00
Andrea Marchesini
c2655a03af Bug 1184292 - Remove some Wakelock warning messages when unlocking. r=smaug
CLOSED TREE
2015-08-26 09:21:00 -04:00
Ehsan Akhgari
b3293c48a0 Bug 1188754 - Do not notify the audio channel agent on Firefox OS when the document activity change callback detects that the element is muted by the audio channel; r=baku 2015-08-21 12:29:24 -04:00
Wes Kocher
4bdc1d6162 Merge inbound to central, a=merge 2015-08-20 12:42:21 -07:00
Ehsan Akhgari
3b4ee37a79 Bug 1196361 - Remove the media.useAudioChannelService pref; r=baku
We need to rely on the audio channel service for all products now,
so supporting running without it seems pointless at this point.
2015-08-19 21:00:18 -04:00
Alastor Wu
58ea40697a Bug 1191207 - cancel chrome checking 2015-08-06 14:54:01 +08:00
Karl Tomlinson
64d86026c7 bug 962719 update NextFrameStatus() on finished notification r=roc
This provides HAVE_CURRENT_DATA readyState.
2015-08-04 17:43:46 +12:00
Ehsan Akhgari
9e1ae0a6f8 Bug 1191491 - Do not dispatch an audio-playback notification when swapping browsers; r=smaug
We send a pagehide event during swapping docshell frame loaders, and
before this patch we would not be able to differentiate this event with
the one that we send when navigating away from a page, so we would
incorrectly dispatch an audio-playback notification indicating that
audio playback has stopped.  This patch adds a flag to the root docshell
when the frame loader swapping is in progress and disables the above
behavior when that flag is set.
2015-08-07 12:18:24 -04:00
Ryan VanderMeulen
065f75f964 Merge b2g-inbound to m-c. a=merge 2015-08-06 15:37:49 -04:00
Ehsan Akhgari
3b3c24f689 Bug 1190040 - Part 2: Teach the audio channel service how to not notify audio-playback, and do that when a media element has no audio track; r=padenot 2015-08-06 10:26:27 -04:00
Ehsan Akhgari
870bfd4aba Bug 1190040 - Part 1: Do not dispatch media-playback notifications for media elements that do not have an audio track; r=cpearce 2015-08-06 10:25:38 -04:00
Daosheng Mu
56b53a9275 Bug 1178725 - Fix create videoFrameContainer crash on B2G desktop. r=roc 2015-08-05 20:02:00 +02:00
Ehsan Akhgari
7977ccbc79 Backout bug 1190040 for test failures 2015-08-05 01:12:05 -04:00
Ehsan Akhgari
a732ba97cf Bug 1190023 - Ensure that muting a media element dispatches the media-playback event, and also include the muted state in computing whether a media element is actively playing audio; r=cpearce 2015-08-04 20:07:41 -04:00
Ehsan Akhgari
17d7254ac3 Bug 1190040 - Do not dispatch media-playback notifications for media elements that do not have an audio track; r=baku 2015-08-04 19:38:51 -04:00
Birunthan Mohanathas
a0f7c73250 Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan
Comment-only so DONTBUILD.
2015-08-04 16:17:36 -07:00
JW Wang
b410dda30d Bug 1189204 - activate autoplay when playing a media source. r=jya. 2015-08-04 11:17:03 +08:00
Jan-Ivar Bruaroey
51ee816249 Bug 1175523 - Add HTMLMediaElement.srcObject alias to .mozSrcObject. r=roc, r=smaug 2015-07-14 00:04:14 -04:00
Ehsan Akhgari
0ce6ecf54b Bug 1188095 - Don't pause media elements on 'graphene'; r=baku
Note that MOZ_GRAPHENE currently only exists on the larch project branch,
but this is so simple that it seems worth taking.
2015-07-28 08:53:23 -04:00
Randall Barker
3f3b4cacfb Bug 1178858 - Video would not playback after seek seekbar first if media.autoplay.enabled = false. r=cpearce
When autoplay is disabled, the media element was not detecting user
initiated seeking so when a script attempted to play after seeking,
playing would be blocked.
2015-07-24 15:56:00 +02:00
Birunthan Mohanathas
b58661e349 Bug 1186806 - Part 3: Replace nsBaseHashtable::EnumerateRead() with iterators in HTMLMediaElement. r=khuey 2015-07-27 18:45:12 -07:00
Paul Adenot
a6cde28556 Bug 1156472 - Part 7 - Allow to un-capture an HTMLMediaElement. r=pehrsons,jwwang 2015-07-24 14:28:17 +02:00
Paul Adenot
4a401910e1 Bug 1156472 - Part 6 - Connect HTMLMediaElement and AudioContext to the capture stream when capturing is needed. r=roc 2015-07-24 14:28:17 +02:00
Paul Adenot
54271c1605 Bug 1156472 - Part 1 - Allow to capture all HTMLMediaElements and AudioContexts for a document. r=baku,padenot
This is built on top of the AudioChannel infrastructure. This patch does not
actually implement the capture, it just does the plumbing to be able to notify
all HTMLMediaElement/AudioContext for a document.
2015-07-09 16:40:08 +02:00
Chris Pearce
0f8a9f5a55 Bug 1187113 - Add more logging around EME promise rejects and method calls that often fail. r=edwin 2015-07-27 11:52:19 +12:00
Wes Kocher
548360d6f6 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
31cb4303a7 Bug 1156472 - Part 7 - Allow to un-capture an HTMLMediaElement. r=pehrsons,jwwang 2015-07-24 14:28:17 +02:00
Paul Adenot
26883126ea Bug 1156472 - Part 6 - Connect HTMLMediaElement and AudioContext to the capture stream when capturing is needed. r=roc 2015-07-24 14:28:17 +02:00