Commit Graph

369 Commits

Author SHA1 Message Date
Andreas Pehrson
89009d39d5 Bug 1208371 - Forward declare DOMMediaStream in HTMLMediaElement.h. r=jesup
MozReview-Commit-ID: KUPovpKfgek
2016-01-23 23:20:28 +08:00
Andreas Pehrson
2432434625 Bug 1208371 - Move MediaStreamTrack's label to MediaStreamTrackSource. r=jib
MozReview-Commit-ID: Aj7Cht4zxc6
2016-01-22 16:27:37 +08:00
Andreas Pehrson
23adbf5caf 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
2016-02-04 09:27:09 +08:00
Andreas Pehrson
1db5f12351 Bug 1208371 - Remove ref counting from DOMMediaStream::TrackListener. r=roc
This makes it consistent with PrincipalChangeObserver.

MozReview-Commit-ID: 91PtqFZRcW6
2016-01-05 10:16:28 +08:00
Andreas Pehrson
e43a311400 Bug 1208371 - Change HTMLMediaElement video sinks to check principal for video only tracks. r=mt
MozReview-Commit-ID: KGbyJDgpBOn
2016-01-26 15:36:52 +08:00
Andreas Pehrson
f2dac31c58 Bug 1208371 - Move HTMLMediaElement::CaptureStream to forward CORSMode changes through MediaStreamTrackSource. r=mt
MozReview-Commit-ID: 6bMpKO6ccjd
2016-01-05 10:16:27 +08:00
Andreas Pehrson
00c438eb9b Bug 1208371 - Rename CreateOwnDOMTrack/CreateClonedDOMTrack to CreateDOMTrack/CloneDOMTrack. r=jib
MozReview-Commit-ID: DOGiwcYycJY
2016-01-05 10:16:26 +08:00
Andreas Pehrson
ed37b11aca Bug 1208371 - Route ApplyConstraints through MediaStreamTrackSource. r=jib
MozReview-Commit-ID: CnJnxszKU4o
2016-02-01 22:43:38 +08:00
Andreas Pehrson
8f99be7608 Bug 1208371 - Make HTMLMediaElement::CaptureStream pass its principal to MediaStreamTrack. r=mt
MozReview-Commit-ID: 7ERLRSM8fz6
2016-01-14 18:34:39 +08:00
Andreas Pehrson
84e91fd789 Bug 1208371 - Add an interface DecoderPrincipalChangeObserver to HTMLMediaElement. r=roc
MozReview-Commit-ID: DwDHDE7SLxY
2016-01-14 11:38:08 +08:00
Andreas Pehrson
e88474919d Bug 1208371 - Add MediaStreamTrackSourceGetter interface. r=roc
This allows DOMMediaStream to assign MediaStreamTrackSources to
dynamically created MediaStreamTracks.

MozReview-Commit-ID: 3v91zLiqfl7
2016-01-05 10:16:21 +08:00
Andreas Pehrson
cd7f617dd4 Bug 1208371 - Add a MediaStreamTrackSource interface. r=roc
This lets a MediaStreamTrack communicate with its source/producer on the
main thread. It's for now used for stopping a track at the source and
retrieving some metadata, but it could also be a link between actual
sinks of a track and the source, to for instance let the source optimize
by scaling down the resolution when all sinks want lowres-video.

MozReview-Commit-ID: D4SJLr0aqhJ
2016-04-06 14:46:56 +02:00
Andreas Pehrson
44cf695ac9 Bug 1208371 - Move OnTracksAvailableCallback out of DOMMediaStream. r=roc
So it can be forward declared.

MozReview-Commit-ID: 4RH7p8AzO84
2016-01-05 10:16:21 +08:00
ctai
c181a551f1 Bug 1260950 - Set mInitialSizeFound to true when the initial size id found. r=jesup, r=pehrsons a=kwierso
MozReview-Commit-ID: Ch3jCR4pFYN
2016-03-31 10:13:04 +08:00
Bryce Van Dyk
52314f023d Bug 657791 - Update seekable range handling for cueless WebMs. r=kinetik
MediaDecoder previously had 3 states within GetSeekable(), media is either
seekable, seekable but not supported by transport, or not seekable. Due to
changes to make cueless webms playable, a 4th option is needed: a file that is
not fully seekable, but may support seeking from the transport, such as these
webms, should only be seekable in the buffered range.

MozReview-Commit-ID: ISeFkngtrGU
2016-02-04 17:31:21 +13:00
Louis Christie
22736b561f Bug 1238433 - Added telemetry for the proportion of dropped frames. r=cpearce, f=bsmedberg 2016-02-18 15:22:13 +13:00
Carsten "Tomcat" Book
c755b9eb56 Backed out changeset c7be30a5321e (bug 1238433) for bustage 2016-02-18 10:52:03 +01:00
Louis Christie
810c37bb91 Bug 1238433: Added telemtry for the proportion of frames dropped during playback. r=cpearce 2016-02-12 10:02:00 +13:00
Louis Christie
2e5b5c2b9f Bug 1245982 - Added telemetry for the number of uses of HTMLMediaElement.fastSeek(). r=cpearce 2016-02-05 16:32:41 +13:00
Jean-Yves Avenard
331f92a4c8 Bug 1246521: P1. Add MediaDecoderOwner::HasError method. r=gerald 2016-02-08 16:31:42 +11:00
Kyle Huey
e95edb30a9 Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Andreas Pehrson
3f72b3e06e Bug 1240478 - Have MediaStreamSizeListener active immediately, until the initial size is known. r=jesup 2016-01-29 11:10:19 +08:00
Andreas Pehrson
0222a03f29 Bug 1240478 - Assert that we know the video size on 'loadedmetadata'. r=jesup 2016-01-21 19:42:55 +08:00
Andreas Pehrson
ab871e49d2 Bug 1240478 - Remove Mutex from MediaStreamSizeListener. r=jesup 2016-01-21 19:42:54 +08:00
Sebastian Hengst
f41ca277c9 Backed out changeset c8013b27a0fa (bug 1239899) for failing W(2). r=backout 2016-01-29 00:32:51 +01:00
Chris Pearce
b24a532cc6 Bug 1239899 - Pause media elements removed from document via calling pause(). r=roc
The spec requires us to await a stable state and pause when a media element is removed from a document.

Additionally, before this change we would pause in UnbindFromTree only if HTMLMediaElement::mPaused is false.
However if the media element is set to autoplay, and we unbind before autoplay has had a chance to activate,
we will still continue loading and activate autoplay later. Calling pause, as required by the spec, means
we'll cancel autoplaying.
2016-01-15 15:54:54 +13:00
Andrea Marchesini
71e24b9f05 Bug 1224936 - AudioChannelAgent should be informed when HTMLMediaElement dispatches an error, r=roc 2016-01-25 16:03:42 +00:00
JW Wang
b1510021be Bug 1241405 - reset mCurrentPlayRangeStart in AbortExistingLoads(). r=jya. 2016-01-25 10:52:54 +08:00
Phil Ringnalda
564d45ddc4 Back out 4 changesets (bug 1240478) for somehow causing bug 1242085
Backed out changeset 31629671c71c (bug 1240478)
Backed out changeset bc9a56a067b5 (bug 1240478)
Backed out changeset 485bd08acb96 (bug 1240478)
Backed out changeset 38ef99bddd74 (bug 1240478)
2016-01-22 23:26:45 -08:00
Andreas Pehrson
17161a3cdd Bug 1240478 - Have MediaStreamSizeListener active at all times, not only when playing. r=jesup 2016-01-21 19:42:55 +08:00
Andreas Pehrson
8dd34c0886 Bug 1240478 - Assert that we know the video size on 'loadedmetadata'. r=jesup 2016-01-21 19:42:55 +08:00
Andreas Pehrson
7b1732ffeb Bug 1240478 - Remove Mutex from MediaStreamSizeListener. r=jesup 2016-01-21 19:42:54 +08:00
Alastor Wu
200f23ab4c Bug 1238906 - part2 : notify audible state from MDSM to ME. r=jwwang 2016-01-21 10:27:38 +08:00
Jean-Yves Avenard
1af07b30da Bug 1236703: P3. Add moz specific method to retrieve debug data to media object IDL. r=bz 2016-01-20 09:50:26 +11:00
Sebastian Hengst
c4450c2e3b Backed out 2 changesets (bug 1238906) for bustage in M(2) on OSX and Windows. r=bustage
Backed out changeset e729b30ba7b4 (bug 1238906)
Backed out changeset 1857bca40ac4 (bug 1238906)
2016-01-18 13:11:43 +01:00
Emilio Cobos Álvarez
3602c50091 Bug 866513 - Non-empty MediaStreamTrack labels. r=jib 2016-01-16 13:39:00 +01:00
Alastor Wu
3a65043820 Bug 1238906 - part2 : notify audible state from MDSM to ME. r=jwwang 2016-01-18 10:50:47 +08:00
JW Wang
3ebf4dc195 Bug 1237616 - Remove the aForceBuffering arugment from MediaDecoder::Resume(). r=cpearce. 2016-01-12 08:04:32 +08:00
Chris Pearce
2662480cea Bug 1233274 - Don't shutdown detached MediaKeys. r=gerald 2016-01-06 13:28:43 +13:00
JW Wang
e89c978e60 Bug 1230483 - Part 2 - LoadFromSourceChildren() should be queued at most once in an event cycle. r=roc 2015-12-21 19:55:43 +08:00
Sotaro Ikeda
67ee026f82 Bug 1205713 - Merge ImageHostOverlay/ImageClientOverlay to ImageHost/ImageClient r=nical 2015-12-29 01:07:33 -08:00
Bobby Holley
401b5658db Bug 1235411 - Remove IsCallerChrome check in HTMLMediaElement::Observe. r=khuey 2015-12-28 10:46:33 -08:00
Kartikaya Gupta
0ae916cdfd Bug 1228564 - Follow-up to fix static analysis build bustage. r=me 2015-12-27 10:27:15 -05:00
Alastor Wu
7ab51e23c1 Bug 1228564 - part 2 : check audio capturing when the agent is registered/unregistered. r=baku. 2015-12-24 17:28:45 +08:00
Alastor Wu
fbea0f8cc4 Bug 1228564 - part 1 : revert the changeset of bug 1190040. r=baku. 2015-12-24 17:17:30 +08:00
Sebastian Hengst
80da64a12f Backed out changesets 961f205d340d, 14a4637e9d96 and 14a4637e9d96 (bug 1228564) for failing Android M(4) test_browserElement_inproc_AudioChannel.html. r=backout 2015-12-27 22:28:08 +01:00
Kartikaya Gupta
1a411e0c8a Bug 1228564 - Follow-up to fix static analysis build bustage. r=me 2015-12-27 10:27:15 -05:00
Alastor Wu
b238891922 Bug 1228564 - part 2 : check audio capturing when the agent is registered/unregistered. r=baku. 2015-12-24 17:28:45 +08:00
Alastor Wu
eb69386b37 Bug 1228564 - part 1 : revert the changeset of bug 1190040. r=baku. 2015-12-24 17:17:30 +08:00
Karl Tomlinson
821949e44d bug 1228484 throw instead of capturing a second stream to a different graph r=roc 2015-12-04 01:30:46 +13:00