Commit Graph

14554 Commits

Author SHA1 Message Date
Ciure Andrei
7a748ae68f Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-01-04 01:03:06 +02:00
Boris Zbarsky
058f83508f Bug 1517434 part 2. Convert existing callers of GetIsSystemPrincipal() to IsSystemPrincipal(). r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D15673

--HG--
extra : moz-landing-system : lando
2019-01-03 20:55:38 +00:00
Andreas Pehrson
4e9e43bc92 Bug 1515873 - Don't create a backend as part of cleanup. r=jib
There's no guarantee a backend exists when a MediaManager does, and
crash-stats shows that shutdown can occur between posting a task and running
it, making it illegal to create a backend anew.

We're safer off avoiding creating a new backend. The cleanup step we're trying
to do is only effective if a backend already exists anyway.

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

--HG--
extra : moz-landing-system : lando
2019-01-03 04:21:09 +00:00
Andreas Pehrson
e72c999524 Bug 1515873 - Remove aWindowId arg from MediaManager::GetBackend. r=jib
It is unused.

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

--HG--
extra : moz-landing-system : lando
2019-01-03 05:18:09 +00:00
Bogdan Tara
954395da08 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-01-02 23:41:59 +02:00
Bogdan Tara
6582cc9a1d Merge inbound to mozilla-central. a=merge 2019-01-02 23:36:12 +02:00
Geoff Brown
06eb954bfa Bug 1516441 - Skip dom/media/tests/mochitest/identity on android; r=bc
These tests were already skipped on the Android 4.3 emulator and started
failing on hardware when host-utils were updated to 66.0a.
2019-01-02 09:50:37 -07:00
Geoff Brown
3830f1cb12 Bug 1517170 - Skip some https tests on Android; r=bc
These tests have always been skipped silently. Now that https tests are
enabled to actually run, we find that some (all?) actually fail on Android:
now explicitly skipped to allow for green runs of tier 1 suites.
2019-01-02 09:50:37 -07:00
Nathan Froyd
9acf5a0c63 Bug 1517276 - thread callbacks through MemoryReportRequestClient; r=mccr8
The guts of MemoryReportRequestClient's supporting runnables contain
switches on the particular type of process we're running.  If you're
bringing up a new process type, having to add extra cases for your
process type here is a bit onerous.  These runnables really shouldn't
know anything about the process types that they're running on, either.

The easiest thing to do is modify MemoryReportRequestClient::Start to
take callbacks for what to do when a report is created and when
reporting is finished.  Then all process-specific knowledge can be
pushed out to the clients themselves, leaving MemoryReportRequestClient
and friends process-type agnostic.  We could even, at some later date,
move this code into xpcom/base/ to sit near nsMemoryReporterManager,
where it belongs.
2019-01-02 16:18:13 -05:00
James Willcox
d72a96de1f Bug 1450762 - Don't prompt for device permissions on Android in MediaDevices.enumerateDevices() r=achronop
Differential Revision: https://phabricator.services.mozilla.com/D14575

--HG--
extra : moz-landing-system : lando
2019-01-02 16:44:35 +00:00
Geoff Brown
35e432a3a8 Bug 1392946 - backout 61eca43af2dffc3ba19cf343210d851c638694d5 since it was not effective 2018-12-31 13:24:26 -07:00
Geoff Brown
300213c9ea Bug 1516441 - backout f2dc090551f076387b984a670fe9eb7be9c8d460 since it was not effective 2018-12-31 13:24:23 -07:00
Geoff Brown
d8589d86d7 Bug 1516441 - Skip test_fingerprints.html on android-hw; r=me,a=test-only
This test started to perma-fail after host-utils were updated.
2018-12-31 11:46:07 -07:00
Geoff Brown
fdae0d32eb Bug 1392946 - Skip test_webvtt_positionalign.html on android-hw; r=me,a=test-only
This test started to perma-fail after host-utils were updated.
2018-12-31 11:46:04 -07:00
Andrea Marchesini
a7033b2822 Bug 1515658 - ChannelMediaResource should use the BlobURLs' length when known, r=jya 2019-01-03 19:22:49 +01:00
Emilio Cobos Álvarez
d2ed260822 Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01:00
Jan-Ivar Bruaroey
cbb94950ec Bug 1321221 - Delay getDisplayMedia() promise until first frame arrives, to pass wpt. r=ng
Differential Revision: https://phabricator.services.mozilla.com/D15283

--HG--
extra : moz-landing-system : lando
2018-12-28 03:13:11 +00:00
Jan-Ivar Bruaroey
c8bbcb8047 Bug 1321221 - Implement getDisplayMedia() and update related wpt tests. r=pehrsons,smaug
Differential Revision: https://phabricator.services.mozilla.com/D15058

--HG--
extra : moz-landing-system : lando
2018-12-28 03:12:57 +00:00
Jan-Ivar Bruaroey
ee3a9f9f4f Bug 1474376 - Merge window+screen sharing for content (list fullscreen as option in window-list), and get away from MediaSourceEnum. r=pehrsons,florian
Differential Revision: https://phabricator.services.mozilla.com/D14941

--HG--
extra : moz-landing-system : lando
2018-12-27 23:40:36 +00:00
Cosmin Sabou
03bc294fa4 Backed out changeset 0e9a610fe05f (bug 1450762) for turning bug 1481028 into permafail. 2018-12-27 01:31:50 +02:00
James Willcox
9df4e19fb4 Bug 1514349 - Skip test_peerConnection_captureStream_canvas_webgl.html on Android e10s emulators r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D14611

--HG--
extra : moz-landing-system : lando
2018-12-19 22:22:22 +00:00
James Willcox
5535070e5b Bug 1450762 - Don't prompt for device permissions on Android in MediaDevices.enumerateDevices() r=achronop
Differential Revision: https://phabricator.services.mozilla.com/D14575

--HG--
extra : moz-landing-system : lando
2018-12-26 19:33:13 +00:00
Andreas Pehrson
cb8996408e Bug 1512958 - Properly clean up produced tracks in DecodedStream. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D14584

--HG--
extra : source : 74101900e7d484cc9ddcba2cd867ca172b961ea0
2018-12-21 16:23:57 +00:00
Andreas Pehrson
7a2e26a568 Bug 1512958 - Add mochitest. r=jya,jib
Differential Revision: https://phabricator.services.mozilla.com/D14583

--HG--
extra : source : 1d4816ef6e013b44000d5c633245ec8effef810d
2018-12-21 16:23:55 +00:00
Coroiu Cristina
0215638358 Backed out 2 changesets (bug 1512958) for frequently failing mda at /dom/media/MediaDecoderStateMachine.cpp a=backout
Backed out changeset 74101900e7d4 (bug 1512958)
Backed out changeset 1d4816ef6e01 (bug 1512958)
2018-12-22 06:14:56 +02:00
alwu
c0ee00e2c3 Bug 1505250 - change state to 'completedState' if we can't get any sample anymore. r=jya
If we can't get any sample anymore, the resource might have been closed, so we should change state to 'completedState'.

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

--HG--
extra : moz-landing-system : lando
2018-12-21 21:06:42 +00:00
Michael Froman
c0a8a08f40 Bug 1500454 - remove PVideoDecoder, etc from dom namespace. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15156

--HG--
extra : moz-landing-system : lando
2018-12-21 22:34:57 +00:00
Dorel Luca
12e4f91411 Backed out 5 changesets (bug 1513973) for browser-chrome failures in browser/base/content/test/webrtc/browser_devices_get_user_media_screen.js. CLOSED TREE
Backed out changeset 2ddf61b1db11 (bug 1513973)
Backed out changeset 6c839f548745 (bug 1513973)
Backed out changeset 5669b30f2265 (bug 1513973)
Backed out changeset 6781e633d62c (bug 1513973)
Backed out changeset f1892f178011 (bug 1513973)
2018-12-21 23:28:51 +02:00
Andreas Pehrson
567bfc91f0 Bug 1513973 - Remove mutable keyword from MediaEngineWebRTCMicrophoneSource runnables. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D15220

--HG--
extra : moz-landing-system : lando
2018-12-21 20:05:05 +00:00
Andreas Pehrson
37c4490c3b Bug 1513973 - Log NotifyPull per track instead of per stream. r=jib
This better reflects the actual pulling that we do.

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

--HG--
extra : moz-landing-system : lando
2018-12-21 20:21:24 +00:00
Andreas Pehrson
45dfbfc836 Bug 1513973 - Enable pulling at the same time as starting audio sources. r=jib
Otherwise we risk building up a buffer in the microphone source from when
Start() is run until pulling is enabled. This manifests itself as input latency
to the user.

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

--HG--
extra : moz-landing-system : lando
2018-12-21 20:03:48 +00:00
Andreas Pehrson
4c26324fd2 Bug 1513973 - Make MediaEngineSource::SetTrack return void. r=jib
All subclasses are now returning NS_OK, so there's no point in keeping nsresult
as the return type.

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

--HG--
extra : moz-landing-system : lando
2018-12-21 20:03:42 +00:00
Andreas Pehrson
2e3209d6dc Bug 1513973 - Remove check for false. r=jib
The microphone source is no longer shared so this check is moot.

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

--HG--
extra : moz-landing-system : lando
2018-12-21 20:03:36 +00:00
Andreas Pehrson
8567b073f3 Bug 1512958 - Properly clean up produced tracks in DecodedStream. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D14584

--HG--
extra : moz-landing-system : lando
2018-12-21 16:23:57 +00:00
Andreas Pehrson
63c1afee2b Bug 1512958 - Add mochitest. r=jya,jib
Differential Revision: https://phabricator.services.mozilla.com/D14583

--HG--
extra : moz-landing-system : lando
2018-12-21 16:23:55 +00:00
Alastor Wu
862fdf36a9 Bug 1511235 - part3 : ensure video is visible before starting test r=jya,baku
Add testing function to know whether video is visible or not.

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

--HG--
extra : moz-landing-system : lando
2018-12-21 06:40:10 +00:00
alwu
16fe01f1fd Bug 1511235 - part2 : add test. r=jya,baku
Add new webidl method for testing only and a test.

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

--HG--
extra : moz-landing-system : lando
2018-12-20 20:01:46 +00:00
alwu
41df7a6715 Bug 1511235 - part1 : suspend video decoding for video whose visibility state is UNTRACK. r=jya
If video has not been within the potential visible range (which is larger than viewport) yet, its visibility state won't
be updated and would stay in 'UNTRACK'. As those kinds of video are still invisible to users, we don't need to decode
any video frames, we can suspend their video decoding until they're going to be visible.

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

--HG--
extra : moz-landing-system : lando
2018-12-20 20:02:24 +00:00
Nico Grunbaum
bb1557ee1c Bug 1380555 - remove deprecated WebRTC RTP stat isRemote in favor of new stat types r=jib,smaug
Removes RTP stat field isRemote and adds the new types remote-inbound-rtp, and remote-outbound-rtp

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

--HG--
extra : moz-landing-system : lando
2018-12-21 02:35:58 +00:00
Narcis Beleuzu
1110297dc8 Backed out changeset ccb218cd2d87 (bug 1380555) for mozlint failure on PeerConnection.js . CLOSED TREE 2018-12-21 04:20:58 +02:00
Nico Grunbaum
684ea28cec Bug 1380555 - remove deprecated WebRTC RTP stat isRemote in favor of new stat types r=jib,smaug
Removes RTP stat field isRemote and adds the new types remote-inbound-rtp, and remote-outbound-rtp

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

--HG--
extra : moz-landing-system : lando
2018-12-21 00:46:54 +00:00
Nico Grunbaum
4f1b23fe19 Bug 1328194 - Remove deprecated legacy WebRTC stats callback and associated dictionary like results r=jib,smaug
Differential Revision: https://phabricator.services.mozilla.com/D13393

--HG--
extra : moz-landing-system : lando
2018-12-21 00:46:12 +00:00
Blake Kaplan
730f9f9bf9 Bug 1509442 - Enter a realm here. r=qdot
Differential Revision: https://phabricator.services.mozilla.com/D13481

--HG--
extra : moz-landing-system : lando
2018-12-20 05:40:20 +00:00
Nico Grunbaum
998bea5c67 Bug 1515527 - log why GMPVideoEncoderParent::Encode fails r=dminor
Adds log statements for all the reasons that GMPVideoEncoderParent::Encode can fail

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

--HG--
extra : moz-landing-system : lando
2018-12-20 19:11:44 +00:00
Dan Minor
7904bce009 Bug 1515548 - Fix potential divide by zero in DesktopCaptureImpl; r=jib
This clamps requests for FPS that are below 1 to 1. As far as I can tell,
the getDisplayMedia specification does not provide any guidance on how to
interpret negative or zero FPS constraints, so this seems like a reasonable
limitation.

I'm not adding a test here as there will be a wpt test that covers this
as part of Bug 1321221.

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

--HG--
extra : moz-landing-system : lando
2018-12-20 17:57:58 +00:00
Karl Tomlinson
d5065c1a5d Bug 1513722 run AudioWorklet for OfflineAudioContext on MSG thread r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D13220

--HG--
extra : moz-landing-system : lando
2018-12-20 07:58:13 +00:00
Andreea Pavel
d5f0aa2919 Backed out 2 changesets (bug 1513722) for build bustages
Backed out changeset 8e2c3015fc95 (bug 1513722)
Backed out changeset 0c454fd1dbcb (bug 1513722)
2018-12-20 06:57:15 +02:00
Karl Tomlinson
880bb5a5a9 Bug 1513722 run AudioWorklet for OfflineAudioContext on MSG thread r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D13220

--HG--
extra : moz-landing-system : lando
2018-12-20 04:22:15 +00:00
Nico Grunbaum
7cd09e1947 Bug 1515379 - initialize frames delivered stat and add test r=dminor
This initializes a one of the stats that lost its default initialization when it was changed from an Atomic to a plain old int.

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

--HG--
extra : moz-landing-system : lando
2018-12-19 17:57:15 +00:00
Andreas Pehrson
1e5789506e Bug 1515032 - Add mochitest. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D14871

--HG--
extra : moz-landing-system : lando
2018-12-19 15:43:02 +00:00
Andreas Pehrson
88cb071d63 Bug 1513638 - Rename DispatchToMainThreadAfterStreamStateUpdate to DispatchToMainThreadStableState. r=jya,karlt
Differential Revision: https://phabricator.services.mozilla.com/D14421

--HG--
extra : moz-landing-system : lando
2018-12-19 04:34:10 +00:00
Andreas Pehrson
8dec05474b Bug 1513638 - Don't resolve DOMMediaStream::CountUnderlyingStreams promise in stable state. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D14420

--HG--
extra : moz-landing-system : lando
2018-12-18 15:39:54 +00:00
Bogdan Tara
91d742d138 Merge inbound to mozilla-central. a=merge 2018-12-19 06:50:57 +02:00
Bogdan Tara
a5963704c0 Backed out changeset 134d6c86e984 (bug 1509442) for browser_webAudio_silentData.js failures CLOSED TREE 2018-12-19 03:03:42 +02:00
Blake Kaplan
d418ca74d9 Bug 1509442 - Enter a realm here. r=qdot
Differential Revision: https://phabricator.services.mozilla.com/D13481

--HG--
extra : moz-landing-system : lando
2018-12-12 14:24:29 +00:00
John Lin
9abf52aa0f Bug 1511607 - don't suspend background video decoding for unseekable media. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D14821

--HG--
extra : moz-landing-system : lando
2018-12-18 19:46:16 +00:00
Jean-Yves Avenard
25657ee569 Bug 1513511 - P2. Ensure all frames are decoded. r=bryce
vp9 streams contains superframes. Ensure they are all properly handled.

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

--HG--
extra : moz-landing-system : lando
2018-12-17 20:30:46 +00:00
Jean-Yves Avenard
0855e7a7da Bug 1513511 - P1. Use new FFmpeg decode API with recent FFmpeg version. r=bryce
In libavcodec 58 and later, the old avcodec_decode_video2 is broken and only return the first visible frame found after a VP9 super-frame.

This resulted in some YouTube videos for about 10% of the frames to never be returned.

Only the new API properly behaves so we upgrade our code to use it.

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

--HG--
extra : moz-landing-system : lando
2018-12-17 17:29:13 +00:00
Dan Minor
73d9c4cce6 Bug 1498253 - Remove mozAvSyncDelay and mozJitterBufferDelay; r=ng
The value for mozAvSyncDelay has been broken since the branch 57 update
(Bug 1341285). We added SetCurrentSyncOffset() but never called it from
anywhere.

In the future we should be getting stats from AudioReceiveStream rather than
modifying the channel code, the delay_estimate_ms field provides almost the
same information.

Since we're attempting to get rid of moz prefixed stats, it makes sense to just
remove this code rather than fix it. The associated telemetry code has been
broken since Bug 1341285 as well so I think it is safe to remove.

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

--HG--
extra : moz-landing-system : lando
2018-12-14 13:08:12 +00:00
Timothy Guan-tin Chien
3913ded230 Bug 1510848 - Do not unattach UA Widget Shadow Root if the element is already re-attached to the tree r=emilio,smaug
This patch moves all UA Widget calls to helper functions in Element.cpp. The helper function AttachAndSetUAShadowRoot sets the shadow root in a runnable, so that it is in the same order of NotifyUAWidget* runnables.

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

--HG--
extra : moz-landing-system : lando
2018-12-15 02:48:46 +00:00
Sylvestre Ledru
6f45c666bc Bug 1513205 - Also update the tests to match the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2018-12-14 18:10:35 +00:00
Nico Grunbaum
ecedddea82 Bug 1495446 - fix timestamp of WebRTC RTCP stats r=jib
The RTCP timestamps have different timebases and reporting sources, this makes the source and timebase the same for all RTCP stats

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

--HG--
extra : moz-landing-system : lando
2018-12-14 01:55:21 +00:00
Timothy Guan-tin Chien
0bdd6f623a Bug 1511130 - Part II, Allow UAWidgetsChild to destruct widgets even if it throws during construction r=bgrins
This patch move the actual widget construction to a onsetup method, allow UAWidgetsChild to hold the reference of the widget instance even if the actual setup (happens in the onsetup call) throws. With the reference of the widget kept, UAWidgetsChild will finally able to call its destructor later on.

Depends on D13607

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

--HG--
extra : moz-landing-system : lando
2018-12-13 20:59:00 +00:00
Alastor Wu
41ffd33d93 Bug 1512362 - hook pref "media.autoplay.allow-muted" to all inaudible autoplay media policy r=cpearce
When talking about autoplay, video without audio track should also be controlled by the pref "media.autoplay.allow-muted".

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

--HG--
extra : moz-landing-system : lando
2018-12-13 21:31:42 +00:00
Jean-Yves Avenard
1eaf0bea3e Bug 1443429 - P4. Ensure MediaShutdownManager is initialized outside stable state. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D14283

--HG--
extra : moz-landing-system : lando
2018-12-13 20:06:03 +00:00
Jean-Yves Avenard
03276c5356 Bug 1443429 - P3. Don't use WebVTTListener while in stable state. r=smaug
WebVTTListener is a JS wrapper around vtt.js.

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

--HG--
extra : moz-landing-system : lando
2018-12-13 20:06:02 +00:00
Cosmin Sabou
edce6c68ac Merge autoland to mozilla-central. a=merge 2018-12-13 05:54:41 +02:00
Cosmin Sabou
0bedc24aae Backed out 2 changesets (bug 1511235) for causing bugs 1513454, 1513456 as alwu requested on irc. a=backout
Backed out changeset 4c9f874d6868 (bug 1511235)
Backed out changeset 3432e8bee7f1 (bug 1511235)
2018-12-13 03:43:36 +02:00
Dorel Luca
d1d958a798 Backed out 4 changesets (bug 1512280) for bmsvc build bustage
Backed out changeset abe934612616 (bug 1512280)
Backed out changeset 9463a1a3d790 (bug 1512280)
Backed out changeset 9a68c5f1ca0d (bug 1512280)
Backed out changeset 616721cad893 (bug 1512280)
2018-12-12 07:22:49 +02:00
Jan-Ivar Bruaroey
826b382038 Bug 1512280 - Less verbose code in MediaManager in places. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D13986

--HG--
extra : moz-landing-system : lando
2018-12-12 04:22:06 +00:00
Jan-Ivar Bruaroey
3120eb8814 Bug 1512280 - Add out-parameter to EnumerateDevicesImpl(); clearer semantics and flattens things. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D13985

--HG--
extra : moz-landing-system : lando
2018-12-12 04:00:42 +00:00
Jan-Ivar Bruaroey
b43cd8e1dd Bug 1512280 - Make LOG macros clang-format friendlier. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D13859

--HG--
extra : moz-landing-system : lando
2018-12-12 02:36:51 +00:00
Jan-Ivar Bruaroey
2fc3a23b7c Bug 1512280 - Fix some nits and shorten MediaManager::GetUserMedia(). r=achronop
Differential Revision: https://phabricator.services.mozilla.com/D13858

--HG--
extra : moz-landing-system : lando
2018-12-12 02:23:57 +00:00
alwu
aba79e9edc Bug 1511235 - part2 : add test. r=jya,baku
Add new webidl method for testing only and a test.

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

--HG--
extra : moz-landing-system : lando
2018-12-12 02:16:55 +00:00
alwu
7b4432b505 Bug 1511235 - part1 : suspend video decoding for video whose visibility state is UNTRACK. r=jya
If video has not been within the potential visible range (which is larger than viewport) yet, its visibility state won't
be updated and would stay in 'UNTRACK'. As those kinds of video are still invisible to users, we don't need to decode
any video frames, we can suspend their video decoding until they're going to be visible.

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

--HG--
extra : moz-landing-system : lando
2018-12-10 18:21:13 +00:00
alwu
dd8abd37d5 Bug 1512506 - Prevent MDSM from dispatching lots of audio decoding tasks when seeking directly to EOS during looping. r=jya
To make sure media sink starts from the correct position, otherwise, we would incorrectly estimate the decoded audio
duration when we directly seek looping audio to EOS. That would results in MDSM continually dispatching decoding tasks
even if we've enough data.

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

--HG--
extra : moz-landing-system : lando
2018-12-12 01:52:06 +00:00
Dorel Luca
58cd1ee36a Backed out changeset b3a9872c08d7 (bug 1513042) for Gtest failure
--HG--
extra : rebase_source : 6930ed8e1ea84af3a83f380279138d75ce2bde30
2018-12-12 02:13:45 +02:00
Bryce Van Dyk
74daa628bc Bug 1513042 - Update mp4parse-rust to v0.11.2. r=jya
Update mp4parse-rust update script and pull the new version.

This update changes the mp4parse C-API. Specifically, each track can now
have multiple sample descriptions. Previously we'd just exposed the first for
the entire track, and if others were available they were not exposed via the
API. Because of the API change, we update the C++ interface with mp4parse-rust.

We now inspect the sample info to make sure they're consistent with the parsers
expectations:
- Only a single codec is present for a track, multiple codecs in a track will
  result in us returning an error.
- Only 0 or 1 crypto info is present for a track, more than one set of info will
  result in us returning an error.

We still generalize some of the first sample info to the samples of the track,
as we did before this patch. However, we will now catch the above cases
explicitly.

We now handle crypto information if it is not present on the first sample info.
The parser will iterate through sample infos and use the first set of crypto
info it finds (and fail if it finds 2+).

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

--HG--
extra : moz-landing-system : lando
2018-12-11 20:55:26 +00:00
Jan-Ivar Bruaroey
76f3de75e7 Bug 1512280 - Less verbose code in MediaManager in places. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D13986

--HG--
extra : moz-landing-system : lando
2018-12-12 20:43:23 +00:00
Jan-Ivar Bruaroey
c5cf4c239c Bug 1512280 - Add out-parameter to EnumerateDevicesImpl(); clearer semantics and flattens things. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D13985

--HG--
extra : moz-landing-system : lando
2018-12-12 20:42:54 +00:00
Jan-Ivar Bruaroey
5a89bd8fda Bug 1512280 - Make LOG macros clang-format friendlier. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D13859

--HG--
extra : moz-landing-system : lando
2018-12-12 20:42:18 +00:00
Jan-Ivar Bruaroey
af3c7b9ee4 Bug 1512280 - Fix some nits and shorten MediaManager::GetUserMedia(). r=achronop
Differential Revision: https://phabricator.services.mozilla.com/D13858

--HG--
extra : moz-landing-system : lando
2018-12-12 20:42:01 +00:00
Jean-Yves Avenard
ed5b2cd92a Bug 1513227 - P2. Remove unused files. r=jolin
Depends on D14158

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

--HG--
extra : moz-landing-system : lando
2018-12-11 17:38:53 +00:00
Jean-Yves Avenard
7f7e06e3f1 Bug 1513227 - P1. Use correct constant to determine if HW decoding is enabled. r=jolin
Differential Revision: https://phabricator.services.mozilla.com/D14158

--HG--
extra : moz-landing-system : lando
2018-12-11 17:37:47 +00:00
Jean-Yves Avenard
3d5c3c9538 Bug 1512456 - P4. Replace assert with MOZ_ASSERT. r=alwu
Differential Revision: https://phabricator.services.mozilla.com/D14027

--HG--
extra : moz-landing-system : lando
2018-12-11 10:46:25 +00:00
Jean-Yves Avenard
cf0ff88211 Bug 1512456 - P1. Don't use GenericPromise with MediaSink. r=alwu
The VideoSink shares the AudioSink's own EndedPromise to notify its user that it has ended. As such, the MozPromise used must be non-exclusive.
Using the GenericPromise for such purpose only hid that requirement.

We also remove the MediaSink from the media namespace, and clarify the naming of some arguments and class members to accurately describe what they do.

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

--HG--
extra : moz-landing-system : lando
2018-12-11 10:44:51 +00:00
Jean-Yves Avenard
48517afae6 Bug 1512298 - Make IPDL MozPromise exclusive. r=gerald,froydnj
MozPromise most common use is to have an single or exclusive listener. By making the MozPromise generated by IPDL exclusive we can also use move semantics.

While at it, we also use move semantics for the ResponseRejectReason and via the callback's reject method so that the lambda used with the MozPromise::Then can be identical to the one used by the IPDL callback.
As it currently is, it provides no advantage over a copy as it's just an enum; however, this will facilitate future changes where it may not be.

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

--HG--
extra : moz-landing-system : lando
2018-12-11 19:22:26 +00:00
Mark Banner
8c00ef3f30 Bug 1512052 - Add more .eslintrc.js files for test directories. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D13746

--HG--
extra : moz-landing-system : lando
2018-12-11 13:15:08 +00:00
Dan Minor
71d10e00cf Bug 1497573 - Create desktop_capturer_cursor_composer_ lazily; r=ng
The webrtc.org capturer implementations do not allow Start to be called more
than once. Previously we worked around this by adding a Stop method that was
called from StopCapture. With this change, we instead free the capturer in
StopCapture and create or re-create it as needed from StartCapture or
FocusOnSelectedSource.

Depends on D14066

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

--HG--
extra : moz-landing-system : lando
2018-12-10 17:27:42 +00:00
Sylvestre Ledru
ad75e912fb Bug 1512961 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2018-12-10 19:23:16 +00:00
John Lin
9249bf1d0a Bug 1495053 - p3: implement MediaDrmCDMProxy::SetServerCertificate(). r=cpearce
Differential Revision: https://phabricator.services.mozilla.com/D7792

--HG--
extra : moz-landing-system : lando
2018-12-07 14:44:34 +00:00
John Lin
356abac240 Bug 1495053 - p2: add setServerCertificate() to Java/JNI proxy classes. r=cpearce
Differential Revision: https://phabricator.services.mozilla.com/D7791

--HG--
extra : moz-landing-system : lando
2018-12-07 14:44:10 +00:00
John Lin
eb4a57903b Bug 1510424 - fix AAC and FLAC EME support configuration. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D13135

--HG--
extra : moz-landing-system : lando
2018-12-07 14:40:50 +00:00
Nico Grunbaum
4380b01ee3 Bug 1512517 - update WebRTC stat deprecation messages r=jib
Update WebRTC stat deprecation messages which were originally targeting 65, which are now targeting 66.

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

--HG--
extra : moz-landing-system : lando
2018-12-06 21:48:31 +00:00
Andrea Marchesini
8c648079ae Bug 1514581 - Don't use async streams with FileMediaResource, r=jya 2018-12-18 17:20:14 +01:00
Jean-Yves Avenard
a3f78d31a5 Bug 1510265 - P2. Don't use AllPromiseType in GMPServiceParent. r=gerald
It's not needed, and only makes code harder to follow.

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

--HG--
extra : moz-landing-system : lando
2018-12-06 20:16:15 +00:00
Jean-Yves Avenard
44594dd77a Bug 1510265 - P1. Enforce template-parameter classes restrictions in MozPromise. r=gerald
And some required fixes to make things compile.

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

--HG--
extra : moz-landing-system : lando
2018-12-06 16:26:01 +00:00
Jan-Ivar Bruaroey
0979860740 Bug 1512197 - Temporary fix for incorrect sharing of MozPromiseHolder in MediaManager. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D13847

--HG--
extra : moz-landing-system : lando
2018-12-05 21:46:51 +00:00
Jean-Yves Avenard
590f06d6e0 Bug 1509875 - P1. Retrieve extended profile from mp4parse. r=kinetik
Depends on D13765

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

--HG--
extra : moz-landing-system : lando
2018-12-05 16:54:21 +00:00
Ciure Andrei
ed617be144 Backed out 2 changesets (bug 1512052)for causing build bustages CLOSED TREE
Backed out changeset 4773a3f46c22 (bug 1512052)
Backed out changeset 2f48c5afbe57 (bug 1512052)

--HG--
rename : browser/components/attribution/test/xpcshell/.eslintrc.js => browser/components/attribution/test/.eslintrc.js
2018-12-05 05:47:39 +02:00
Mark Banner
8256078237 Bug 1512052 - Add more .eslintrc.js files for test directories. r=mossop
Depends on D13745

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

--HG--
extra : moz-landing-system : lando
2018-12-04 22:27:35 +00:00
Bryce Van Dyk
d9995b9edc Bug 1513042 - Update mp4parse-rust to v0.11.2. r=jya
Update mp4parse-rust update script and pull the new version.

This update changes the mp4parse C-API. Specifically, each track can now
have multiple sample descriptions. Previously we'd just exposed the first for
the entire track, and if others were available they were not exposed via the
API. Because of the API change, we update the C++ interface with mp4parse-rust.

We now inspect the sample info to make sure they're consistent with the parsers
expectations:
- Only a single codec is present for a track, multiple codecs in a track will
  result in us returning an error.
- Only 0 or 1 crypto info is present for a track, more than one set of info will
  result in us returning an error.

We still generalize some of the first sample info to the samples of the track,
as we did before this patch. However, we will now catch the above cases
explicitly.

We now handle crypto information if it is not present on the first sample info.
The parser will iterate through sample infos and use the first set of crypto
info it finds (and fail if it finds 2+).

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

--HG--
extra : moz-landing-system : lando
2018-12-12 15:04:18 +00:00
Paul Adenot
8104b9b6eb Bug 1145816 - Reenbable test_mediaElementAudioSourceNodePassThrough.html on Android. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D13430

--HG--
extra : moz-landing-system : lando
2018-11-29 19:31:16 +00:00
Ciure Andrei
2edebf41a2 Merge inbound to mozilla-central. a=merge 2018-12-02 11:46:09 +02:00
Alex Chronopoulos
e1c6dec154 Bug 1509327 - Use timing and color information from decoded picture in dav1d wrapper. r=jya
Latest dav1d version supports to store the timing information in undecoded frame and restore it later from decoded picture. This can provide more accurate timing especially during drain. In additionto that, colorspace information is set according to the size of the image. Finally this patch addresses some style comments.

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

--HG--
extra : moz-landing-system : lando
2018-12-01 22:03:29 +00:00
Coroiu Cristina
1ca919f882 Merge mozilla-central to autoland a=merge 2018-12-01 07:55:13 +02:00
Dan Minor
032512790d Bug 1498205 - Move PlatformUIThread from rtc_base to video_engine; r=pehrsons
PlatformUIThread is only used by the video_engine code, so it makes sense to
move it there rather than maintain it as a diff against upstream webrtc.org.

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

--HG--
extra : moz-landing-system : lando
2018-11-30 17:46:38 +00:00
Jan Andre Ikenmeyer [:darkspirit]
318c8c660e Bug 1477037 - Add NULL check on aArgv. r=froydnj 2018-12-01 02:08:42 +01:00
Sylvestre Ledru
265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Jan-Ivar Bruaroey
01afd58c84 Bug 1492479 - Move MediaStreamError out of MediaManager. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D13175

--HG--
extra : moz-landing-system : lando
2018-11-30 05:15:54 +00:00
Jan-Ivar Bruaroey
ae9fd82ada Bug 1492479 - Simplify MediaDeviceSetRefCnt by removing one redundant pointer indirection. r=achronop
Differential Revision: https://phabricator.services.mozilla.com/D11842

--HG--
extra : moz-landing-system : lando
2018-11-30 05:15:34 +00:00
Jan-Ivar Bruaroey
2cbbb1a103 Bug 1497175 - Remove media::Pledge. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D8011

--HG--
extra : moz-landing-system : lando
2018-11-30 05:15:00 +00:00
Jan-Ivar Bruaroey
7cc33e93cf Bug 1497175 - Have DOMMediaStream::TrackPort::BlockSourceTrackId() return a promise. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D8010

--HG--
extra : moz-landing-system : lando
2018-11-30 05:14:40 +00:00
Jan-Ivar Bruaroey
8ce38b2a13 Bug 1475209 - Have MediaManager::EnumerateDevices() return a promise. r=achronop,jya
Differential Revision: https://phabricator.services.mozilla.com/D8009

--HG--
extra : moz-landing-system : lando
2018-11-30 05:14:05 +00:00
Jan-Ivar Bruaroey
e3194aa305 Bug 1492479 - Have MediaManager::GetUserMedia() return a promise. r=achronop,jya
Differential Revision: https://phabricator.services.mozilla.com/D8008

--HG--
extra : moz-landing-system : lando
2018-11-30 05:13:58 +00:00
Razvan Maries
12299139d5 Backed out changeset 0e1dbfd10378 (bug 1501709) for build bustages on Windows platform, CLOSED TREE. 2018-11-30 06:58:06 +02:00
Arnaud Bienner
6a459e7170 Bug 1501709 - AudioWorkletGlobalScope::RegisterProcessor: check descriptors and convert them to an internal representation. r=karlt,baku,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D11741

--HG--
extra : moz-landing-system : lando
2018-11-30 02:55:06 +00:00
Karl Tomlinson
0138ac87a9 Bug 1476514 store AudioContext destination stream on AudioWorkletImpl r=padenot
The destination stream will provide currentFrame for AudioWorkletGlobalScope on the worklet execution thread.

On the control thread, it supports messages via the MediaStreamGraph and identifies the associated AudioContext.

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

--HG--
extra : moz-landing-system : lando
2018-11-30 02:28:34 +00:00
Karl Tomlinson
5995caa7e9 Bug 1476514 return concrete AudioNodeStream instead of base from DestinationStream() r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D13218

--HG--
extra : moz-landing-system : lando
2018-11-30 02:26:29 +00:00
Andreea Pavel
8e973f56b2 Backed out 3 changesets (bug 1509327) for build bustages on a CLOSED TREE
Backed out changeset aeb00b8974a4 (bug 1509327)
Backed out changeset ea27440a2126 (bug 1509327)
Backed out changeset 9881fd46fde2 (bug 1509327)
2018-11-30 05:16:08 +02:00
Alex Chronopoulos
74a439c923 Bug 1509327 - Use timing and color information from decoded picture in dav1d wrapper. r=jya
Latest dav1d version supports to store the timing information in undecoded frame and restore it later from decoded picture. This can provide more accurate timing especially during drain. In additionto that, colorspace information is set according to the size of the image. Finally this patch addresses some style comments.

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

--HG--
extra : moz-landing-system : lando
2018-11-29 19:08:03 +00:00
Timothy Guan-tin Chien
d17b51ff5d Bug 1516292 - Use isSameNode() to compare mozFullScreenElement and the video host element r=edgar
This does what's done in bug 1505547 but in a different way. For some reason, access
shadowRoot.host in the function can trigger an assertion.

this.video is a Proxy so it cannot be compared, but all its methods are proxied.

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

--HG--
extra : moz-landing-system : lando
2019-01-07 16:00:55 +00:00
Tooru Fujisawa
7983faeb5d Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
Benjamin Bouvier
a7f1d173a0 Bug 1511383: Update vim modelines after clang-format; r=sylvestre
- modify line wrap up to 80 chars; (tw=80)
- modify size of tab to 2 chars everywhere; (sts=2, sw=2)

--HG--
extra : rebase_source : 7eedce0311b340c9a5a1265dc42d3121cc0f32a0
extra : amend_source : 9cb4ffdd5005f5c4c14172390dd00b04b2066cd7
2018-11-30 16:39:55 +01:00
Andreas Pehrson
f0bf48464f Bug 1509548 - Make MediaStreamGraph pull data per track instead of per stream. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D13086

--HG--
extra : moz-landing-system : lando
2018-11-29 17:37:42 +00:00
Andreas Pehrson
4954a5b020 Bug 1509548 - Remove early PullNewData return. r=padenot
Without knownTracksTime, StreamTracks::GetFirstTrackEnd() returns
STREAM_TIME_MAX for an empty StreamTracks, so PullNewData() thinks no new data
is needed.

This circumvents that by always checking whether tracks need data.

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

--HG--
extra : moz-landing-system : lando
2018-11-29 17:37:35 +00:00
Andreas Pehrson
3410ec9f28 Bug 1509548 - Clean up what appears to be wip-leftover gunk in DecodedStream. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D12926

--HG--
extra : moz-landing-system : lando
2018-11-29 17:37:21 +00:00
Andreas Pehrson
7348d2a804 Bug 1509548 - Rename track-end-time methods in StreamTracks. r=padenot
They deserve descriptive names.

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

--HG--
extra : moz-landing-system : lando
2018-11-29 17:37:17 +00:00
Andreas Pehrson
a02fa011f0 Bug 1509548 - Remove the concept of a known tracks time from MediaStreamGraph. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12923

--HG--
extra : moz-landing-system : lando
2018-11-29 17:37:06 +00:00
Nico Grunbaum
41a179ba06 Bug 1324788 - Bug 1324688 - Bring RTCIceCandidateStats up to spec r=mjf,jib,smaug
Bug 1324788 - P1 - rename RTCIceCandidate stat "portNumber" to spec "port"
Bug 1324788 - P2 - update RTCIceCandidateStats candidateType enum to spec
Bug 1324788 - P3 - add RTCIceCandidatePair.priority stat
Bug 1324788 - P4 - update WebRTC ICE candidate stats field componentId to spec name transportId
Bug 1324788 - P5 - remove deprecated RTCIceCandidateStats.mozLocalTransport field
Bug 1324788 - P6 - update WebRTC ICE candidate stats field transport to spec name, protocol
Bug 1324788 - P7 - remove deprecated RTCIceCandidateStats.candidateId
Bug 1324788 - P8 - reorder RTCIceCandidateStats dictionary members to match the spec
Bug 1324788 - P9 - make RTCIceCandidateStats.transportId ChromeOnly

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

--HG--
extra : moz-landing-system : lando
2018-11-28 20:30:07 +00:00
Gabriele Svelto
19e52bebd4 Bug 1510582 - Remove useless inclusions of Services.h r=erahm
Differential Revision: https://phabricator.services.mozilla.com/D13240

--HG--
extra : moz-landing-system : lando
2018-11-28 17:25:23 +00:00
Dan Minor
440fc58998 Bug 1509994 - Move video_engine from webrtc to systemservices; r=pehrsons
Historically this code was part of webrtc.org but has since been removed
from upstream. Rather than maintaining it as a local diff against upstream,
we should just move it to where it is used.

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

--HG--
rename : media/webrtc/trunk/webrtc/video_engine/browser_capture_impl.h => dom/media/systemservices/video_engine/browser_capture_impl.h
rename : media/webrtc/trunk/webrtc/video_engine/desktop_capture_impl.cc => dom/media/systemservices/video_engine/desktop_capture_impl.cc
rename : media/webrtc/trunk/webrtc/video_engine/desktop_capture_impl.h => dom/media/systemservices/video_engine/desktop_capture_impl.h
extra : moz-landing-system : lando
2018-11-28 20:16:42 +00:00
Coroiu Cristina
47323ec73b Merge mozilla-central to autoland a=merge on a CLOSED TREE 2018-11-28 23:56:03 +02:00
Coroiu Cristina
378481915d Merge autoland to mozilla-central a=merge 2018-11-28 23:47:17 +02:00
Brindusan Cristian
eb07b312bf Backed out 3 changesets (bug 1486659) as requested by jhlin on irc for breaking video playback on Android and causing regression Bug 1510464. a=backout
Backed out changeset 9c2834ca8823 (bug 1486659)
Backed out changeset 5d897c0c7a25 (bug 1486659)
Backed out changeset b0fdcebfd20d (bug 1486659)
2018-11-28 19:09:13 +02:00
Paul Adenot
cb75fadba6 Bug 1274392 - When echo cancellation is disabled, disable automatic gain control and noise suppression as well. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D12902

--HG--
extra : moz-landing-system : lando
2018-11-28 13:41:02 +00:00
Alex Chronopoulos
a008331435 Bug 1509462 - Make DecoderDoctorLifeLogger constructor/destructor protected. r=gerald
DecoderDoctorLifeLogger is used as a base class in many classes but it does need to have a virtual destructor to avoid adding a vtable in the class. Thus the constructor and destructor become protected to avoid being used as base pointer to delete the real object.

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

--HG--
extra : moz-landing-system : lando
2018-11-27 20:46:19 +00:00
Cosmin Sabou
e1e8f2ea69 Merge mozilla-inbound to mozilla-central. a=merge 2018-11-28 06:08:19 +02:00
Ehsan Akhgari
2febd96e7e Bug 1508472 - Part 2: Second batch of comment fix-ups in preparation for the tree reformat r=sylvestre
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal.  I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.

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

--HG--
extra : moz-landing-system : lando
2018-11-28 00:54:56 +00:00
Cosmin Sabou
0afa5aa670 Backed out 2 changesets (bug 1508472) for causing build bustages on JobScheduler_posix.cpp. CLOSED TREE
Backed out changeset af951294cf96 (bug 1508472)
Backed out changeset 2320933cb7bc (bug 1508472)
2018-11-28 00:08:11 +02:00
Ehsan Akhgari
7c937c2747 Bug 1508472 - Part 2: Second batch of comment fix-ups in preparation for the tree reformat r=sylvestre
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal.  I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.

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

--HG--
extra : moz-landing-system : lando
2018-11-27 21:36:18 +00:00
John Lin
739da292b4 Bug 1510363 - backout accidentally checked in file. r=jya
And add patterns to .gitignore to prevent future occurence.

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

--HG--
extra : moz-landing-system : lando
2018-11-28 17:50:32 +00:00
alwu
682f483866 Bug 1509956 - Remove incorrect rebasing result in MSDM::loopingDecoding r=jya
Differential Revision: https://phabricator.services.mozilla.com/D12965

--HG--
extra : moz-landing-system : lando
2018-11-27 16:00:22 +00:00
Jeff Walden
af9a670e28 Bug 1510007 - Move JSFreeOp's definition to js/public/MemoryFunctions.h, and make jsapi.h not #include that header. r=sfink
--HG--
extra : rebase_source : 4d6debefd66b89647df53c104b8560ba2de68abd
2018-11-21 18:11:15 -08:00
Andreea Pavel
945463d394 Backed out changeset 11d6688b953f (bug 1508472) for build bustages on a CLOSED TREE 2018-11-27 18:28:30 +02:00
Ehsan Akhgari
d0a3a76106 Bug 1508472 - Part 2: Second batch of comment fix-ups in preparation for the tree reformat r=sylvestre
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal.  I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.

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

--HG--
extra : moz-landing-system : lando
2018-11-27 15:18:32 +00:00
Gabriele Svelto
566f669d07 Bug 1509450 - Remove unnecessary inclusions of ContentParent.h and ContentChild.h r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D12728

--HG--
extra : moz-landing-system : lando
2018-11-26 14:49:44 +00:00
Alex Chronopoulos
6a1e10853e Bug 1493400 - Test av1 video using dav1d has the correct number of frames. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D12637

--HG--
extra : moz-landing-system : lando
2018-11-27 14:19:02 +00:00
Alex Chronopoulos
5dab77d453 Bug 1493400 - Implement platform decoder for dav1d. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D12164

--HG--
extra : moz-landing-system : lando
2018-11-27 14:18:58 +00:00
John Lin
e43dca7804 Bug 1486659 - p3: copy texture contents for remote allocated Surface. r=snorp
Child processes cannot access textures allocated in the parent process,
which is needed by the compositor to render video elements efficiently.
Unfortunately, Android doesn't expose Sufrace buffers (sharable across
processes) in the SDK/NDK as other platforms, so we need to generate
extra texture/surface in the child process and update texture images
through the surface, which is passed to the parent process for the remote
texture to copy its contents into.

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

--HG--
rename : mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/gfx/ISurfaceAllocator.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/gfx/SyncConfig.aidl
extra : moz-landing-system : lando
2018-11-26 19:41:31 +00:00
John Lin
199755a93d Bug 1425277 - p8: add gtest cases for media encoder. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D7564

--HG--
extra : moz-landing-system : lando
2018-11-26 18:29:26 +00:00
John Lin
bfb5ef4f39 Bug 1425277 - p7: add apple encoder module and factory. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D7563

--HG--
extra : moz-landing-system : lando
2018-11-26 18:29:08 +00:00
John Lin
c81fdae426 Bug 1425277 - p6: implement media encoder using Apple VideoToolbox API. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D7562

--HG--
extra : moz-landing-system : lando
2018-11-26 18:30:08 +00:00
John Lin
80a3c5aa13 Bug 1425277 - p5: add Append() to MediaRawDataWriter. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D7561

--HG--
extra : moz-landing-system : lando
2018-11-26 18:28:31 +00:00
John Lin
b7271f6956 Bug 1425277 - p4: RAII for CVBuffer. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D7560

--HG--
extra : moz-landing-system : lando
2018-11-26 18:28:13 +00:00
John Lin
b3b4fa64cc Bug 1425277 - p3: fix misplaced dependent header. r=jya To address compile error when AppleVTDeocder.cpp is moved to another unified source file or in non-unified builds.
Differential Revision: https://phabricator.services.mozilla.com/D7559

--HG--
extra : moz-landing-system : lando
2018-11-26 18:27:49 +00:00
John Lin
0ea8bb4a7a Bug 1425277 - p2: remove dynamic apple framework linkers. r=jya No need for own linkers anymore for CoreMedia and VideoToolbox are both available on our minimal supported version (10.9).
Differential Revision: https://phabricator.services.mozilla.com/D7558

--HG--
extra : moz-landing-system : lando
2018-11-26 18:27:32 +00:00
John Lin
25c2e37423 Bug 1425277 - p1: introduce media encoder interfaces. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D7557

--HG--
extra : moz-landing-system : lando
2018-11-26 18:27:14 +00:00
Andreas Pehrson
0b4013a03e Bug 1306999 - Change from "playing" to "loadeddata" before assuming there's a video frame. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D12929

--HG--
extra : moz-landing-system : lando
2018-11-26 16:54:13 +00:00
Paul Adenot
7ba0490aba Bug 1509842 - Follow up, only run the test on Linux.
Differential Revision: https://phabricator.services.mozilla.com/D12914

--HG--
extra : moz-landing-system : lando
2018-11-26 15:01:38 +00:00
Paul Adenot
4bd715f176 Bug 1509842 - Re-enable AGC by default. r=dminor
Differential Revision: https://phabricator.services.mozilla.com/D12898

--HG--
extra : moz-landing-system : lando
2018-11-26 13:51:27 +00:00
Paul Adenot
f53529234b Bug 1509548 - Temporarily disable an assertion following 1423241.
Differential Revision: https://phabricator.services.mozilla.com/D12781

--HG--
extra : moz-landing-system : lando
2018-11-23 18:30:19 +00:00
Andreas Pehrson
3771a0be22 Bug 1423241 - Handle DOMMediaStream destroying its input stream before we can end its track. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12746

--HG--
extra : moz-landing-system : lando
2018-11-23 15:03:39 +00:00
Andreas Pehrson
b24e382a4c Bug 1423241 - Clean up iframes in between subtests in test_gUM_audioConstraints_concurrentIframes. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12675

--HG--
extra : moz-landing-system : lando
2018-11-23 15:03:33 +00:00
Andreas Pehrson
d665f43071 Bug 1423241 - Ignore ended tracks when checking for audio tracks in an MSG. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12569

--HG--
extra : moz-landing-system : lando
2018-11-23 15:03:27 +00:00
Andreas Pehrson
58233bef5c Bug 1423241 - Add logging for a captured MediaDecoder. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D12286

--HG--
extra : moz-landing-system : lando
2018-11-23 15:03:21 +00:00
Andreas Pehrson
60f5d461f2 Bug 1423241 - Remove MediaStreamListener \o/. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12284

--HG--
extra : moz-landing-system : lando
2018-11-23 15:03:00 +00:00
Andreas Pehrson
f859bd9fb7 Bug 1423241 - Async/await-ify test_gUM_bug1223696.html. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D12283

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:54 +00:00
Andreas Pehrson
153eff0b64 Bug 1423241 - Remove DOMMediaStream::PlaybackStreamListener. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12282

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:48 +00:00
Andreas Pehrson
28dcbfa728 Bug 1423241 - Ignore runnables for main thread after next stream state update, after entering shutdown. r=padenot
They may hang on to references causing leaks.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:42 +00:00
Andreas Pehrson
dff48ba75c Bug 1423241 - Remove OnTracksAvailableCallback from MediaRecorder. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12280

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:35 +00:00
Andreas Pehrson
04400261ad Bug 1423241 - Remove OnTracksAvailableCallback from MediaManager. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12279

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:29 +00:00
Andreas Pehrson
e0f46f7739 Bug 1423241 - Remove DOMMediaStream::OwnedStreamListener. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12276

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:16 +00:00
Andreas Pehrson
afa103537f Bug 1423241 - Move track-ended notifications from DOMMediaStream to MediaStreamTrack. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12275

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:10 +00:00
Andreas Pehrson
44c5fa2785 Bug 1423241 - Remove a rawptr in MediaStreamTrack. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12274

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:04 +00:00
Andreas Pehrson
4213b7db86 Bug 1423241 - Refactor DecodedStream. r=jya
This removes DecodedStream's use of MediaStreamListener in favor of
MediaStreamTrackListener. This change has however rippled through to a lot
more cleanup, per below.

This moves the MediaStreamTrack lifetime ownership for captured
HTMLMediaElements from the media element to DecodedStream, where the
MediaStreamGraph-side tracks are already created and ended today.

This makes MediaStreamTrack creation explicit across the entire codebase and
lets us remove the MediaStreamTrackSourceGetter class and the infrastructure
of adding MediaStreamTracks after they've already been created in the graph
from DOMMediaStream.

With track ownership, and thus TrackID allocation ownership, happening
exclusively in DecodedStream for its output tracks, we also stop throwing
away and recreating the SourceMediaStream to which we feed data on seek.
This is one step closer to fixing bug 1172394 and spec compliance of
HTMLMediaElement.captureStream().

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

--HG--
extra : moz-landing-system : lando
2018-11-23 15:02:03 +00:00
Andreas Pehrson
e80887ac8d Bug 1423241 - Return appended StreamTime samples appended through AppendToTrack. r=padenot
This allows DecodedStream to accurately track how many samples have been
appended to a track, even with resampling enabled.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 15:01:48 +00:00
Andreas Pehrson
80cde33d12 Bug 1423241 - Always add tracks at the stream's current time. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12271

--HG--
extra : moz-landing-system : lando
2018-11-23 15:01:42 +00:00
Andreas Pehrson
43f4e58733 Bug 1423241 - Move CanvasCaptureMediaStream from stream listener to track listener. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D9105

--HG--
extra : moz-landing-system : lando
2018-11-23 15:01:36 +00:00
Andreas Pehrson
84905ffbe9 Bug 1423241 - Expose MSG's GraphTime through main-thread-Watchable and move media element to it. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D9101

--HG--
extra : moz-landing-system : lando
2018-11-23 15:01:13 +00:00
Andreas Pehrson
6d2721e35a Bug 1423241 - Remove drawImage exception handling from captureStream_common.js. r=jib
This can conceal real bugs. Tests should be fixed so they don't risk calling
getPixel in invalid states instead.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 15:01:07 +00:00
Andreas Pehrson
4be83b9661 Bug 1423241 - Ensure audio loads after video to make drawImage happy. r=jib
https://github.com/whatwg/html/issues/4128 filed to cover this case in the spec.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 15:01:01 +00:00
Andreas Pehrson
b2d7b962cd Bug 1423241 - Implement MediaStreamTrackListener::NotifyOutput. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D9094

--HG--
extra : moz-landing-system : lando
2018-11-23 15:00:31 +00:00
Andreas Pehrson
e6f44b02af Bug 1423241 - Fix MediaStreamTrackListener::NotifyEnded. r=padenot
Without this, NotifyEnded() happens before the track has been played out, at the
time it's marked ended by its producer. This change will actually make us wait
until the last chunk has been played out and then notify listeners.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 15:00:26 +00:00
Andreas Pehrson
193fd8f3eb Bug 1423241 - Move MediaManager from a stream listener to track listeners. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12268

--HG--
extra : moz-landing-system : lando
2018-11-23 15:00:20 +00:00
Andreas Pehrson
c4ef19aea8 Bug 1423241 - Implement NotifyPull for MediaStreamTrackListener. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12267

--HG--
extra : moz-landing-system : lando
2018-11-23 15:00:14 +00:00
Andreas Pehrson
e31bc86b17 Bug 1423241 - Move SpeechRecognition from stream listener to track listener. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12266

--HG--
rename : dom/media/webspeech/recognition/SpeechStreamListener.cpp => dom/media/webspeech/recognition/SpeechTrackListener.cpp
rename : dom/media/webspeech/recognition/SpeechStreamListener.h => dom/media/webspeech/recognition/SpeechTrackListener.h
extra : moz-landing-system : lando
2018-11-23 15:00:08 +00:00
Andreas Pehrson
3461beb8a0 Bug 1423241 - Move CanvasCaptureMediaStream MSG cleanup to MediaStreamTrackListener. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12265

--HG--
extra : moz-landing-system : lando
2018-11-23 15:00:02 +00:00
Andreas Pehrson
aa6d9c24a0 Bug 1423241 - Move special media element captureStream handling of inactive stream out of MediaStreamGraph. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D12264

--HG--
extra : moz-landing-system : lando
2018-11-23 14:59:56 +00:00
Bryce Van Dyk
ae30c70345 Bug 1509397 - mp4: use per sample IV size from sample group metadata if present. r=jya
If sample group metadata is present, it should be used over the less specific
track metadata. This patch changes the mp4 parser to do so for per sample IV
sizes.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 08:24:53 +00:00
alwu
ff3d8a3510 Bug 1499903 - part3 : change 'mLogicallySeeking' to Watchable r=chunmin
Nobody is mirroring to 'mLogicallySeeking', so we can just use Watchable instead.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 05:07:45 +00:00
alwu
8d72084878 Bug 1499903 - part2 : add test. r=chunmin
Differential Revision: https://phabricator.services.mozilla.com/D9641

--HG--
extra : moz-landing-system : lando
2018-11-23 05:06:47 +00:00
alwu
42c302ff20 Bug 1499903 - part1 : correct the events order when we're in the seamless looping. r=chunmin
When the media which has `loop` attribute is playing to the end, the spec mentions that media should do seek to the start position [1].

During seeking, the dispatched events order [2] for MediaElement should be
1. seeking
2. timeupdate
3. seeked

[1] https://html.spec.whatwg.org/multipage/media.html#playing-the-media-resource:attr-media-loop-2
[2] https://html.spec.whatwg.org/multipage/media.html#seeking:dom-media-seek

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

--HG--
extra : moz-landing-system : lando
2018-11-23 05:23:48 +00:00
alwu
cf4634f07a Bug 1505972 - request audio data when entering 'loopingDecoding' state if decoding has ended r=jya
When entering 'loopingDecoding' state, we should ensure we would continue to decoding even if
the audio decoding has finished before.

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

--HG--
extra : moz-landing-system : lando
2018-11-22 13:27:21 +00:00
Jean-Yves Avenard
6293fae500 Bug 1505284 - P5. Don't use real H264 decoder with fake GMP encoder. r=dminor
The fake H.264 GMP encoder creates dummy frames that can't be decoded by anything but the fake GMP decoder.

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

--HG--
extra : moz-landing-system : lando
2018-11-22 16:31:33 +00:00
Jean-Yves Avenard
b07c3f66ba Bug 1505284 - P3. Ensure gfxVars and gfxPrefs are always initialized when using PDMFactory. r=gerald
While typically those will always be, when using through gtest it won't.

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

--HG--
extra : moz-landing-system : lando
2018-11-22 16:31:03 +00:00
Jean-Yves Avenard
deafacba67 Bug 1505284 - P1. Use ffmpeg decoder for h264 in low latency mode. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12431

--HG--
extra : moz-landing-system : lando
2018-11-22 16:30:06 +00:00
Nico Grunbaum
0c719fb462 Bug 1489040 Update WebRTC ICE candidate stats field name ipAddress to address r=mjf,jib,smaug
Bug 1489040 - P1 - Update WebRTC ICE candidate stats field ipAddress to new name, address
Bug 1489040 - P2 - adjust WebRTC stats mochitest for new stat name 'address'
Bug 1489040 - P3 - add test for legacy WebRTC stat names

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

--HG--
extra : moz-landing-system : lando
2018-11-22 00:14:36 +00:00
Karl Tomlinson
cbf2ec1e66 Bug 1508909 revert reformat of third-party ffmpeg headers r=jya
Changes to these files from 0ceae9db9ec0 are reverted.

# skip-blame

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

--HG--
extra : moz-landing-system : lando
2018-11-21 08:25:05 +00:00
Coroiu Cristina
b27585482c Merge inbound to mozilla-central a=merge 2018-11-21 23:43:13 +02:00
Kartikaya Gupta
fbf7f83817 Bug 1509064 - Disable test failing with new windows AMIs. r=jmaher 2018-11-21 11:19:35 -05:00
alwu
f67a71e31f Bug 1491475 - part1 : postpone starting AudioContext until calling AudioContext.resume() or AudioScheduledSourceNode.start(). r=padenot
If AudioContext is not allowed to start, we would postpone its state transition from `suspended` to `running`
until site explicitly calls AudioContext.resume() or AudioScheduledSourceNode.start().

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

--HG--
extra : moz-landing-system : lando
2018-11-20 22:58:22 +00:00
Michael Froman
be9430ed4b Bug 1498624 - pt1 - Implement OSX sandbox for RDD process. r=haik
Differential Revision: https://phabricator.services.mozilla.com/D12376

--HG--
extra : moz-landing-system : lando
2018-11-21 00:11:20 +00:00
alwu
ce1f4614d0 Bug 1508484 - close audio queue if we already got the last audio frame when leaving 'loopingDecoding' state r=jya
When we're going to leave looping state and have got EOS before, we should mark audio queue
as ended because we have got all data we need.

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

--HG--
extra : moz-landing-system : lando
2018-11-20 22:42:24 +00:00
shindli
e75ab0ac9a Merge inbound to mozilla-central. a=merge 2018-11-20 23:44:09 +02:00
Sylvestre Ledru
b98f46b03f Bug 1508298 - Disable the reformatting of the comment r=jya
Differential Revision: https://phabricator.services.mozilla.com/D12415

--HG--
extra : moz-landing-system : lando
2018-11-20 14:21:48 +00:00
Nathan Froyd
b0bda317b7 Bug 1507922 - make ownership of MetadataTags more clear in the ogg code; r=gerald,jya
Use UniquePtr for return types, so it's obvious who has ownership.
2018-11-20 10:10:31 -05:00
Razvan Maries
208d16134b Merge mozilla-inbound to mozilla-central a=merge 2018-11-20 07:03:17 +02:00
Boris Zbarsky
64ae41821b Bug 1507540 part 6. Make nsIVariant's "type" a notxpcom attribute. r=froydnj 2018-11-19 20:20:05 -05:00
Boris Zbarsky
71db58cf83 Bug 1507540 part 2. Use more notxpcom attributes in docshell/. r=smaug 2018-11-19 20:17:53 -05:00
Tarek Ziadé
63637ef222 Bug 1497124 - Added some memory info in the performance counters - r=jya,jonco
Add some memory usage information to the Performance counters and make everything asynchronous.

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

--HG--
extra : moz-landing-system : lando
2018-11-19 22:51:12 +00:00
Sylvestre Ledru
804b8b8883 Bug 1204606 - Reformat of dom/media r=jya
# skip-blame

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

--HG--
extra : moz-landing-system : lando
2018-11-19 13:25:37 +00:00
alwu
dab4434860 Bug 1493766 - part2 : save the status of temporary autoplay permission in outer window. r=johannh,smaug
In order to know whether we have temporary autoplay permission without creating a request, we need to
cache its state in the outer window so that we can get the correct returned value for AutoplayPolicy::IsAllowedToPlay().

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

--HG--
extra : moz-landing-system : lando
2018-11-16 18:27:00 +00:00
Bogdan Tara
647b9eb109 Merge inbound to mozilla-central. a=merge 2018-11-16 11:47:51 +02:00
alwu
495a70cf3a Bug 1506286 - part2 : finish queue after discarding data. r=jya
After discarding looping data, all data playback needed are in the queue. There is no need to
request more data, so we can finish the queue and disconnect the request.

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

--HG--
extra : moz-landing-system : lando
2018-11-15 12:57:35 +00:00
alwu
31f9ef35fe Bug 1506286 - part1 : use clock time to decide whether need to discard data. r=jya
Should use both adjusted time to do time comparison.

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

--HG--
extra : moz-landing-system : lando
2018-11-15 21:53:50 +00:00
Jean-Yves Avenard
d05f000f1b Bug 1507093 - P4. Don't lazily allocate mVideoTrackList and mAudioTrackList. r=pehrsons
Should the media element be cycle collected and a decoder still be active, a change of state could have caused the track list to be re-created causing a cycle between the HTMLMediaElement and the track list.

We also check when potentially updating the ready state if the self reference is still needed.

Place various assertions.

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

--HG--
extra : moz-landing-system : lando
2018-11-15 12:48:34 +00:00
Jean-Yves Avenard
5f69f9479d Bug 1507093 - P2. Ensure that when returning from NotifyXPCOMShutdown we don't UAF. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D11858

--HG--
extra : moz-landing-system : lando
2018-11-15 12:48:02 +00:00
Jean-Yves Avenard
4e317b7bb3 Bug 1474443 - Remove cycle between MP4Demuxer and MP4TrackDemuxer. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D12004

--HG--
extra : moz-landing-system : lando
2018-11-15 12:44:56 +00:00
Timothy Guan-tin Chien
7201df71b0 Bug 1505957 - Follow-up, add testcase as crashtest, r=me 2018-11-15 10:56:27 -08:00
Michael Froman
2e78f7f1a1 Bug 1471535 - pt12 - Hook up RDD process and Remote decoding. r=jya,spohl
Depends on D8493

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

--HG--
extra : moz-landing-system : lando
2018-11-14 18:07:28 +00:00
Michael Froman
284be56116 Bug 1471535 - pt8 - Add RDD process code. r=jld
Depends on D8489

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

--HG--
extra : moz-landing-system : lando
2018-11-14 18:06:24 +00:00
Michael Froman
4e520483b8 Bug 1471535 - pt7 - Add remote decoding in dom/media/ipc alongside gpu decoding. r=jya,mattwoodrow,jld
Depends on D8488

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

--HG--
extra : moz-landing-system : lando
2018-11-14 18:06:11 +00:00
Michael Froman
37c38cc384 Bug 1471535 - pt3 - Breakout MediaDataIPDL and MediaRawDataIPDL structs for reuse in RDD remote decoders. r=jya
Depends on D8483

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

--HG--
extra : moz-landing-system : lando
2018-11-14 18:05:15 +00:00
Michael Froman
3e6ce9501a Bug 1471535 - pt2 - Fix lurking OSX and Win build issues prepping for RDD work. r=jya
Due to changes in where things end up in the unified builds.

Depends on D8482

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

--HG--
extra : moz-landing-system : lando
2018-11-14 18:05:00 +00:00
Jean-Yves Avenard
75d4655f72 Bug 1482059 - P2. Use new VPx frame parser to detect content change. r=padenot
We also set the TrackInfoSharedPtr to each decoded sample so that on decoder that can be recycled (android) the frames are displayed with the right size.

Depends on D11588

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

--HG--
extra : moz-landing-system : lando
2018-11-14 14:40:26 +00:00
Jean-Yves Avenard
06a5c6246d Bug 1482059 - P1. Implement VP8/VP9 frame header parser. r=TD-Linux
And use it to determine if a frame is a keyframe, its size and display size.

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

--HG--
extra : moz-landing-system : lando
2018-11-14 09:33:10 +00:00
Michael Froman
a2091796e4 Bug 1471535 - pt1 - Split RemoteVideoDecoder into GpuDecoderModule and RemoteMediaDataDecoder preparing for new RDD decoder work. r=jya
- also makes RemoteMediaDecoder generic so it can work with the remote decoders on the RDD process
- changes VideoDecoderChild to subclass IRemoteDecoderChild

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

--HG--
rename : dom/media/ipc/RemoteVideoDecoder.cpp => dom/media/ipc/GpuDecoderModule.cpp
rename : dom/media/ipc/RemoteVideoDecoder.h => dom/media/ipc/GpuDecoderModule.h
extra : moz-landing-system : lando
2018-11-14 02:45:39 +00:00
Nils Ohlmeier [:drno]
d0376ddab9 Bug 1456417: made MLineIndex nullable. r=bwc,smaug
Differential Revision: https://phabricator.services.mozilla.com/D10807

--HG--
extra : moz-landing-system : lando
2018-11-13 22:52:24 +00:00
Bogdan Tara
fc8134a16a Backed out 12 changesets (bug 1471535) for VideoDecoderChild failures CLOSED TREE
Backed out changeset 3d8a11458d79 (bug 1471535)
Backed out changeset 2176010bc1fe (bug 1471535)
Backed out changeset dfb4d3462b22 (bug 1471535)
Backed out changeset ea6b73ded74d (bug 1471535)
Backed out changeset 404d760a9e82 (bug 1471535)
Backed out changeset 28ae4b6fab68 (bug 1471535)
Backed out changeset af91e1f04c2d (bug 1471535)
Backed out changeset d39fef4334b3 (bug 1471535)
Backed out changeset a038821cd8ae (bug 1471535)
Backed out changeset 5dcc74a938c6 (bug 1471535)
Backed out changeset 53aff7e699b4 (bug 1471535)
Backed out changeset f3f6abc052f0 (bug 1471535)

--HG--
rename : dom/media/ipc/GpuDecoderModule.cpp => dom/media/ipc/RemoteVideoDecoder.cpp
rename : dom/media/ipc/GpuDecoderModule.h => dom/media/ipc/RemoteVideoDecoder.h
2018-11-13 23:31:56 +02:00
Michael Froman
563ff5b11d Bug 1471535 - pt12 - Hook up RDD process and Remote decoding. r=jya,spohl
Depends on D8493

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

--HG--
extra : moz-landing-system : lando
2018-11-13 17:36:47 +00:00
Michael Froman
641479cf44 Bug 1471535 - pt8 - Add RDD process code. r=jld
Depends on D8489

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

--HG--
extra : moz-landing-system : lando
2018-11-13 17:35:44 +00:00
Michael Froman
9643048b75 Bug 1471535 - pt7 - Add remote decoding in dom/media/ipc alongside gpu decoding. r=jya,mattwoodrow,jld
Depends on D8488

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

--HG--
extra : moz-landing-system : lando
2018-11-13 17:35:31 +00:00
Michael Froman
25392d5b89 Bug 1471535 - pt3 - Breakout MediaDataIPDL and MediaRawDataIPDL structs for reuse in RDD remote decoders. r=jya
Depends on D8483

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

--HG--
extra : moz-landing-system : lando
2018-11-13 17:34:35 +00:00
Michael Froman
a437587fde Bug 1471535 - pt2 - Fix lurking OSX and Win build issues prepping for RDD work. r=jya
Due to changes in where things end up in the unified builds.

Depends on D8482

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

--HG--
extra : moz-landing-system : lando
2018-11-13 17:34:23 +00:00
Michael Froman
97b1784063 Bug 1471535 - pt1 - Split RemoteVideoDecoder into GpuDecoderModule and RemoteMediaDataDecoder preparing for new RDD decoder work. r=jya
- also makes RemoteMediaDecoder generic so it can work with the remote decoders on the RDD process
- changes VideoDecoderChild to subclass IRemoteDecoderChild

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

--HG--
rename : dom/media/ipc/RemoteVideoDecoder.cpp => dom/media/ipc/GpuDecoderModule.cpp
rename : dom/media/ipc/RemoteVideoDecoder.h => dom/media/ipc/GpuDecoderModule.h
extra : moz-landing-system : lando
2018-11-13 17:34:10 +00:00
Jim Chen
9e8436a6eb Bug 1502092 - Fix finish race in 1185191.html; r=gbrown
1185191.html loads a URI on finishing the test, which can race with the
crashtest framework loading another URI on test finish. This patch fixes
that race.

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

--HG--
extra : moz-landing-system : lando
2018-11-13 15:36:53 +00:00
Bumsik Kim
c3572e1952 Bug 1458538 - Add pause and resume events for MediaRecorder. r=jya,bzbarsky
This resolves the two problems of MediaRecorder:

1. MediaRecorder does not fire pause/resume events when the corresponding methods are called, as mentioned in D7910.
2. The WebIDL for MediaRecorder does not specify onpause/onresume event handler attributes neither.

DispatchSimpleEvent() is used because there are no event attributes needed.

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

--HG--
extra : moz-landing-system : lando
2018-11-13 12:50:04 +00:00
alwu
77fd645e2a Bug 1505494 - remove redundant codes. r=cpearce
There are two exactly same codes here, remove one of them.

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

--HG--
extra : moz-landing-system : lando
2018-11-12 17:39:53 +00:00
alwu
5657ac5a73 Bug 1505494 - not allow autoplay if we don't have a document. r=cpearce
In order to avoid the nullptr crash when using `approver`.

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

--HG--
extra : moz-landing-system : lando
2018-11-12 17:39:51 +00:00
Jean-Yves Avenard
6ba9a04554 Bug 1505910 - P2. Remove use of AsTaskQueue(). r=cpearce
Make IsCurrentThreadIn() const.

Depends on D11491

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

--HG--
extra : moz-landing-system : lando
2018-11-12 01:09:03 +00:00
Jean-Yves Avenard
1c50f171b4 Bug 1505910 - P1. Remove taskqueue's shutdown in Benchmark. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D11491

--HG--
extra : moz-landing-system : lando
2018-11-09 21:36:43 +00:00
Jean-Yves Avenard
afa48c6843 Bug 1505882 - P5. Always ensure to use latest SPS/PPS when converting sample. r=bryce
ConvertSampleToAnnexB takes the sample's out of band extradata to prepend it to the data. It was theorically possible that the first sample would contain the SPS/PPS from the previous format.

Depends on D11559

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

--HG--
extra : moz-landing-system : lando
2018-11-11 11:42:32 +00:00
Jean-Yves Avenard
dbe872db75 Bug 1505882 - P4. Fix style. r=bryce
Depends on D11558

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

--HG--
extra : moz-landing-system : lando
2018-11-11 11:42:30 +00:00
Jean-Yves Avenard
064bca85b8 Bug 1505882 - P3. Don't check the sample's out of band extradata until after decoding the first frame. r=bryce
Depends on D11557

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

--HG--
extra : moz-landing-system : lando
2018-11-11 18:15:14 +00:00
Jean-Yves Avenard
fdcfc18a6a Bug 1505882 - P2. Assert that sample conversion required is either AVCC or AnnexB. r=bryce
This will avoid future bugs like bug 1506076.

Depends on D11556

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

--HG--
extra : moz-landing-system : lando
2018-11-11 11:42:20 +00:00
Jean-Yves Avenard
0ba7f50c49 Bug 1505882 - P1. Don't track keyframe in CodecChangeMonitor. r=bryce
keyframe was tracked in the CodecChangeMonitor in order to determine when to prepend the SPS/PPS to a sample for decoder using AnnexB format.
The assumption was that it was needed only once per the lifetime of the decoder (and indeed this is true with the Windows and Android decoder). However this causes issue with the Widevine H264 decoder and it will error on some content if the first sample passed following a flush doesn't contain a SPS/PPS.

Interestingly, this issue isn't observed with Netflix content or other Widevine sample videos. Only Amazon PrimeVideo content so far.

We instead use the global MediaChangeMonitor keyframe status that knows when the decoder has been drained or flushed.

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

--HG--
extra : moz-landing-system : lando
2018-11-11 11:42:18 +00:00
Jean-Yves Avenard
1156cc49c3 Bug 1506076 - Mark video android decoder as needing AnnexB. r=jolin,alwu
It only used to work as the H264Converter used to check that the conversion needed was != kNeedAVCC (the default being kNone)

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

--HG--
extra : moz-landing-system : lando
2018-11-09 22:07:40 +00:00
Jean-Yves Avenard
31ed9de297 Bug 1504643 - Enforce template-parameter classes restrictions in MozPromise. r=gerald
Make thorough use of move semantic for MozPromise using nsTArray

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

--HG--
extra : moz-landing-system : lando
2018-11-09 15:45:31 +00:00
Daniel Varga
50b3fb522b Merge mozilla-inbound to mozilla-central. a=merge
--HG--
rename : dom/media/ipc/GpuDecoderModule.cpp => dom/media/ipc/RemoteVideoDecoder.cpp
rename : dom/media/ipc/GpuDecoderModule.h => dom/media/ipc/RemoteVideoDecoder.h
2018-11-09 11:59:52 +02:00