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

7032 Коммитов

Автор SHA1 Сообщение Дата
Andreas Pehrson 4b3fa9c67e Bug 1493613 - Move MediaStream control from DOMMediaStream to MediaStreamTrack. r=padenot
This is inherently large, because modifying these bits of DOMMediaStream and
MediaStreamTrack affects all consumers and producers of all DOMMediaStreams and
MediaStreamTracks.

Things are generally much simpler now.

Producers of tracks now create a MediaStream in the graph, add it to a
MediaStreamTrackSource subclass that takes ownership of it, and add the source
to a MediaStreamTrack. Should the producer need a DOMMediaStream it is now much
simpler to create as the only thing needed is the current window. The stream is
a rather simple wrapper around an array of MediaStreamTracks.

HTMLMediaElement is still not as straight forward as other consumers since it
consumes the DOMMediaStream directly, as opposed to a set of tracks.
The new MediaStreamRenderer helper class helps bridge the gap between this fact
and the new track-based MediaStreamGraph interface, as it needs to juggle
registering multiple audio tracks for audio output. This hooks into existing
HTMLMediaElement logic and brings a welcome simplification to all the glue
previously needed there.

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

--HG--
extra : moz-landing-system : lando
2019-07-31 07:58:17 +00:00
Andreas Pehrson 719dfe4ede Bug 1493613 - Update muted state through MediaStreamTrackSource. r=bwc,smaug
This ensures all clones of the original track also receives the new muted state.

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

--HG--
extra : moz-landing-system : lando
2019-07-31 09:35:06 +00:00
Nicholas Nethercote cd426e3ad2 Bug 1569526 - Remove return values from `Add*VarCache()`. r=KrisWright
They're infallible in practice and always `NS_OK`. (This stems from
`AddVarCacheNoAssignment()` always returning `NS_OK`.)

As a result, the commit removes lots of unnecessary checks.

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

--HG--
extra : moz-landing-system : lando
2019-07-30 06:19:46 +00:00
Matthew Gregan 536af4fbf3 Bug 1569460 - Update AudioIPC to f6f56c43. r=chunmin
Differential Revision: https://phabricator.services.mozilla.com/D39802

--HG--
extra : moz-landing-system : lando
2019-07-29 23:17:56 +00:00
Andrea Marchesini cef26c06c6 Bug 1567892 - PeerConnectionMedia should use nsIProtocolProxyService on the parent process - PProxyConfigLookup IPC protocol, r=bwc,kershaw,jld
Differential Revision: https://phabricator.services.mozilla.com/D39010

--HG--
extra : moz-landing-system : lando
2019-07-29 12:27:59 +00:00
Mike Hommey 7acef03e16 Bug 1569331 - Use the more traditional way to override dependencies for coreaudio-sys. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D39579

--HG--
extra : moz-landing-system : lando
2019-07-27 00:35:09 +00:00
Matthew Gregan e0fdf04539 Bug 1569090 - Update audioipc to 177ebd96. r=chunmin
Differential Revision: https://phabricator.services.mozilla.com/D39453

--HG--
rename : media/audioipc/audioipc/src/async.rs => media/audioipc/audioipc/src/async_msg.rs
extra : moz-landing-system : lando
2019-07-27 13:14:23 +00:00
Daniel Varga eadf32a8eb Backed out 2 changesets (bug 1569090) for causing debug SM build fail with error: failed to load source for a dependency on `mio-named-pipes`. On a CLOSED TREE
Backed out changeset 6aa27e77e38f (bug 1569090)
Backed out changeset 5251efcd4ac1 (bug 1569090)

--HG--
rename : media/audioipc/audioipc/src/async_msg.rs => media/audioipc/audioipc/src/async.rs
rename : third_party/rust/tokio-named-pipes/LICENSE-APACHE => third_party/rust/fs2/LICENSE-APACHE
rename : third_party/rust/memmap-0.6.2/LICENSE-APACHE => third_party/rust/memmap-0.5.2/LICENSE-APACHE
rename : third_party/rust/tokio-named-pipes/LICENSE-MIT => third_party/rust/memmap-0.5.2/LICENSE-MIT
rename : third_party/rust/memmap-0.6.2/ci/install.sh => third_party/rust/memmap-0.5.2/ci/install.sh
2019-07-27 12:58:34 +03:00
Matthew Gregan ae4794f5de Bug 1569090 - Update audioipc to 177ebd96. r=chunmin
Differential Revision: https://phabricator.services.mozilla.com/D39453

--HG--
rename : media/audioipc/audioipc/src/async.rs => media/audioipc/audioipc/src/async_msg.rs
extra : moz-landing-system : lando
2019-07-26 16:51:29 +00:00
Jean-Yves Avenard 577b826128 Bug 1543359 - P13. Let the video decoder determines the default colorspace if unknown. r=mattwoodrow
When unknown, we rely on the picture height and assume that anything less than 720p is 601 and 709 otherwise. It's not perfect but it's the best we can do.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 08:45:39 +00:00
Narcis Beleuzu e84980d8b1 Backed out 15 changesets (bug 1543359) for wrench bustages on image.rs . CLOSED TREE
Backed out changeset 548006270186 (bug 1543359)
Backed out changeset c9585e9d9f3c (bug 1543359)
Backed out changeset 1c7ca95a2a9b (bug 1543359)
Backed out changeset d742d80b892f (bug 1543359)
Backed out changeset 210eee703fd9 (bug 1543359)
Backed out changeset 4eb933d55d88 (bug 1543359)
Backed out changeset fb9b71ed9f4b (bug 1543359)
Backed out changeset 98b968443458 (bug 1543359)
Backed out changeset a85bd4691bea (bug 1543359)
Backed out changeset b576317853e9 (bug 1543359)
Backed out changeset 095bca5c9b1a (bug 1543359)
Backed out changeset 48eb0ebf9f2e (bug 1543359)
Backed out changeset b22b0eb708b8 (bug 1543359)
Backed out changeset 52187d9320b1 (bug 1543359)
Backed out changeset fa6792c1c2e8 (bug 1543359)
2019-07-26 11:40:33 +03:00
Jean-Yves Avenard d6adb6b604 Bug 1543359 - P13. Let the video decoder determines the default colorspace if unknown. r=mattwoodrow
When unknown, we rely on the picture height and assume that anything less than 720p is 601 and 709 otherwise. It's not perfect but it's the best we can do.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 06:14:30 +00:00
Cosmin Sabou ae7e8fbf55 Backed out 14 changesets (bug 1543359) for causing build bustages. CLOSED TREE
Backed out changeset 87c99ef85813 (bug 1543359)
Backed out changeset cd0afc5758ba (bug 1543359)
Backed out changeset 101ac87ff017 (bug 1543359)
Backed out changeset 348e748e3451 (bug 1543359)
Backed out changeset d9e937f5caf4 (bug 1543359)
Backed out changeset 2f4eb6501552 (bug 1543359)
Backed out changeset 0d316ef8c668 (bug 1543359)
Backed out changeset bf238b58c694 (bug 1543359)
Backed out changeset 496f206d03d6 (bug 1543359)
Backed out changeset 7c3a1f23baa8 (bug 1543359)
Backed out changeset 90fff717198b (bug 1543359)
Backed out changeset b2ce591ca398 (bug 1543359)
Backed out changeset a63968f077e3 (bug 1543359)
Backed out changeset ca660ab1e0c1 (bug 1543359)
2019-07-26 07:39:11 +03:00
Jean-Yves Avenard 84900ae6ff Bug 1543359 - P13. Let the video decoder determines the default colorspace if unknown. r=mattwoodrow
When unknown, we rely on the picture height and assume that anything less than 720p is 601 and 709 otherwise. It's not perfect but it's the best we can do.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 04:26:56 +00:00
Mike Hommey 2919ab6ba3 Bug 1569003 - Disable bindgen when building coreaudio-sys. r=nalexander
This is the most immediate solution to the problem. This is how
automation ends up building things because it's cross-compiling and
cross-compiling falls back to the code path of that feature, and this
solves the immediate problem of builds not working out of the box.

The more long term fix would be to fix the coreaudio-sys crate to do the
right thing.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 03:54:13 +00:00
Nicholas Nethercote 18fae65f38 Bug 1563139 - Remove StaticPrefs.h. r=glandium
This requires replacing inclusions of it with inclusions of more specific prefs
files.

The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.

Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 01:10:23 +00:00
Ryan Alderete 992406dcb2 Bug 1506219 - Use a known remote for applications loaded from file:// URIs r=bwc
Fall back to using Google's DNS server to determine the associated local
addresses for web applications that are not loaded over the network.  This
includes the loopback address, which is frequently used in the unit tests.

Provide a separate function for setting the target for the default local
address lookup.

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

--HG--
extra : moz-landing-system : lando
2019-07-24 21:58:33 +00:00
Ryan Alderete cd13ca2e02 Bug 1506219 - Update default route according to latest IETF draft r=bwc
draft-ietf-rtcweb-ip-handling specifies that the default route is the route
used to reach the origin rather than the one used to reach the internet, so
update the IP routing to reflect this.  This addresses issues in which the
wrong IP address is used on machines with multiple network interfaces.

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

--HG--
extra : moz-landing-system : lando
2019-07-24 19:50:46 +00:00
Andreea Pavel 14071390d5 Backed out 2 changesets (bug 1567892) for build bustages on a CLOSED TREE
Backed out changeset edcdfaa8a2b1 (bug 1567892)
Backed out changeset 3aef1ee02e9b (bug 1567892)
2019-07-25 08:26:29 +03:00
Andrea Marchesini 00f3ae963f Bug 1567892 - PeerConnectionMedia should use nsIProtocolProxyService on the parent process - part 2 - PProxyConfigLookup IPC protocol, r=bwc,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D39010

--HG--
extra : moz-landing-system : lando
2019-07-25 04:51:00 +00:00
Mike Hommey baf04d4ceb Bug 1567739 - Stop using deprecated rust libc integer types in rsdparsa_capi. r=dminor
Differential Revision: https://phabricator.services.mozilla.com/D38939

--HG--
extra : moz-landing-system : lando
2019-07-24 22:15:55 +00:00
Alex Chronopoulos f8e782919a Bug 1568515 - Import dav1d from upstream to c138435. r=TD-Linux
Differential Revision: https://phabricator.services.mozilla.com/D39184

--HG--
extra : moz-landing-system : lando
2019-07-24 17:03:48 +00:00
Nico Grunbaum a28afec671 Bug 1566701 - P4 - Adapting the glue code to the new address types - r=drno
Differential Revision: https://phabricator.services.mozilla.com/D38567

--HG--
extra : moz-landing-system : lando
2019-07-23 21:55:24 +00:00
Nico Grunbaum 5a20a4a360 Bug 1566701 - P3 - Update rsdparsa_capi to support FQDNs - r=drno
Differential Revision: https://phabricator.services.mozilla.com/D38566

--HG--
extra : moz-landing-system : lando
2019-07-23 21:55:21 +00:00
Nico Grunbaum d6d546de5b Bug 1566701 - P1 - Update rsdparsa to HEAD of mozilla/rsdparsa with FQDN support - r=drno
Differential Revision: https://phabricator.services.mozilla.com/D38564

--HG--
extra : moz-landing-system : lando
2019-07-23 21:55:13 +00:00
Bogdan Tara e50924670e Backed out 2 changesets (bug 1567892) for build bustages complaining about PNecko.ipdl CLOSED TREE
Backed out changeset 18a1d7fe61e0 (bug 1567892)
Backed out changeset b1b922fe6c11 (bug 1567892)
2019-07-24 18:59:39 +03:00
Andrea Marchesini 9876c2f82a Bug 1567892 - PeerConnectionMedia should use nsIProtocolProxyService on the parent process - part 2 - PProxyConfigLookup IPC protocol, r=bwc,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D39010

--HG--
extra : moz-landing-system : lando
2019-07-24 15:28:56 +00:00
Brindusan Cristian b55b8731f2 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-07-24 06:58:05 +03:00
Matthew Gregan cbbdf7fcb4 Bug 1539225 - Update AudioIPC to pick up backend selection & context name support. r=chunmin
Differential Revision: https://phabricator.services.mozilla.com/D38957

--HG--
extra : moz-landing-system : lando
2019-07-23 19:34:52 +00:00
Noemi Erli 66f9d4def3 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-07-23 19:02:55 +03:00
David Major 0cf4cb8bae Bug 1489081 followup: remove the now-outdated comment. DONTBUILD 2019-07-23 09:12:57 -04:00
Nils Ohlmeier [:drno] bb245ddcf0 Bug 1480088: Added length check for uplfec. r=dminor
Differential Revision: https://phabricator.services.mozilla.com/D38786

--HG--
extra : moz-landing-system : lando
2019-07-22 10:31:55 +00:00
Paul Adenot 86d1623bc3 Bug 1567457 - Update cubeb-pulse-rs to version ee6666. r=kinetik
Reviewed upstream by :achronop, :kinetik, :chunmin in:
https://github.com/djg/cubeb-pulse-rs/pull/41
https://github.com/djg/cubeb-pulse-rs/pull/42
https://github.com/djg/cubeb-pulse-rs/pull/43
https://github.com/djg/cubeb-pulse-rs/pull/44
https://github.com/djg/cubeb-pulse-rs/pull/45

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

--HG--
extra : moz-landing-system : lando
2019-07-23 12:03:23 +00:00
Ciure Andrei 24c0d0e47d Backed out 2 changesets (bug 1506219) for causing test_presentation_datachannel_sessiontransport.html to perma fail CLOSED TREE
Backed out changeset 7e39db6e12a5 (bug 1506219)
Backed out changeset ab31fbc14a00 (bug 1506219)
2019-07-22 23:54:45 +03:00
Kershaw Chang e2c104ab0a Bug 1566033 - Modernize ExportDEREncryptedPrivateKeyInfo and ImportDEREncryptedPrivateKeyInfo r=keeler,bwc
Differential Revision: https://phabricator.services.mozilla.com/D38374

--HG--
extra : moz-landing-system : lando
2019-07-22 17:56:48 +00:00
Ryan Alderete 14e5b45ecc Bug 1506219 - Use a known remote for applications loaded from file:// URIs r=bwc
Fall back to using Google's DNS server to determine the associated local
addresses for web applications that are not loaded over the network.  This
includes the loopback address, which is frequently used in the unit tests.

Provide a separate function for setting the target for the default local
address lookup.

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

--HG--
extra : moz-landing-system : lando
2019-07-22 15:42:06 +00:00
Ryan Alderete 35bd2662ca Bug 1506219 - Update default route according to latest IETF draft r=bwc
draft-ietf-rtcweb-ip-handling specifies that the default route is the route
used to reach the origin rather than the one used to reach the internet, so
update the IP routing to reflect this.  This addresses issues in which the
wrong IP address is used on machines with multiple network interfaces.

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

--HG--
extra : moz-landing-system : lando
2019-07-22 15:43:12 +00:00
Jean-Yves Avenard 760c5da868 Bug 1489081 - Remove no longer necessary files. r=bryce
With the move to clang-cl as default compiler on Windows, those are no longer necessary.

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

--HG--
extra : moz-landing-system : lando
2019-07-22 07:47:20 +00:00
Paul Adenot b2b7b7837d Bug 1567480 - Update libcubeb to 0b5b52d. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D38674

--HG--
extra : moz-landing-system : lando
2019-07-19 22:56:19 +00:00
Gurzau Raul 8517586551 Backed out 2 changesets (bug 1567457) for failures at test_getUserMedia_basicAudio_loopback.html on a CLOSED TREE.
Backed out changeset ce5d76c8be1b (bug 1567457)
Backed out changeset 35503df3d3e8 (bug 1567457)
2019-07-19 18:24:05 +03:00
Paul Adenot be57df7942 Bug 1567457 - Update cubeb-pulse-rs to version 3a748a2. r=kinetik
Reviewed upstream by :achronop, :kinetik, :chunmin in:
https://github.com/djg/cubeb-pulse-rs/pull/41
https://github.com/djg/cubeb-pulse-rs/pull/42

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

--HG--
extra : moz-landing-system : lando
2019-07-19 13:36:44 +00:00
Narcis Beleuzu 97bc08cce4 Backed out changeset 280e421685cb (bug 1563877) for bustages on context.rs 2019-07-19 07:35:46 +03:00
Matthew Gregan 64d7b75837 Bug 1567359 - Update mp4parse-rust to 201556d3. r=me
--HG--
extra : rebase_source : 16cd0f21753c9c5122ba43868053df18caa41247
2019-07-19 14:32:44 +12:00
Matthew Gregan a7822d4034 Bug 1563877 - Update cubeb-pulse-rs to 9d1c1292. r=me
--HG--
extra : rebase_source : 397a6c2acafde671d1628c24a4ca626110be90df
2019-07-19 14:08:53 +12:00
Chun-Min Chang ec036851de Bug 1530715 - P42: Remove unnecessary mutex. r=padenot
There are three potential data-race operations that may run at the same
time:
1. Data callback and stream reinitialization
2. Data callback and stream destroying
3. Stream reinitialization and stream destroying

The case 1 and 2 won't happen as long as the AudioOutputUnitStop is
called at the beginning of stream reinitialization and stream
destorying. The AudioOutputUnitStop requires to lock a mutex inside
CoreAudio framework that is also used by the data callback. Thus, if
there is a running callback, which holds the mutex inside CoreAudio
framework, when AudioOutputUnitStop is called, then the calling will
block the current thread until the data callback ends since it is
waiting for the mutex. By calling AudioOutputUnitStop at the beginning
of the stream reinitialization and stream destroying, the data race of
case 1 and 2 can be avoided.

On the other hand, the case 3 won't happen since the stream
initialization and destroying is run on the same task queue. The two
tasks on the same serial task queue are impossible to be run at the same
time. The mutex in AudioUnitStream is unnecessary because it's used for
the case 3.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:56 +00:00
Chun-Min Chang c4f1202ebd Bug 1530715 - P41: Remove OwnedCriticalSection in cubeb stream. r=padenot
The custom mutex, OwnedCriticalSection, in the current code comes with
the C-to-Rust translation work of cubeb_audiouniut.cpp. Its design is in
C style and not fitted well in the Rust. Rust has a better mutex design.

In the previous patches, all the data that may be touched on the
different threads are moved into a struct wrapped by a Rust mutex. Those
data will be touched in the critical sections created by the Rust mutex.
Therefore, this custom mutex becomes redundant. It's time to say goodbye
to it.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:58 +00:00
Chun-Min Chang 2c4a12e3b6 Bug 1530715 - P40: Move stream setup and close into a struct within a mutex. r=padenot
The core stream data that will be touched on the different threads when
the stream is created, reinitialized, destoryed should be used in the
critical section. Those core data are initialized in stream-setup and
destroyed in stream-close. The stream-setup and stream-close is run in
the critical section so they won't be executed at the same time.
Currently, the critical section is created by our custom mutex. However,
this custom mutex will be removed in the later mutex replacement.

Instead of running these two operations in the critical sections created
by the custom mutex, they should be moved into a struct wrapped by a
standard Rust mutex. As a result, at the end when the custom mutex is
removed, these two operations are still in the critical sections that
are created by the Rust mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:07:00 +00:00
Chun-Min Chang 05ca07cf2a Bug 1530715 - P39: Move listeners (un)registrations into a strcut within a mutex. r=padenot
The listeners will be registered and unregistered on the different threads,
so the listeners should be used in the critical sections. We do create
critical sections by our own mutex. However, this custom mutex will be
gradually replaced by the standard Rust mutex in the following patches.

To replace the custom mutex, we put the listeners to the struct wrapped
by a Rust mutex and register or unregister the listeners in the critical
section created by this struct. At the end when the custom mutex is
removed, those operations are still in the critical sections.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:07:02 +00:00
Chun-Min Chang 36d0185bd8 Bug 1530715 - P38: Merge configure_input into setup. r=padenot
Calling configure_input requires borrowing AudioUnitStream as a
mutable. Merging configure_input into setup will help to avoid a
potential borrowing-twice issue in the later mutex replacement. There
will be a critical section created by a Rust mutex in the setup, which
will borrow the AudioUnitStream as an immutable.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:07:04 +00:00
Chun-Min Chang 49581ca4dc Bug 1530715 - P37: Merge configure_output into setup. r=padenot
Calling configure_output requires borrowing AudioUnitStream as a
mutable. Merging configure_output into setup will help to avoid a
potential borrowing-twice issue in the later mutex replacement. There
will be a critical section created by a Rust mutex in the setup, which
will borrow the AudioUnitStream as an immutable.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:07:06 +00:00