Commit Graph

16552 Commits

Author SHA1 Message Date
Mihai Alexandru Michis
4345a38d0d Backed out 9 changesets (bug 1607791, bug 1605566) for causing multiple wpt failures.
CLOSED TREE

Backed out changeset 39f34852842e (bug 1605566)
Backed out changeset 3427a92445c8 (bug 1605566)
Backed out changeset 36631ec96f1f (bug 1605566)
Backed out changeset 554b2bdce66c (bug 1605566)
Backed out changeset 37026beadbd8 (bug 1605566)
Backed out changeset f15835338319 (bug 1607791)
Backed out changeset 4c92f506cf62 (bug 1607791)
Backed out changeset 80707bcc8427 (bug 1607791)
Backed out changeset 75bc7533c899 (bug 1607791)
2020-01-15 13:45:33 +02:00
Andrea Marchesini
6d6aa4cc66 Bug 1607791 - Get rid of IDBMutableFile.getFile() - part 3 - Rename SameProcessDifferentThread to SameProcess, r=asuth,sfink
Differential Revision: https://phabricator.services.mozilla.com/D59142

--HG--
extra : moz-landing-system : lando
2020-01-15 09:59:16 +00:00
Aaron Klotz
c4f1b7b2d0 Bug 1608577: Part 1 - Remove |using namespace mozilla::java| from dom/media; r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D59796

--HG--
extra : moz-landing-system : lando
2020-01-13 22:04:02 +00:00
Martin McNickle
f6f5fae1d0 Bug 1349658 - Add support for IEEE Float encoded wav files. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D59520

--HG--
extra : moz-landing-system : lando
2020-01-14 15:41:10 +00:00
Eric Rahm
78ee6675cf Bug 1606187 - Part 2b: Update users of nsClassHashtable to handle UniquePtr differences r=KrisWright,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D59042

--HG--
extra : moz-landing-system : lando
2020-01-13 19:18:56 +00:00
Nika Layzell
c76e93dad5 Bug 1607573 - Part 3: Remove GetRealFrameElementOuter in favor of GetFrameElement, r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D59550

--HG--
extra : moz-landing-system : lando
2020-01-10 19:39:01 +00:00
Bogdan Tara
970d9242c7 Bug 1594029 - disable test_streams_element_capture_reset.html for frequent failures r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D59469

--HG--
extra : moz-landing-system : lando
2020-01-10 11:28:39 +00:00
John Lin
94e7802888 Bug 1605833 - Add FLAC and Opus support back to Widevine on Windows. r=bryce
Bug 1510424/D13135 remove them from Windows along with Android by mistake.
This patch also moves some code to separate Android only logic from other
platforms to avoid making similar mistakes.

Differential Revision: https://phabricator.services.mozilla.com/D59248

--HG--
extra : moz-landing-system : lando
2020-01-09 00:46:47 +00:00
alwu
a68bad3c1f Bug 1605769 - part3 : set playback state to the event source according to the play state of the main controller. r=MeFisto94
Based on the main controller's play state to set the correct playback state to the event source.

Differential Revision: https://phabricator.services.mozilla.com/D58261

--HG--
extra : moz-landing-system : lando
2020-01-10 04:13:32 +00:00
alwu
0823bf3111 Bug 1605769 - part2 : create controller manager to select main controller. r=MeFisto94
Implement a class `ControllerManager` to wrap the details of how to select the main controller, which would also be used to monitor main controller's play state change.

Differential Revision: https://phabricator.services.mozilla.com/D58260

--HG--
extra : moz-landing-system : lando
2020-01-10 12:24:13 +00:00
alwu
fd68b00cb4 Bug 1605769 - part1 : use PlaybackState in media controller and add a method to monitor its change r=MeFisto94
We use `PlaybackState` to replace `boolean` which can clearly indicate what controller's current state is and introduce a new method `PlayStateChangedEvent()` which can be used to monitor the play state change of the media controller.

Differential Revision: https://phabricator.services.mozilla.com/D58174

--HG--
extra : moz-landing-system : lando
2020-01-09 04:42:26 +00:00
alwu
b02cf1f17d Bug 1605769 - part0 : extend PlaybackState and move it out from MediaEventSource. r=MeFisto94
Since we would like to use `PlaybackState` in MediaController, we move it out from `MediaEventSource` and put it in `MediaControl.h`, which makes more sense because it actually represents media controller's playback state.

In addition, modify `ePlayed` to `ePlaying` and add one new state `eStopped`.

Differential Revision: https://phabricator.services.mozilla.com/D59100

--HG--
extra : moz-landing-system : lando
2020-01-10 12:23:04 +00:00
Bryce Seager van Dyk
963bdd1440 Bug 1607883 - Allow GeckoView autoplay permission prompt in non-e10s. r=alwu
Prior to this patch we prevented permission requests firing if the code was
executed in a parent process. This makes sense for e10s, as only content
processes should do so. However, if we're in non-e10s mode then the single
process we run the code in is considered a parent process for the purpose of our
check and we don't fire the request.

This patch changes the check to not send the request if we're specifically in an
e10s parent process.

Differential Revision: https://phabricator.services.mozilla.com/D59404

--HG--
extra : moz-landing-system : lando
2020-01-10 13:14:23 +00:00
Neil Deakin
f4cc73018c Bug 1601301, add an 'include descendants' flag to mediaCaptureWindowState. With fission, need to handle each subframe separately, r=jib
The window will be supplied in the recording-device-events notification and mediaCaptureWindowState will be called on each window in turn.

Differential Revision: https://phabricator.services.mozilla.com/D56569

--HG--
extra : moz-landing-system : lando
2020-01-10 15:29:08 +00:00
Emilio Cobos Álvarez
4b5bcc9de3 Bug 1608064 - Use <type_traits> in MediaEventSource.h. r=alwu
Differential Revision: https://phabricator.services.mozilla.com/D59308

--HG--
extra : moz-landing-system : lando
2020-01-10 10:39:23 +00:00
alwu
c2d2ecbd96 Bug 1595603 - part2 : delay seeking task when media is inactive r=bryce
When media element is inactive, asking MDSM to seek is actually useless, because all the data we decode won't be showed to user. In addition, we have to store extra pending events for `seeking` and `seeked`, which might result in memory overflow if the inactive page is calling `seek()` all the time.

Therfore, we should delay all seeking tasks while media is inactive, and perform the latest seeking task when media becomes active.

Differential Revision: https://phabricator.services.mozilla.com/D58918

--HG--
extra : moz-landing-system : lando
2020-01-09 17:10:08 +00:00
Karl Tomlinson
e026e88f35 Bug 1558526 remove check for callable process() in registerProcessor() r=bzbarsky
Since https://github.com/WebAudio/web-audio-api/pull/2104

Differential Revision: https://phabricator.services.mozilla.com/D55227

--HG--
extra : moz-landing-system : lando
2020-01-10 02:31:13 +00:00
Sylvestre Ledru
c521758c5e Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D58175

--HG--
extra : moz-landing-system : lando
2020-01-09 21:50:11 +00:00
John Lin
7c920d7905 Bug 1602996 - assert if Android decoder is used after shutdown. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D59194

--HG--
extra : moz-landing-system : lando
2020-01-09 06:22:19 +00:00
alwu
ba4fab1cc2 Bug 1607051 - do not access browsing context after XPCOM is shutdown. r=bryce
After XPCOM is shutdown, `sBrowsingContext` would be released, so using `BrowsingContext::Get()` would cause crash. Therefore, after shutdown XPCOM, we should not access browsing context.

Differential Revision: https://phabricator.services.mozilla.com/D59079

--HG--
extra : moz-landing-system : lando
2020-01-08 17:11:34 +00:00
alwu
04ff0260ac Bug 1554343 - always release the refptr of media cache on main thread. r=bryce
It's possible that `self` is the last pointer holding the media cache, so we have to ensure releasing `self` on main thread because media cache should always be destroyed on main thread only.

Differential Revision: https://phabricator.services.mozilla.com/D58900

--HG--
extra : moz-landing-system : lando
2020-01-07 16:59:11 +00:00
Eric Rahm
6d75492859 Bug 1241518 - Part 1: Remove unused nsAutoPtr.h includes in xpcom/ r=kmag
This removes various unused `#include "nsAutoPtr.h"` in `xpcom/`. Additionally
adds a few includes to the media stack.

Differential Revision: https://phabricator.services.mozilla.com/D58282

--HG--
extra : moz-landing-system : lando
2020-01-07 00:06:01 +00:00
Jan-Ivar Bruaroey
bb5feceade Bug 1606507 - Null-check on mTrackMain to avoid race. r=dminor
Differential Revision: https://phabricator.services.mozilla.com/D58838

--HG--
extra : moz-landing-system : lando
2020-01-06 20:03:26 +00:00
Dan Minor
a0d914e057 Bug 1604497 - Ensure minimum frame width and height in MediaEngineRemoteVideoSource; r=jib
Differential Revision: https://phabricator.services.mozilla.com/D58151

--HG--
extra : moz-landing-system : lando
2019-12-27 14:34:57 +00:00
Andreea Pavel
9d0ceff6b1 Bug 1522739 - unskip test_mediarecorder_pause_resume_video.html r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D58745

--HG--
extra : moz-landing-system : lando
2020-01-06 15:07:25 +00:00
Tom Schuster
989660da15 Bug 1605854 - Remove uneval/toSource from DOM tests. r=smaug
Using JSON.stringify in dom/tests/mochitest/chrome/test_clonewrapper.xhtml might not be the best solution, because
the testObject contains ImageData objects.

Differential Revision: https://phabricator.services.mozilla.com/D58645

--HG--
extra : moz-landing-system : lando
2020-01-06 13:09:27 +00:00
atul ramkrishnan
8d9da461e2 Bug 1603099 - Remove unused declaration in VideoFrameContainer.cpp r=jya
Differential Revision: https://phabricator.services.mozilla.com/D56990

--HG--
extra : moz-landing-system : lando
2020-01-06 12:05:15 +00:00
John Lin
fb206ef4ec Bug 1592140 - p2: disable HW H.264 support for certain tests. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D53298

--HG--
extra : moz-landing-system : lando
2019-11-20 04:25:32 +00:00
John Lin
8f7d3c7b5b Bug 1599799 - p1: check Java encoder existence before processing output. r=jya
Java callback runs on Android binder thread and can be preempted by
encoder task queue so that ProcessOutput() is queued after
ProcessShutdown(). Discard the output when that happens.

Differential Revision: https://phabricator.services.mozilla.com/D55759

--HG--
extra : moz-landing-system : lando
2019-12-06 05:54:54 +00:00
Jonathan Kingston
27ca040dfd Bug 1606774 - Change GetAttribute to GetAttr where possible r=baku
Differential Revision: https://phabricator.services.mozilla.com/D58585

--HG--
extra : moz-landing-system : lando
2020-01-03 23:40:53 +00:00
alwu
4bde50109e Bug 1571493 - part5 : use 'MediaControlKeysEventHandler' to deliver control keys event. r=chunmin
Use `MediaControlKeysEventHandler` to handle the control keys event, which can always find corresponding controlled media if there are some.

Differential Revision: https://phabricator.services.mozilla.com/D57575

--HG--
extra : moz-landing-system : lando
2020-01-03 01:27:24 +00:00
alwu
bdc6a8cae7 Bug 1571493 - part4 : support 'ControlledMediaState' in media controller r=chunmin
Introduce `ControlledMediaState` to media controller, so now we can now how many controlled media are playing, which allow us to update `mIsPlaying` correctly.

Differential Revision: https://phabricator.services.mozilla.com/D57574

--HG--
extra : moz-landing-system : lando
2020-01-03 01:39:33 +00:00
alwu
2d2b857325 Bug 1571493 - part3 : notify media state and audible state changes. r=chunmin
Modify IPC method to support notify `ControlledMediaState` to the media controller, and remove the previous implementation.

Differential Revision: https://phabricator.services.mozilla.com/D57572

--HG--
extra : moz-landing-system : lando
2020-01-03 01:34:34 +00:00
alwu
9977c552ff Bug 1571493 - part1 : implement 'ContentMediaController' which is used to notify 'MediaControlKeysEvent' for controlled media. r=chunmin
Implement class `ContentMediaController` that is used to dispatch media controls key events to those media which would like to be controlled.

`ContentMediaController` is inherited from two classes, `MediaControlAgent` and `MediaControlKeysEventHandler`. The former one is used for controlled media, the controlled media can register itself to `MediaControlAgent` to receive events and do corresponding operations depending on the event type. The latter one is used to handle events sent from chrome process and dispatch them to the corresponding controlled media.

Differential Revision: https://phabricator.services.mozilla.com/D57570

--HG--
extra : moz-landing-system : lando
2020-01-03 01:29:38 +00:00
Alastor Wu
053826b10f Bug 1604653 - add new methods to set and get playback state for the event source. r=MeFisto94
Differential Revision: https://phabricator.services.mozilla.com/D58159

--HG--
extra : moz-landing-system : lando
2019-12-31 14:10:53 +00:00
Paul Warner
7fec362cac Bug 1591230 - On macOS use MediaPlayer library for media keys when available. r=spohl,alwu
On macOS 10.12.1+, we use `MediaPlayer` library, which has better media key integration, to replace the implementation of `CG EventLoop`.

Differential Revision: https://phabricator.services.mozilla.com/D46890

--HG--
extra : moz-landing-system : lando
2019-12-31 01:41:33 +00:00
alwu
3e9f43b0a2 Bug 1605699 - part2 : add an assertion to ensure we only append a valid sample. r=bryce
The sample we got from demuxer are all guaranteed to be valid because they are returned in a `SamplesHolder`, which has assertion to make sure all samples appended are valid [1].

`ProcessFrame()` might be a possible place where we incorrectly change sample from valid to invalid, because we modify sample's time and duration there. Therefore, adding an assertion to make sure all samples are still valid.

[1] https://searchfox.org/mozilla-central/source/dom/media/MediaDataDemuxer.h#103-106

Differential Revision: https://phabricator.services.mozilla.com/D58393

--HG--
extra : moz-landing-system : lando
2019-12-31 01:24:23 +00:00
alwu
db06bc3f48 Bug 1605699 - part1 : add an assertion to ensure 'GetSample()' always return a valid sample. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D58392

--HG--
extra : moz-landing-system : lando
2019-12-31 01:24:00 +00:00
Julien Cristau
db0acfd03c Bug 1605861 - test fix. r=dminor
Differential Revision: https://phabricator.services.mozilla.com/D58368

--HG--
extra : moz-landing-system : lando
2019-12-30 13:35:18 +00:00
Alastor Wu
32f2dfb642 Bug 1605798 - part2 : remove unused functions r=chunmin
We have no plan to use those functions, so remove them in order to keep code clean.

Differential Revision: https://phabricator.services.mozilla.com/D58172

--HG--
extra : moz-landing-system : lando
2019-12-26 18:52:00 +00:00
Alastor Wu
b7b2d91c6a Bug 1605798 - part1 : remove some useless RefPtr usage r=chunmin
When a function returning a pointer, returning a raw pointer is enough. The callers should use `RefPtr` to store this pointer explicitly if they do need to add a refcounting.

In addition, using `RefPtr` in the parameter cannot prevent anything as well.

Differential Revision: https://phabricator.services.mozilla.com/D58171

--HG--
extra : moz-landing-system : lando
2019-12-26 19:49:13 +00:00
Daniel Varga
531690d2c4 Backed out 2 changesets (bug 1605798) for causing mochitest failures at builds/worker/workspace/build/src/dom/media/mediacontrol/MediaController.cpp
Backed out changeset 6ea0907b88ec (bug 1605798)
Backed out changeset 538b05d2ea79 (bug 1605798)
2019-12-26 20:46:44 +02:00
Alastor Wu
cdc46885e3 Bug 1605798 - part2 : remove unused functions r=chunmin
We have no plan to use those functions, so remove them in order to keep code clean.

Differential Revision: https://phabricator.services.mozilla.com/D58172

--HG--
extra : moz-landing-system : lando
2019-12-24 00:19:15 +00:00
Alastor Wu
a0b04bfd73 Bug 1605798 - part1 : remove some useless RefPtr usage r=chunmin
When a function returning a pointer, returning a raw pointer is enough. The callers should use `RefPtr` to store this pointer explicitly if they do need to add a refcounting.

In addition, using `RefPtr` in the parameter cannot prevent anything as well.

Differential Revision: https://phabricator.services.mozilla.com/D58171

--HG--
extra : moz-landing-system : lando
2019-12-26 17:23:08 +00:00
Dan Minor
fa5786e117 Bug 1605703 - Further relax the timing requirements of test_mediarecorder_pause_resume_video.html; r=ng
Differential Revision: https://phabricator.services.mozilla.com/D58113

--HG--
extra : moz-landing-system : lando
2019-12-24 00:14:24 +00:00
Haik Aftandilian
016cd664f6 Bug 1599230 - Part 2 - Remove GMP sandbox earlyinit pref and older sandbox startup code paths r!mjf r=mjf
Remove the security.sandbox.gmp.mac.earlyinit pref now that GMP early sandbox init is the default on release.

Remove the old unused code paths for initializing the GMP sandbox later during process startup (only used when security.sandbox.gmp.mac.earlyinit=false).

Differential Revision: https://phabricator.services.mozilla.com/D54968

--HG--
extra : moz-landing-system : lando
2019-12-21 00:31:50 +00:00
Haik Aftandilian
c91e72a1c7 Bug 1599230 - Part 1 - Remove RDD sandbox earlyinit pref and older sandbox startup code paths r!mjf r=mjf
Remove the security.sandbox.rdd.mac.earlyinit pref now that RDD early sandbox init is the default on release.

Remove the old unused code paths for initializing the RDD sandbox later during process startup (only used when security.sandbox.rdd.mac.earlyinit=false).

Differential Revision: https://phabricator.services.mozilla.com/D54967

--HG--
extra : moz-landing-system : lando
2019-12-21 00:31:41 +00:00
alwu
6c23e730f2 Bug 1604962 - use NS_INLINE_DECL_PURE_VIRTUAL_REFCOUNTING to support refcounting for abstrach classes. r=chunmin
Inheriting from `nsISupports` is too complicated if we just want to support refcounting. Instead, we can use `NS_INLINE_DECL_PURE_VIRTUAL_REFCOUNTING` to declare `Add/RemoveRef()` as pure virtual functions in order to create ref-counted abstract classes.

Differential Revision: https://phabricator.services.mozilla.com/D57714

--HG--
extra : moz-landing-system : lando
2019-12-21 00:05:53 +00:00
alwu
a2e90147ab Bug 1604691 - part3 : add test. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D57913

--HG--
extra : moz-landing-system : lando
2019-12-20 23:46:31 +00:00
alwu
c7f094e7dc Bug 1604691 - part2 : add webidl method in ChromeUtils to support generating testing event. r=bzbarsky
We handle media control key events differently from normal key events, and at this point we haven't finished the implementation of capturing media control key events on each platform.  Therefore, create a method to generate platform-independent events in order to help testing.

Differential Revision: https://phabricator.services.mozilla.com/D57911

--HG--
extra : moz-landing-system : lando
2019-12-21 00:10:13 +00:00