Commit Graph

348 Commits

Author SHA1 Message Date
Alastor Wu
fa581a0925 Bug 1235612 - Part 3: Implement the logic of audible state notification for agent owners. r=baku
MozReview-Commit-ID: 6CueLPpuXWm
2016-05-03 17:59:32 +08:00
Kyle Huey
b972c94d0f Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj 2016-05-05 01:45:00 -07:00
Alastor Wu
25bfd88496 Bug 1242874 - part5 : add test. r=baku, r=ehsan
MozReview-Commit-ID: 7xo6gMX0bR7
2016-05-03 09:52:53 +08:00
Alastor Wu
7b158c5b32 Bug 1242874 - part4 : wrap the volume/mute/suspend for notifyStartedPlaying. r=baku
MozReview-Commit-ID: 2FMfEVuODmu
2016-05-03 09:52:44 +08:00
Alastor Wu
5704a47317 Bug 1242874 - part3 : implement different suspended methods. r=baku, r=jwwang
MozReview-Commit-ID: HHYX29gbLwk
2016-05-03 09:52:38 +08:00
Alastor Wu
f3f3aeec61 Bug 1242874 - part1 : create suspened types. r=baku
MozReview-Commit-ID: FUAPZAdPVse
2016-05-03 09:50:24 +08:00
Aryeh Gregor
1c3d681cd3 Bug 1193762 part 8 - Fix things that will break; r=froydnj
It looks like VC++ doesn't like comparisons of nsCOMPtr to 0 after this
change, but those are bad style anyway, so I removed them from
TestCOMPtr.cpp instead of trying to make them work.
2016-05-01 21:29:23 +03:00
Carsten "Tomcat" Book
aadd508ffe Backed out changeset 85ce8cb0639a (bug 1268313) 2016-04-29 14:21:16 +02:00
Kyle Huey
e62a0823c9 Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj 2016-04-28 14:08:25 -07:00
Carsten "Tomcat" Book
61cf2d65d9 Backed out changeset 1681062d82dd (bug 1242874) for timeouts in own test browser_mediaPlayback_suspended_multipleAudio.js 2016-04-28 13:59:23 +02:00
Carsten "Tomcat" Book
e47f7c80c9 Backed out changeset d09b20eeb382 (bug 1242874) 2016-04-28 13:59:04 +02:00
Carsten "Tomcat" Book
30fc4c7852 Backed out changeset df13b449ffcc (bug 1242874) 2016-04-28 13:59:02 +02:00
Carsten "Tomcat" Book
55716aae6f Backed out changeset bd757c7d0bad (bug 1242874) 2016-04-28 13:59:01 +02:00
Alastor Wu
9f6316957f bug 1242874 - part5 : add test. r=baku, r=ehsan
MozReview-Commit-ID: 1X7xAbiKhC3
2016-04-28 00:23:52 +08:00
Alastor Wu
872b202911 Bug 1242874 - part4 : wrap the volume/mute/suspend for notifyStartedPlaying. r=baku
MozReview-Commit-ID: GRjxz1E0C9r
2016-04-28 00:23:48 +08:00
Alastor Wu
6540684075 Bug 1242874 - part3 : implement different suspended methods. r=baku, r=jwwang
MozReview-Commit-ID: Co4avRLWGRK
2016-04-28 00:23:42 +08:00
Alastor Wu
243da169a1 Bug 1242874 - part1 : create suspened types. r=baku
MozReview-Commit-ID: 1RJvbzMOCpu
2016-04-28 00:21:22 +08:00
ctai
2fc6b0fcd0 Bug 1266644 - Rename DOMMediaStream:: CreateXXXStream to DOMMediaStream:: CreateXXXStreamAsInput. r=jesup r=pehrsons
MozReview-Commit-ID: 4X0Q1XuENa4
2016-04-25 11:43:27 +08:00
ctai
74633ff4b8 Bug 1266644 - Simple refactoring. r=jesup r=pehrsons
Update some comments, rename.

MozReview-Commit-ID: A747Fd8mH3D
2016-04-07 11:44:00 +08:00
Kyle Huey
a9cf047227 Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Jean-Yves Avenard
840421a062 Bug 1267036: Force recalculation of readyState when download is progressing. r=jwwang
Under some circumstances, the MP3Demuxer is unable to calculate the buffered range which would prevent the readyState value to be recalculated. To get around this we force recalculation when the progress event is fired.

MozReview-Commit-ID: DTaxJjOX4JU
2016-04-24 23:34:23 +10:00
JW Wang
8b279070be Bug 1265978. Part 2 - add methods to MediaDecoder and MDSM to dump debugging info. r=jya.
MozReview-Commit-ID: Dbc5FT627uL
2016-04-22 14:18:26 +08:00
JW Wang
1d02e6fddb Bug 1265978. Part 1 - add mozDumpDebugInfo() to HTMLMediaElement.webidl. r=bz.
MozReview-Commit-ID: E0RZRyWnZrF
2016-04-11 12:02:43 +08:00
Gerald Squelart
3a443cbee4 Bug 848994 - p1. Refactor Decoder Doctor - r=cpearce
Some refactoring, clean-ups, etc.

The main change is that the can-play status is passed when diagnostics are
finally recorded. This will help when introducing different types of
diagnostics in future patches (e.g., Key System issues).

MozReview-Commit-ID: 182ePlrMqn4
2016-04-22 13:42:11 +10:00
Chris Pearce
7472d7e036 Bug 1265587 - Force keystatuses to be cleared when Widevine keysessions are closed. r=gerald
The Widevine CDM, and I believe the Adobe CDM too probably, do not mark a
session's keys as unusable when a key session is closed. This means that
the CDMCaps' copy of the keys that are usable is wrong, and so if the media
with the same keys is reloaded with the same MediaKeys, Firefox will assume
that the keys are usable before the license for the keys has been
re-negotiated, and so decryption will fail.


MozReview-Commit-ID: 1kTDzwSD8PE
2016-04-22 08:31:18 +12:00
Gerald Squelart
ed80913b15 Bug 1248507 - p3. Use DecoderDoctorDiagnostics - r=jya,bz
DecoderDoctorDiagnostics are now used at places where Firefox Chrome and/or
websites checks whether some media formats may be played:
- audio|video.canPlayType()
- audio|video resource loader
- MediaSource.IsTypeSupported()
- MediaSource.AddSourceBuffer()

MozReview-Commit-ID: B1KdjXODq9j
2016-04-19 17:36:19 +10:00
Gerald Squelart
ba02e820af Bug 1248507 - p1. Pass DecoderDoctorDiagnostics to PDMs&more - r=jya
Pass declared-but-yet-undefined DecoderDoctorDiagnostics pointer to various
routines that contribute to deciding if a media format can be played, and
those that create decoders.

Points where a DecoderDoctorDiagnostics can be injected are currently marked
with "/* DecoderDoctorDiagnostics* */ nullptr", and some will be used in
following patches.

MozReview-Commit-ID: 7u37bvY4CpW
2016-04-19 17:36:19 +10:00
Dragana Damjanovic
1080454580 Bug 1125916 - Fix code that miss proper flags and originAttributes in LoadInfo. Also fix some tests. r=sicking, r=jduell 2016-04-13 15:34:36 +02:00
Dan Glastonbury
c141430a96 Bug 1262358 - Part 1: Split autoplay condition into statements. r=cpearce
MozReview-Commit-ID: 19f4XOa4Kzw
2016-04-06 17:30:06 +10:00
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