Граф коммитов

85188 Коммитов

Автор SHA1 Сообщение Дата
Kashav Madan e7ad7b7104 Bug 1543251 - Move hasBeforeUnload from PBrowser to PWindowGlobal, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D37003

--HG--
extra : moz-landing-system : lando
2019-07-15 17:30:26 +00:00
Byron Campen [:bwc] 6480f0a928 Bug 1560636: Avoid using main thread with PMediaTransport. r=mjf,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D36818

--HG--
extra : moz-landing-system : lando
2019-07-15 15:49:30 +00:00
Michael Froman 9ade78d985 Bug 1560368 - add Opus decoding on RDD. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D37620

--HG--
extra : moz-landing-system : lando
2019-07-11 14:07:24 +00:00
Boris Zbarsky 5062731c15 Bug 1565688. Remove unused IOService arg from NS_NewURI. r=mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D37968

--HG--
extra : moz-landing-system : lando
2019-07-15 13:39:51 +00:00
Alphan Chen bd4a8d7302 Bug 1563171 - Move the sessionStore related functions from nsIXULBrowserWindow.idl r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D37424

--HG--
extra : moz-landing-system : lando
2019-07-15 10:29:06 +00:00
Frederik Braun 0d65cdff13 Bug 1565988 - fix typo in comment referencing follow-up work r=Pike
Differential Revision: https://phabricator.services.mozilla.com/D38050

--HG--
extra : moz-landing-system : lando
2019-07-15 10:16:28 +00:00
Andrea Marchesini 33eb80d210 Bug 1564821 - Response must call JS::ReadableStreamReleaseCCObject() if ::GetBody() fails, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D37711

--HG--
extra : moz-landing-system : lando
2019-07-12 23:43:16 +00:00
Jean-Yves Avenard db6ecd1b6e Bug 1560440 - Don't attempt to set sample's duration. r=bryce
This is a partial revert of bug 1524890 - P17.

When setting the duration, with some videos, on output WMF set nonsensical values. Sometimes the duration read is equal to the timestamp of the previous frame leading to broken A/V sync.

In bug 1222874, we will remove the entire concept of video frame's duration.

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

--HG--
extra : moz-landing-system : lando
2019-07-11 15:50:09 +00:00
longsonr 7cf71757bf Bug 1353164 Part 1 - Remove dominant-baseline values that no longer exist r=heycam 2019-07-13 15:35:08 +01:00
Razvan Maries affddc7861 Backed out changeset 6e4d13741a0f (bug 1564527) for perma AddressSanitizer failures. CLOSED TREE 2019-07-13 02:05:25 +03:00
Niklas Hambüchen b1eb1b43ef Bug 1564930 - Improve "XHR must not be LOADING or DONE" error messages. r=baku
The previous error message suggested that this is an internal error message
pointing out a bad state in the XHR state machine, when in fact this is
a user error (calling `overrideMimeType()` or setting `responseType()` after
`send()`).

This commit improves and disambiguates the error messages, pointing out to
the user what they did wrong, like other browsers do.

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

--HG--
extra : moz-landing-system : lando
2019-07-12 22:51:10 +00:00
alwu ac67bcfa81 Bug 1545970 - make sure we only divide or modular TimeUnit on unsigned int32. r=jya
The way we use `operator/` on TimeUnit is usaually to divide 2 for the fuzz or to divide the playback rate, and the rate is always a unsigned int.

The `operator%` should also have same constraint, because there is meaningless to do such a operation on a negative value.

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

--HG--
extra : moz-landing-system : lando
2019-07-12 22:05:06 +00:00
Tom Ritter 0ca0f2dea1 Bug 1564527 - Enable AssertEvalNotUsingSystemPrincipal on Nightly builds r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D37460

--HG--
extra : moz-landing-system : lando
2019-07-11 08:46:18 +00:00
Andreea Pavel c8af1a97a0 Merge mozilla-central to autoland on a CLOSED TREE 2019-07-13 00:53:27 +03:00
Andreea Pavel 3fed932eaa Merge mozilla-inbound to mozilla-central a=merge 2019-07-13 00:45:18 +03:00
Byron Campen [:bwc] 88c34e7b3f Bug 1559512: Make sure that we grab the first RTP packet when checking RTP extensions, because the mid extension is only used in the first several. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D37884

--HG--
extra : moz-landing-system : lando
2019-07-12 21:36:16 +00:00
Dorel Luca 77d61d6a6f Backed out 5 changesets (bug 1560178) for Browser-chrome failures in builds/worker/workspace/build/src/dom/base/Document.cpp. CLOSED TREE
Backed out changeset 1ff8a41dd3c1 (bug 1560178)
Backed out changeset 4aaeda889656 (bug 1560178)
Backed out changeset b1dfc0b5a14c (bug 1560178)
Backed out changeset 45fca0f1b675 (bug 1560178)
Backed out changeset fc2be64e4ece (bug 1560178)
2019-07-12 18:38:34 +03:00
Jon Coppeard eb473b5dda Backed out changeset ec4aac5a6c9f (bug 1557771) for performance regressions a=backout 2019-07-12 15:08:24 +01:00
Daniel Varga 883bfd385e Merge mozilla-inbound to mozilla-central. a=merge 2019-07-12 12:58:03 +03:00
Mihai Alexandru Michis e0b0dfa5eb Backed out 15 changesets (bug 1014393) for causing bustages in TestMuxer.cpp and gmock-internal-utils.h CLOSED TREE
Backed out changeset 0ddbdbfa87f6 (bug 1014393)
Backed out changeset 37399c83d3bf (bug 1014393)
Backed out changeset fe652475a785 (bug 1014393)
Backed out changeset 2812ca77d87d (bug 1014393)
Backed out changeset 6755ef7b361c (bug 1014393)
Backed out changeset 72e545bdcce3 (bug 1014393)
Backed out changeset 2f030ee55722 (bug 1014393)
Backed out changeset e9416b502170 (bug 1014393)
Backed out changeset 5a01d6d44634 (bug 1014393)
Backed out changeset 3457a5065dc4 (bug 1014393)
Backed out changeset 2a4999e0475b (bug 1014393)
Backed out changeset 0be3804dc04e (bug 1014393)
Backed out changeset 234994d8f136 (bug 1014393)
Backed out changeset d17f91ff2014 (bug 1014393)
Backed out changeset 25f58baa8159 (bug 1014393)

--HG--
rename : dom/media/encoder/EncodedFrame.h => dom/media/encoder/EncodedFrameContainer.h
2019-07-12 17:18:23 +03:00
Andreas Pehrson 221a8dfeca Bug 1014393 - Use undef-after-def pattern in MediaRecorder and related files. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D37700

--HG--
extra : moz-landing-system : lando
2019-07-12 13:42:00 +00:00
Andreas Pehrson a80b26a3f5 Bug 1014393 - Minor mochitest fixes. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D35311

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:45 +00:00
Andreas Pehrson 8d5c8d17a4 Bug 1014393 - Add Blob::CreateEmptyBlob. r=baku
I needed empty blobs in MediaRecorder and seeing that there was no
Blob::CreateEmptyBlob, nor an export of EmptyBlobImpl, I thought
Blob::CreateEmptyBlob would be the cleaner solution, so here it is.

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

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:48 +00:00
Andreas Pehrson 25e0a96f86 Bug 1014393 - Unify MediaRecorder session shutdown paths and fix event timing when stopping per spec. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D17814

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:32 +00:00
Andreas Pehrson 4eb24d2d87 Bug 1014393 - Remove MediaRecorder::GetParentObject. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D35308

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:27 +00:00
Andreas Pehrson 4ce75e7e63 Bug 1014393 - Remove MediaRecorder::Session::PushBlobRunnable. r=bryce
This moves the impl of PushBlobRunnable from a runnable to MozPromise, which
let's us more easily modularize it's parts (gather the blob, fire dataavailable)
to make individual code paths more explicit.

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

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:24 +00:00
Andreas Pehrson aa33941822 Bug 1014393 - Add gtests for the standalone muxer. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D35307

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:15 +00:00
Andreas Pehrson 2e37cdaa99 Bug 1014393 - Break out muxing and queueing of track data from MediaEncoder to new Muxer class. r=bryce
This first of all does some refactoring of how metadata is encoded in
MediaEncoder. This is now guided by the new Muxer class. If we're ready to pass
data to the muxer and it does not have metadata yet, we provide metadata before
giving it any media data. This metadata is passed to the muxer in a single call.
The metadata provided in this call must stay valid for the entire recording.
This removes MediaEncoder::GetEncodedMetadata().

This also removes the ctor argument from the WebMWriter since it can now rely on
the single SetMetadata() instead.
To comply with the ContainerWriter::SetMetadata() docs,
WebMWriter::SetMetadata() will now also sanity check metadata.

ContainerWriter instances are updated somewhat, to accommodate these changes.

Lastly, and most important, the new Muxer class manages muxing of the (up to)
two tracks into a single container, ensuring that timestamps increase
monotonically throughout a recording.

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

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:15 +00:00
Bryce Van Dyk a539255bf2 Bug 1014393 - Move AudioGenerator to its own files so it can be used in more media gtests. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D35389

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:08 +00:00
Bryce Van Dyk 4cad8c0a53 Bug 1014393 - MediaEncoder better orders frames passed to the muxer. r=pehrsons
Update MediaEncoder to pass frames to the muxer in order of their time stamps.
This should prevent the currently possible scenario where audio and video
frames are written with non-monotonically increasing timestamps (in violation
of the webm spec).

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

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:01 +00:00
Bryce Van Dyk b0e3afd09f Bug 1014393 - Use MediaQueue to store frames pending write to muxer in MediaEncoder. r=pehrsons
MediaQueue provides a better interface for interleaving frames when writing to
the muxer (this change will follow in another changeset). The queue interface
provides a nicer abstraction than manually managing a nsTArray.

MozReview-Commit-ID: 5V5XmYODFdA

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

--HG--
extra : moz-landing-system : lando
2019-07-12 13:40:54 +00:00
Bryce Van Dyk f767feb399 Bug 1014393 - Update EncodedFrame class to more closely resemble MediaData class. r=pehrsons
This changes EncodedFrame to behave more like MediaData, so that EncodedFrame
can be used with the MediaQueue data structure. It also provides a somewhat
more consistent interface across media data types.

MozReview-Commit-ID: I2o6n30ErxB

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

--HG--
extra : moz-landing-system : lando
2019-07-12 13:40:47 +00:00
Bryce Van Dyk 8dde6a0048 Bug 1014393 - Shift responsibility of adjusting packets with opus codec delay to MediaEncoder. r=pehrsons
Move the responsibility of adjusting opus frame timestamps to the MediaEncoder.
This was previously done by the EbmlComposer, but doing so in the MediaEncoder
means we can have greater control over handling of time codes and interleaving
of frames.

MozReview-Commit-ID: 2g9cy1IqOph

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

--HG--
extra : moz-landing-system : lando
2019-07-12 13:40:40 +00:00
Bryce Van Dyk 79c5e43bd4 Bug 1014393 - Remove EncodedFrameContainer. r=pehrsons
Remove EncodedFrameContainer and clean up areas where it was used.
EncodedFrameContainer provided a wrapper around an
nsTArray<RefPtr<EncodedFrame>>, but it simplifies the code to simply expose
this array. Also clean up unused enums in EncodedFrame, and clean up some of
the outdated comments for our encoded frame handling.

MozReview-Commit-ID: Bh3VKesVoJE

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

--HG--
rename : dom/media/encoder/EncodedFrameContainer.h => dom/media/encoder/EncodedFrame.h
extra : moz-landing-system : lando
2019-07-12 13:40:33 +00:00
Bryce Van Dyk c949841839 Bug 1014393 - Separate MediaEncoders encode and mux steps. r=pehrsons
Separating the encode and mux steps allows for better control over interleaving
audio and video data. If encode and mux are done in a single step it's possible
to mux large amounts of audio or video data which should have been interleaved
with the other data type to give correctly ordered time stamps in the target
container.

MozReview-Commit-ID: CBYemrkpyF5

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

--HG--
extra : moz-landing-system : lando
2019-07-12 13:40:25 +00:00
Andreas Pehrson 83ae7ef921 Bug 1565317 - Handle missing mMediaSource in ReduceConstraint. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D37778

--HG--
extra : moz-landing-system : lando
2019-07-12 13:04:14 +00:00
Andreas Pehrson 8a56ba7a99 Bug 1560979 - Account for video element's intrinsic size in CanvasRenderingContext2D::DrawImage. r=jib,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D35782

--HG--
extra : moz-landing-system : lando
2019-07-12 12:46:03 +00:00
Gijs Kruitbosch 8b9bc73770 Bug 1560178 - fix miscellaneous tests to allow them to keep working when disallowing remote content in the parent process, r=aswan,ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D36310

--HG--
extra : moz-landing-system : lando
2019-07-12 12:35:59 +00:00
Ehsan Akhgari 1000118805 Bug 1565373 - Use the intrinsic storage principal when inheriting directly; r=baku
We shouldn't perform an anti-tracking check here, since that may result
in us picking the node principal unintentionally.

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

--HG--
extra : moz-landing-system : lando
2019-07-12 09:08:38 +00:00
Paul Adenot c74b95c375 Bug 1350973 - Implement new attributes MediaStreamAudioSourceNode.mediaStream and MediaElementAudioSourceNode.mediaElement. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D37283

--HG--
extra : moz-landing-system : lando
2019-07-11 20:09:58 +00:00
Paul Adenot 6d8671ebb8 Bug 1564422 - Change `outputLatency` and `getOutputTimestamp` when `resistFingerPrinting` is enabled. r=tjr
When Firefox is configured to resist fingerprinting, the latency figure returned
is the most commonly found on a particular OS.

For Android, I got data from [0], roughly copy/pasted the table into a file and
did:

```
cat file | cut -d $'\t' -f4 | grep "^[[:digit:]]" | cut -d ' ' -f 1 | sort -h
| uniq -c | sort -h
```

which indicated that 40ms was a good number for round trip latency (input to
output). Since this is for output latency only and the audio path
is roughly symmetrical in terms of duration, we report 20ms.

For OSX, 512 is always used with the default hardware in Firefox, with this
patch, it's always 512 regardless of the setup.

On Linux/Pulse, we use 25ms [1] always, and this is adjusted by PulseAudio. This
makes it always return 25ms.

On Windows, there is a wide variety of configurations, but it's common to be in
the ballpark of 80ms output (this is very empirical, by testing a bunch of
hardware over the years).

For other OSes, we use 2048 frames (adjusted to the sample-rate).

[0]: https://superpowered.com/latency
[1]: https://searchfox.org/mozilla-central/source/media/libcubeb/src/cubeb_pulse.c#725

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

--HG--
extra : moz-landing-system : lando
2019-07-12 11:27:25 +00:00
Paul Adenot 553f80fde6 Bug 1324545 - Implement AudioContext getOutputTimestamp(). r=baku
Differential Revision: https://phabricator.services.mozilla.com/D37281

--HG--
extra : moz-landing-system : lando
2019-07-12 11:27:25 +00:00
Paul Adenot 8c692f2f23 Bug 1324552 - Implement AudioContext baseLatency and outputLatency attributes. r=pehrsons,baku
Differential Revision: https://phabricator.services.mozilla.com/D37280

--HG--
extra : moz-landing-system : lando
2019-07-12 11:28:03 +00:00
Andrea Marchesini 2a3e21430e Bug 1559919 - Finish the WorkerHolder cleanup - part 11 - WorkerHolder replaced by WorkerRef, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D35230

--HG--
extra : moz-landing-system : lando
2019-07-12 11:18:17 +00:00
Andrea Marchesini 46c41f3318 Bug 1559919 - Finish the WorkerHolder cleanup - part 10 - CacheWorkerHolder ported to WorkerRef, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D35229

--HG--
rename : dom/cache/CacheWorkerHolder.cpp => dom/cache/CacheWorkerRef.cpp
rename : dom/cache/CacheWorkerHolder.h => dom/cache/CacheWorkerRef.h
extra : moz-landing-system : lando
2019-07-12 11:17:59 +00:00
Andrea Marchesini 839b9341d1 Bug 1559919 - Finish the WorkerHolder cleanup - part 9 - Notification API ported to WorkerRef, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D35228

--HG--
extra : moz-landing-system : lando
2019-07-12 11:17:52 +00:00
Andrea Marchesini 1d8a0b716c Bug 1559919 - Finish the WorkerHolder cleanup - part 8 - Get rid of WorkerHolderToken, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D35227

--HG--
extra : moz-landing-system : lando
2019-07-12 11:17:50 +00:00
Andrea Marchesini a9f2438114 Bug 1559919 - Finish the WorkerHolder cleanup - part 7 - IPCWorkerRef in ClientManagerChild, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D35226

--HG--
extra : moz-landing-system : lando
2019-07-12 11:17:46 +00:00
Andrea Marchesini f3428b3c3c Bug 1559919 - Finish the WorkerHolder cleanup - part 6 - IPCWorkerRef in ServiceWorkerChild, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D35225

--HG--
extra : moz-landing-system : lando
2019-07-12 11:16:52 +00:00
Andrea Marchesini dda55c2dec Bug 1559919 - Finish the WorkerHolder cleanup - part 5 - IPCWorkerRef in ServiceWorkerRegistrationChild, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D35224

--HG--
extra : moz-landing-system : lando
2019-07-12 11:16:34 +00:00