Commit Graph

14468 Commits

Author SHA1 Message Date
Paul Adenot
166bf2eb1a Bug 1499426 - Align the lifetime of AudioInputProcessing with the lifetime of MediaEngineWebRTCAudio. r=achronop
Differential Revision: https://phabricator.services.mozilla.com/D16201

--HG--
extra : moz-landing-system : lando
2019-01-11 17:22:24 +00:00
John Lin
72322eaae4 Bug 1508434 - p4: release audio output buffers after processing on task queue. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15985

--HG--
extra : moz-landing-system : lando
2019-01-11 17:08:11 +00:00
John Lin
31377925fe Bug 1508434 - p3: assert members are only accessed on task queue. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15740

--HG--
extra : moz-landing-system : lando
2019-01-11 17:08:03 +00:00
John Lin
d6ebba5265 Bug 1508434 - p2: move codec output processing to task queue. r=jya
Processing MediaCodec output in Android binder threads while flushing
in task queue could cause race condition and leftover frames. Dispatch
the processing to task queue ensures all frames prior to flushing will
be cleared (by mDecodedData.Clear()) or ignored (by mInputInfos.Clear()).

Also consolidate all flushing operations in one task to avoid frame
insertion between emptying mDecodedData and mInputInfos.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 17:08:00 +00:00
John Lin
2a6faa6bf8 Bug 1508434 - p1: Support explicitly resetting seek threshold. r=jya
Usually the threshold is reset internally in MediaDataDecoder subclasses
that support the hint in their Flush() implementations so the value
will start fresh after seeking completed. But sometimes when there are
consecutive seek requests, MediaFormatReader::DecoderData::Flush() could
return early because DecoderData::mFlushed stays true when there is no
sample demuxed yet, and the threshold will not be cleared. Also, in
MediaFormatReader::SetVideoDecodeThreshold() we decide not to set the
hint when the seek target is close to EOS by checking the existence of
the next keyframe, and that could fail when there are gaps between MSE
buffered ranges. To make sure the hint is never out of date, we should
clear it rather than leaving it untouched.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 17:07:49 +00:00
Bryce Van Dyk
6109ca9301 Bug 1487416 - Handle cbcs data from mp4parse-rust. r=jya
Handle mp4parse-rust providing cbcs data in the track metadata. Explicitly check
the crypto scheme we get in the metadata and error if we encounter something
outside of cenc and cbcs -- catch unexpected data early.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 15:13:41 +00:00
Bryce Van Dyk
4ace4150ca Bug 1487416 - Index.cpp's SampleIterator populates cbcs data. r=jya
Rework our mp4 sample iterator to handle cbcs crypto data.

To support this we populate the following new data for samples:
- Crypto pattern information, this is split into a count of encrypted blocks
  and a count of clear blocks.
- A constant IV.

This information is available at a track level and a sample group level. The
sample group level supersedes track level information if both a present.

Prior to this patch, some crypto information was written to samples in
the SampleIterator in Index.cpp, and some in the MP4Demuxer (based on if the
SampleIterator had not populated the data). This patch moves all these
operations into the SampleIterator -- the idea being that the sample iterator
should be the component responsible for setting up sample meta data.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 15:13:37 +00:00
Bryce Van Dyk
2ac043ecf5 Bug 1487416 - Support different encryption schemes in mp4 parser's GetAuxInfo. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15876

--HG--
extra : moz-landing-system : lando
2019-01-11 15:12:14 +00:00
Bryce Van Dyk
b661b40548 Bug 1487416 - Parse pattern encryption information from the seig box. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15875

--HG--
extra : moz-landing-system : lando
2019-01-11 15:11:51 +00:00
Bryce Van Dyk
fa9d86fda5 Bug 1487416 - Replace mValid and mMode with mCryptoScheme for track and sample crypto structs. r=jya
Explicitly store the crypto scheme being used on our crypto structs to let us
differentiate between cenc and cbcs data. In doing so remove mMode and replace
mValid with IsEncrypted() for the following reasons:
- Different modes within the existing schemes are not currently utilized by the
  spec: the scheme implies mode. Having a mode and a scheme could lead to confusion
  between the two. We can return mMode if ever needed by the spec --
  possibly if the isProtected flag which we were tracking with mMode, is
  ever changed to be more than a bool in the spec.
- mValid was typically used to check if these structs contained valid crypto
  data or not. With only one scheme this was often shorthand for 'IsEncrypted',
  but with multiple schemes what is considered valid data for one may not be for
  another. Do away with this and just explicitly have an 'IsEncrypted'.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 15:29:45 +00:00
Bryce Van Dyk
1db6ef799b Bug 1487416 - Read pattern information in Sinf parser. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15873

--HG--
extra : moz-landing-system : lando
2019-01-11 15:11:05 +00:00
Johann Hofmann
dd8f905612 Bug 1371741 - Test getUserMedia in sandboxed srcdoc, blob, data and regular iframes. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D16221

--HG--
extra : moz-landing-system : lando
2019-01-11 10:50:08 +00:00
Johann Hofmann
ca334646e4 Bug 1371741 - Disallow getUserMedia on null principals. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D16220

--HG--
extra : moz-landing-system : lando
2019-01-11 10:49:37 +00:00
Arnaud Bienner
0de7c09e8d 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
2019-01-10 18:45:38 +00:00
Cosmin Sabou
af0ac088e5 Backed out changeset 8d953c25fdef (bug 1514874) for windows asan mda failures on RemoteDecoderModule.cpp. 2019-01-11 02:03:38 +02:00
Cosmin Sabou
15939f75f2 Backed out 6 changesets (bug 1487416) for causing Android build bustages on RemoteDataDecoder.cpp. CLOSED TREE
Backed out changeset 05bcc598e9fb (bug 1487416)
Backed out changeset b99936efbbc9 (bug 1487416)
Backed out changeset ee55b284223e (bug 1487416)
Backed out changeset d25449127f8f (bug 1487416)
Backed out changeset f7c201b7f9bc (bug 1487416)
Backed out changeset 233aedc8b42e (bug 1487416)
2019-01-10 23:37:20 +02:00
Bryce Van Dyk
01a302ea14 Bug 1487416 - Handle cbcs data from mp4parse-rust. r=jya
Handle mp4parse-rust providing cbcs data in the track metadata. Explicitly check
the crypto scheme we get in the metadata and error if we encounter something
outside of cenc and cbcs -- catch unexpected data early.

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

--HG--
extra : moz-landing-system : lando
2019-01-10 18:39:27 +00:00
Bryce Van Dyk
150ebe3741 Bug 1487416 - Index.cpp's SampleIterator populates cbcs data. r=jya
Rework our mp4 sample iterator to handle cbcs crypto data.

To support this we populate the following new data for samples:
- Crypto pattern information, this is split into a count of encrypted blocks
  and a count of clear blocks.
- A constant IV.

This information is available at a track level and a sample group level. The
sample group level supersedes track level information if both a present.

Prior to this patch, some crypto information was written to samples in
the SampleIterator in Index.cpp, and some in the MP4Demuxer (based on if the
SampleIterator had not populated the data). This patch moves all these
operations into the SampleIterator -- the idea being that the sample iterator
should be the component responsible for setting up sample meta data.

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

--HG--
extra : moz-landing-system : lando
2019-01-10 18:39:02 +00:00
Bryce Van Dyk
c774b56446 Bug 1487416 - Support different encryption schemes in mp4 parser's GetAuxInfo. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15876

--HG--
extra : moz-landing-system : lando
2019-01-10 18:38:36 +00:00
Bryce Van Dyk
fc1f753612 Bug 1487416 - Parse pattern encryption information from the seig box. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15875

--HG--
extra : moz-landing-system : lando
2019-01-10 18:38:14 +00:00
Bryce Van Dyk
1a3a965df3 Bug 1487416 - Replace mValid and mMode with mCryptoScheme for track and sample crypto structs. r=jya
Explicitly store the crypto scheme being used on our crypto structs to let us
differentiate between cenc and cbcs data. In doing so remove mMode and replace
mValid with IsEncrypted() for the following reasons:
- Different modes within the existing schemes are not currently utilized by the
  spec of implementation. Having a mode and a scheme could lead to confusion
  between the two. We can return mMode if ever needed by the spec.
- mValid was typically used to check if these structs contained valid crypto
  data or not. With only one scheme this was often shorthand for 'IsEncrypted',
  but with multiple schemes what is considered valid data for one may not be for
  another. Do away with this and just explicitly have an 'IsEncrypted'.

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

--HG--
extra : moz-landing-system : lando
2019-01-10 18:37:48 +00:00
Bryce Van Dyk
a30bb45d3c Bug 1487416 - Read pattern information in Sinf parser. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15873

--HG--
extra : moz-landing-system : lando
2019-01-10 18:37:20 +00:00
Michael Froman
1a75356195 Bug 1514874 - start RDD process on-demand r=jya,jld
Differential Revision: https://phabricator.services.mozilla.com/D15775

--HG--
extra : moz-landing-system : lando
2019-01-10 18:35:06 +00:00
Alex Chronopoulos
96cd8b2f6a Bug 1515549 - Avoid resetting volume in every AudioSink restart in case volume has changed outside firefox. r=jya
Avoid resetting volume in every AudioSink restart to stop unexpected volume change during play/pause and seek. Volume changes could occur if the volume has been modified outside firefox (for example pavucontrol in Linux).

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

--HG--
extra : moz-landing-system : lando
2019-01-10 11:24:29 +00:00
Andreas Pehrson
7577f27956 Bug 1518834 - Don't disable pulling when stopping microphone source. r=drno
Differential Revision: https://phabricator.services.mozilla.com/D16148

--HG--
extra : moz-landing-system : lando
2019-01-10 06:13:25 +00:00
Nico Grunbaum
b1e55aa134 Bug 1518735 - reformat PeerConnection stats test r=mjf
reformating the PeerConnection stats test to make it easier to maintain

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

--HG--
extra : moz-landing-system : lando
2019-01-09 22:04:57 +00:00
shindli
eae80bd903 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-01-09 23:45:39 +02:00
Brindusan Cristian
e4a445730d Backed out 4 changesets (bug 1508434) for mda failures on test_waveShaperPassThrough.html. CLOSED TREE
Backed out changeset 1851290ec29b (bug 1508434)
Backed out changeset 12424313d637 (bug 1508434)
Backed out changeset 8fbed3243217 (bug 1508434)
Backed out changeset 25b67aa0ef55 (bug 1508434)
2019-01-09 21:00:35 +02:00
Alex Chronopoulos
eaa068b403 Bug 1518443 - Assert AudioStream is not closed when volume is set. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15933

--HG--
extra : moz-landing-system : lando
2019-01-09 17:16:45 +00:00
John Lin
9101933771 Bug 1508434 - p4: release audio output buffers after processing on task queue. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15985

--HG--
extra : moz-landing-system : lando
2019-01-09 17:40:45 +00:00
John Lin
b61754a7c8 Bug 1508434 - p3: assert members are only accessed on task queue. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15740

--HG--
extra : moz-landing-system : lando
2019-01-09 17:40:53 +00:00
John Lin
4003a972dc Bug 1508434 - p2: move codec output processing to task queue. r=jya
Processing MediaCodec output in Android binder threads while flushing
in task queue could cause race condition and leftover frames. Dispatch
the processing to task queue ensures all frames prior to flushing will
be cleared (by mDecodedData.Clear()) or ignored (by mInputInfos.Clear()).

Also consolidate all flushing operations in one task to avoid frame
insertion between emptying mDecodedData and mInputInfos.

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

--HG--
extra : moz-landing-system : lando
2019-01-08 20:57:47 +00:00
John Lin
3ef17ab0cb Bug 1508434 - p1: Support explicitly resetting seek threshold. r=jya
Usually the threshold is reset internally in MediaDataDecoder subclasses
that support the hint in their Flush() implementations so the value
will start fresh after seeking completed. But sometimes when there are
consecutive seek requests, MediaFormatReader::DecoderData::Flush() could
return early because DecoderData::mFlushed stays true when there is no
sample demuxed yet, and the threshold will not be cleared. Also, in
MediaFormatReader::SetVideoDecodeThreshold() we decide not to set the
hint when the seek target is close to EOS by checking the existence of
the next keyframe, and that could fail when there are gaps between MSE
buffered ranges. To make sure the hint is never out of date, we should
clear it rather than leaving it untouched.

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

--HG--
extra : moz-landing-system : lando
2019-01-08 20:57:34 +00:00
Karl Tomlinson
930c7dff0f Bug 1518352 remove unnecessary WeakPtr support from PannerNode r=padenot
This is no longer used since https://hg.mozilla.org/mozilla-central/rev/11b4729e92ec#l3.101

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

--HG--
extra : moz-landing-system : lando
2019-01-08 10:07:15 +00:00
Nathan Froyd
a299b06741 Bug 1062533 - part 6 - change ReverbConvolver to use mozilla locking constructs; r=padenot
We are cargo-culting ipc/chromium/ code for this, and ReverbConvolver is
essentially the only outside consumer of Chromium IPC locks at this
point.
2019-01-09 11:09:24 -04:00
alwu
15cbe4a2c3 Bug 1512277 - Add Telemetry to know AudioContext blocking status if we enable blocking autoplay for web audio. r=karlt,Dexter
Differential Revision: https://phabricator.services.mozilla.com/D14118

--HG--
extra : moz-landing-system : lando
2019-01-08 21:52:31 +00:00
Andreas Pehrson
6f2800844c Bug 1517711 - Guard other uses of SetPullingEnabled too. r=padenot
Depends on D15892

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

--HG--
extra : moz-landing-system : lando
2019-01-08 10:06:08 +00:00
Andreas Pehrson
72327b88f5 Bug 1517711 - Check for a destroyed MediaStream on the right thread. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D15892

--HG--
extra : moz-landing-system : lando
2019-01-08 10:06:11 +00:00
Karl Tomlinson
f470a0dcbc Bug 1512737 assign HRTF to panningModel attribute instead of adding type property r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D14494

--HG--
extra : moz-landing-system : lando
2019-01-07 08:51:31 +00:00
alwu
6b72f94b2f Bug 1513039 - part14 : add new error message for web audio. r=baku,flod
Differential Revision: https://phabricator.services.mozilla.com/D14637

--HG--
extra : moz-landing-system : lando
2019-01-07 18:44:03 +00:00
alwu
a4a90d4976 Bug 1513039 - part13 : set 'mWasAllowedToStart' flag. r=karlt
'mWasAllowedToStart' would be set to false if AudioContext is not allowed to start, and would be set to true if AudioContext has been allowed to start.

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

--HG--
extra : moz-landing-system : lando
2019-01-07 18:43:31 +00:00
alwu
b19b9b34f5 Bug 1513039 - part11 : remove pref 'media.autoplay.ask-permission'. r=cpearce
Depends on D14335

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

--HG--
extra : moz-landing-system : lando
2019-01-07 18:41:58 +00:00
alwu
edbf43dd41 Bug 1513039 - part10 : remove nsIAutoplay.PROMPT r=daleharvey,cpearce
Depends on D14334

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

--HG--
extra : moz-landing-system : lando
2019-01-07 18:41:03 +00:00
alwu
047b607301 Bug 1513039 - part6 : remove AutoplayPermissionManager and AutoplayPermissionRequest. r=cpearce,smaug
Depends on D14330

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

--HG--
extra : moz-landing-system : lando
2019-01-07 18:35:30 +00:00
alwu
2e3f453263 Bug 1513039 - part5 : log warning when autoplay is blocked. r=cpearce,karlt
Wrap 'nsContentUtils::ReportToConsole()' to reduce necessary input parameters and call it when we need to log error or warning message. Show the warning when autoplay is blocked.

For web audio, this restores the console messages removed in part4 and also reports the same message when the AudioContext is blocked in the constructor.

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

--HG--
extra : moz-landing-system : lando
2019-01-07 19:57:48 +00:00
alwu
28a21fe0ad Bug 1513039 - part4 : remove permission request logic in AudioContext. r=karlt
AudioContext won't need to ask permission request anymore, and we will report error message in patch5.

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

--HG--
extra : moz-landing-system : lando
2019-01-07 18:33:36 +00:00
alwu
242554622e Bug 1513039 - part1 : remove caching temporary autoplay permission. r=smaug,florian
We're going to remove all autoplay temporary permission related codes, so we don't need to cache it anymore.

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

--HG--
extra : moz-landing-system : lando
2019-01-07 18:29:10 +00:00
Csoregi Natalia
498c659ff8 Merge inbound to mozilla-central. a=merge 2019-01-07 23:46:59 +02:00
Brindusan Cristian
331818d5aa Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-01-07 18:46:25 +02:00
Brindusan Cristian
4d62b74678 Merge inbound to mozilla-central. a=merge 2019-01-07 18:43:04 +02:00
Andreas Pehrson
97ca0d12ba Bug 1517710 - Avoid calling SetPullingEnabled on a destroyed MediaStream. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D15798

--HG--
extra : moz-landing-system : lando
2019-01-07 08:24:08 +00:00
Cosmin Sabou
2cbb9f9248 Bug 1453375 - Disable dom/media/test/test_mediarecorder_principals.html on win10 webrender. r=jmaher 2019-01-07 02:45:28 +02:00
Jeremy Lainé
1e7f350880 Bug 1517731 - "Enable mochitests for maxRetransmits and maxPacketLifeTime". r=dminor 2019-01-04 06:36:00 +02:00
Andreea Pavel
95c3660e27 Bug 1485407 - test disabled on android debug r=jmaher 2019-01-03 15:46:00 +02:00
Bryce Van Dyk
d217fb09a2 Bug 1515471 - Add gtest for mp4 sample description entry lookup. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D15442

--HG--
extra : moz-landing-system : lando
2019-01-04 17:57:18 +00:00
Bryce Van Dyk
d93e35223b Bug 1515471 - Tidy mp4parser test cases. r=jya
Driveby tidying:
- Tidy and clarify comment impacted by global clang-formatting.
- Update comments on two test cases disabled by bug 1224019. These tests no
  longer have log spam issues, and have some value as sanity tests, but remain
  disabled due to being resource hogs. Comments indicate this.

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

--HG--
extra : moz-landing-system : lando
2019-01-03 14:14:24 +00:00
Bryce Van Dyk
49eadf9b1e Bug 1515471 - Persist the track fragment header box on the Moof class. r=jya
Persisting this box lets us use it later while indexing into metadata.
Importantly, it lets us look up the appropriate sample description entry, which
lets us determine if a fragment is associated with crypto information in the
init segment.

Being able to do this is required for cbcs encryption. This will be done in a
follow up bug: Bug 1487416 (and possibly others).

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

--HG--
extra : moz-landing-system : lando
2019-01-03 14:14:00 +00:00
Bryce Van Dyk
07b9273ae0 Bug 1515471 - Have the moof parser store if sample description entries contain crypto info. r=jya
This is required to disambiguate if samples should be considered encrypted or
not when parsing certain cbcs encrypted files. Unlike with cenc encryption, cbcs
encrypted media may have fragments that lack characteristics from which we can
infer encryption. Because of this we need to store and trust this information
from the sample description box.

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

--HG--
extra : moz-landing-system : lando
2019-01-04 17:57:04 +00:00
Bryce Van Dyk
5daa213b32 Bug 1515471 - Remove unused code from MoofParser.h r=jya
The following code appears to be dead and is removed:
- The AuxInfo class.
- Moof::ParseSaiz.
- Moof::ParseSaio.
- MoofParser::ParseSinf.

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

--HG--
extra : moz-landing-system : lando
2019-01-03 14:13:09 +00:00
Andreas Pehrson
fef7f858ef Bug 1513973 - Remove mutable keyword from MediaEngineWebRTCMicrophoneSource runnables. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D15220

--HG--
extra : moz-landing-system : lando
2019-01-04 06:40:05 +00:00
Andreas Pehrson
8acabc8a13 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
2019-01-04 06:39:58 +00:00
Andreas Pehrson
997855e877 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
2019-01-04 06:39:43 +00:00
Andreas Pehrson
d8bf65f800 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
2019-01-04 06:39:40 +00:00
Andreas Pehrson
de06fc1905 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
2019-01-04 06:39:33 +00:00
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