1421 lines
42 KiB
Diff
1421 lines
42 KiB
Diff
From: Dan Minor <dminor@mozilla.com>
|
|
Date: Thu, 5 Nov 2020 07:47:00 +0000
|
|
Subject: Bug 1654112 - Tweak upstream gn files for Firefox build. r=ng
|
|
|
|
Differential Revision: https://phabricator.services.mozilla.com/D130075
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/127ace4d8887f11abb201d300a849772a2b519f8
|
|
|
|
Bug 1820869 - avoid building unreachable files. r=ng,webrtc-reviewers
|
|
|
|
Differential Revision: https://phabricator.services.mozilla.com/D171922
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/88b3cc6bbece7c53d00e124713330f3d34d2789d
|
|
|
|
Bug 1822194 - (fix-acabb3641b) Break the new SetParametersCallback stuff into stand-alone files.
|
|
|
|
acabb3641b from upstream added a callback mechanism to allow failures to be
|
|
propagated back to RTCRtpSender.setParameters. Unfortunately, this callback
|
|
mechanism was (needlessly) tightly coupled to libwebrtc's implementation of
|
|
RTCRtpSender, and also their media channel code. This introduced a lot of
|
|
unnecessary dependencies throughout libwebrtc, that spilled into our code as
|
|
well.
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/59232687efa00e5f7b7bd3d6befca129149e2bf5
|
|
|
|
Bug 1828517 - (fix-794d599741) account for moved files in BUILD.gn that we don't want to build.
|
|
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/4a969f6709183d4f55215adaffb8a52b790a8492
|
|
|
|
Bug 1839451 - (fix-186ebdc1b0) remove BUILD.gn refs to gone files delayable.h, media_channel.h
|
|
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/d0f4d1733cb1a2d8189097af4b5537118ebc95a6
|
|
|
|
Bug 1839451 - (fix-f6eae959bf) s/rtc_encoder_simulcast_proxy/rtc_simulcast_encoder_adapter/ BUILD ref.
|
|
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/876b3f5821cd5c30564a82c1da7d057d79d17b01
|
|
|
|
Bug 1828517 - (fix-a138c6c8a5) handle file moves in BUILD.gn
|
|
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/cf7e333da17689b3c115a6ffd07fab042bc5f086
|
|
|
|
Bug 1817024 - (fix-0e2cf6cc01) Skip library create_peer_connection_quality_test_frame_generator. r?mjf!
|
|
|
|
Differential Revision: https://phabricator.services.mozilla.com/D170887
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/fbbc1bf963fda30bca26ae6aac0c3459b8ebea6f
|
|
|
|
Bug 1826428 - remove libwebrtc's jvm_android.cc from build r=ng,webrtc-reviewers
|
|
|
|
Based on info from John Lin and previous try runs, we're almost
|
|
certainly not using this. Let's try removing it from the build
|
|
and landing it. If no problems emerge, we'll be able to remove
|
|
our custom changes to upstream code in jvm_android.cc.
|
|
|
|
Differential Revision: https://phabricator.services.mozilla.com/D174793
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/dca1b97525487ae57d43ced1ebdb4a2d9c9dae89
|
|
|
|
Bug 1774628 - re-enable support for Windows.Graphics.Capture APIs in libwebrtc. r=pehrsons,webrtc-reviewers
|
|
|
|
Differential Revision: https://phabricator.services.mozilla.com/D186862
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/08567f4539a12b54202aecbf554ec6540fb99ab2
|
|
|
|
Bug 1876843 - (fix-082cb56ee7) remove mozilla dependency on pc:media_factory.
|
|
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/136b3fc0377be6dcaa302469d27968f445e0355e
|
|
|
|
Bug 1876843 - (fix-b29ff000da) remove mozilla dependency on api:enable_media
|
|
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/7f403ee038e9797a1aff6161fc70a2d92769851f
|
|
|
|
Bug 1883116 - (fix-3d9c3687a4) Supporting change of call_factory.cc to create_call.cc.
|
|
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/b86cb7278bc4e557104cec0313d83511b9c8f40d
|
|
---
|
|
.gn | 2 +
|
|
BUILD.gn | 46 ++++++++++++++++++-
|
|
api/BUILD.gn | 37 ++++++++++++++-
|
|
api/rtp_sender_interface.h | 4 +-
|
|
api/rtp_sender_setparameters_callback.cc | 27 +++++++++++
|
|
api/rtp_sender_setparameters_callback.h | 28 +++++++++++
|
|
api/task_queue/BUILD.gn | 2 +
|
|
api/transport/BUILD.gn | 2 +
|
|
call/BUILD.gn | 8 +++-
|
|
call/audio_send_stream.h | 2 +-
|
|
call/video_send_stream.h | 2 +-
|
|
common_audio/BUILD.gn | 4 --
|
|
common_audio/fir_filter_avx2.cc | 2 +
|
|
common_audio/intrin.h | 8 ++++
|
|
media/BUILD.gn | 39 +++++++++++++++-
|
|
media/base/media_channel.h | 4 --
|
|
media/base/media_channel_impl.cc | 13 ------
|
|
modules/audio_coding/BUILD.gn | 2 +-
|
|
modules/audio_device/BUILD.gn | 17 +++++--
|
|
modules/audio_processing/aec3/BUILD.gn | 13 ++----
|
|
.../aec3/adaptive_fir_filter_avx2.cc | 2 +-
|
|
.../audio_processing/agc2/rnn_vad/BUILD.gn | 2 +-
|
|
modules/desktop_capture/BUILD.gn | 29 +-----------
|
|
modules/portal/BUILD.gn | 24 ++++++++++
|
|
modules/utility/BUILD.gn | 4 ++
|
|
modules/video_capture/BUILD.gn | 11 +----
|
|
rtc_base/BUILD.gn | 26 ++++++++++-
|
|
rtc_base/system/BUILD.gn | 2 +-
|
|
test/BUILD.gn | 10 ++++
|
|
video/BUILD.gn | 4 +-
|
|
webrtc.gni | 32 ++++++++-----
|
|
31 files changed, 311 insertions(+), 97 deletions(-)
|
|
create mode 100644 api/rtp_sender_setparameters_callback.cc
|
|
create mode 100644 api/rtp_sender_setparameters_callback.h
|
|
create mode 100644 common_audio/intrin.h
|
|
|
|
diff --git a/.gn b/.gn
|
|
index 12d5e3d4fc..6c011fd453 100644
|
|
--- a/.gn
|
|
+++ b/.gn
|
|
@@ -72,6 +72,8 @@ default_args = {
|
|
# Prevent jsoncpp to pass -Wno-deprecated-declarations to users
|
|
jsoncpp_no_deprecated_declarations = false
|
|
|
|
+ use_custom_libcxx = false
|
|
+
|
|
# Fixes the abi-revision issue.
|
|
# TODO(https://bugs.webrtc.org/14437): Remove this section if general
|
|
# Chromium fix resolves the problem.
|
|
diff --git a/BUILD.gn b/BUILD.gn
|
|
index 689de89c06..913cdf4478 100644
|
|
--- a/BUILD.gn
|
|
+++ b/BUILD.gn
|
|
@@ -33,7 +33,7 @@ if (is_android) {
|
|
import("//third_party/jni_zero/jni_zero.gni")
|
|
}
|
|
|
|
-if (!build_with_chromium) {
|
|
+if (!build_with_chromium && !build_with_mozilla) {
|
|
# This target should (transitively) cause everything to be built; if you run
|
|
# 'ninja default' and then 'ninja all', the second build should do no work.
|
|
group("default") {
|
|
@@ -158,6 +158,10 @@ config("common_inherited_config") {
|
|
defines += [ "WEBRTC_ENABLE_OBJC_SYMBOL_EXPORT" ]
|
|
}
|
|
|
|
+ if (build_with_mozilla) {
|
|
+ defines += [ "WEBRTC_MOZILLA_BUILD" ]
|
|
+ }
|
|
+
|
|
if (!rtc_builtin_ssl_root_certificates) {
|
|
defines += [ "WEBRTC_EXCLUDE_BUILT_IN_SSL_ROOT_CERTS" ]
|
|
}
|
|
@@ -497,9 +501,11 @@ config("common_config") {
|
|
}
|
|
}
|
|
|
|
+if (is_mac) {
|
|
config("common_objc") {
|
|
frameworks = [ "Foundation.framework" ]
|
|
}
|
|
+}
|
|
|
|
if (!rtc_build_ssl) {
|
|
config("external_ssl_library") {
|
|
@@ -562,6 +568,34 @@ if (!build_with_chromium) {
|
|
"sdk",
|
|
"video",
|
|
]
|
|
+ if (build_with_mozilla) {
|
|
+ deps -= [
|
|
+ "api:create_peerconnection_factory",
|
|
+ "api:enable_media",
|
|
+ "api:rtc_error",
|
|
+ "api:transport_api",
|
|
+ "api/crypto",
|
|
+ "api/rtc_event_log:rtc_event_log_factory",
|
|
+ "api/task_queue",
|
|
+ "api/task_queue:default_task_queue_factory",
|
|
+ "api/test/metrics",
|
|
+ "api/video_codecs:video_decoder_factory_template",
|
|
+ "api/video_codecs:video_decoder_factory_template_dav1d_adapter",
|
|
+ "api/video_codecs:video_decoder_factory_template_libvpx_vp8_adapter",
|
|
+ "api/video_codecs:video_decoder_factory_template_libvpx_vp9_adapter",
|
|
+ "api/video_codecs:video_decoder_factory_template_open_h264_adapter",
|
|
+ "api/video_codecs:video_encoder_factory_template",
|
|
+ "api/video_codecs:video_encoder_factory_template_libaom_av1_adapter",
|
|
+ "api/video_codecs:video_encoder_factory_template_libvpx_vp8_adapter",
|
|
+ "api/video_codecs:video_encoder_factory_template_libvpx_vp9_adapter",
|
|
+ "api/video_codecs:video_encoder_factory_template_open_h264_adapter",
|
|
+ "logging:rtc_event_log_api",
|
|
+ "p2p:rtc_p2p",
|
|
+ "pc:libjingle_peerconnection",
|
|
+ "pc:rtc_pc",
|
|
+ "sdk",
|
|
+ ]
|
|
+ }
|
|
|
|
if (rtc_include_builtin_audio_codecs) {
|
|
deps += [
|
|
@@ -574,6 +608,16 @@ if (!build_with_chromium) {
|
|
deps += [
|
|
"api/video:video_frame",
|
|
"api/video:video_rtp_headers",
|
|
+ "test:rtp_test_utils",
|
|
+ ]
|
|
+ # Added when we removed deps in other places to avoid building
|
|
+ # unreachable sources. See Bug 1820869.
|
|
+ deps += [
|
|
+ "api/video_codecs:video_codecs_api",
|
|
+ "api/video_codecs:rtc_software_fallback_wrappers",
|
|
+ "media:rtc_simulcast_encoder_adapter",
|
|
+ "modules/video_coding:webrtc_vp8",
|
|
+ "modules/video_coding:webrtc_vp9",
|
|
]
|
|
} else {
|
|
deps += [
|
|
diff --git a/api/BUILD.gn b/api/BUILD.gn
|
|
index 8876d55b94..3b25836599 100644
|
|
--- a/api/BUILD.gn
|
|
+++ b/api/BUILD.gn
|
|
@@ -44,6 +44,9 @@ rtc_source_set("enable_media") {
|
|
"environment",
|
|
"//third_party/abseil-cpp/absl/base:nullability",
|
|
]
|
|
+ if (build_with_mozilla) {
|
|
+ deps -= [ "../pc:media_factory" ]
|
|
+ }
|
|
}
|
|
|
|
rtc_source_set("enable_media_with_defaults") {
|
|
@@ -71,7 +74,7 @@ rtc_source_set("enable_media_with_defaults") {
|
|
]
|
|
}
|
|
|
|
-if (!build_with_chromium) {
|
|
+if (!build_with_chromium && !build_with_mozilla) {
|
|
rtc_library("create_peerconnection_factory") {
|
|
visibility = [ "*" ]
|
|
allow_poison = [ "environment_construction" ]
|
|
@@ -223,6 +226,10 @@ rtc_source_set("ice_transport_interface") {
|
|
}
|
|
|
|
rtc_library("dtls_transport_interface") {
|
|
+# Previously, Mozilla has tried to limit including this dep, but as
|
|
+# upstream changes, it requires whack-a-mole. Making it an empty
|
|
+# definition has the same effect, but only requires one change.
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
|
|
sources = [
|
|
@@ -239,6 +246,7 @@ rtc_library("dtls_transport_interface") {
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("dtmf_sender_interface") {
|
|
visibility = [ "*" ]
|
|
@@ -251,6 +259,10 @@ rtc_library("dtmf_sender_interface") {
|
|
}
|
|
|
|
rtc_library("rtp_sender_interface") {
|
|
+# Previously, Mozilla has tried to limit including this dep, but as
|
|
+# upstream changes, it requires whack-a-mole. Making it an empty
|
|
+# definition has the same effect, but only requires one change.
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
|
|
sources = [
|
|
@@ -265,6 +277,7 @@ rtc_library("rtp_sender_interface") {
|
|
":ref_count",
|
|
":rtc_error",
|
|
":rtp_parameters",
|
|
+ ":rtp_sender_setparameters_callback",
|
|
":scoped_refptr",
|
|
"../rtc_base:checks",
|
|
"../rtc_base/system:rtc_export",
|
|
@@ -273,8 +286,23 @@ rtc_library("rtp_sender_interface") {
|
|
"//third_party/abseil-cpp/absl/functional:any_invocable",
|
|
]
|
|
}
|
|
+}
|
|
+
|
|
+rtc_library("rtp_sender_setparameters_callback") {
|
|
+ visibility = [ "*" ]
|
|
+
|
|
+ sources = [
|
|
+ "rtp_sender_setparameters_callback.cc",
|
|
+ "rtp_sender_setparameters_callback.h",
|
|
+ ]
|
|
+ deps = [
|
|
+ ":rtc_error",
|
|
+ "//third_party/abseil-cpp/absl/functional:any_invocable",
|
|
+ ]
|
|
+}
|
|
|
|
rtc_library("libjingle_peerconnection_api") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
cflags = []
|
|
sources = [
|
|
@@ -396,6 +424,7 @@ rtc_library("libjingle_peerconnection_api") {
|
|
"../rtc_base/system:rtc_export",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_source_set("frame_transformer_interface") {
|
|
visibility = [ "*" ]
|
|
@@ -597,6 +626,7 @@ rtc_source_set("peer_network_dependencies") {
|
|
}
|
|
|
|
rtc_source_set("peer_connection_quality_test_fixture_api") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
testonly = true
|
|
sources = [ "test/peerconnection_quality_test_fixture.h" ]
|
|
@@ -642,6 +672,7 @@ rtc_source_set("peer_connection_quality_test_fixture_api") {
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_source_set("frame_generator_api") {
|
|
visibility = [ "*" ]
|
|
@@ -764,6 +795,7 @@ rtc_library("create_frame_generator") {
|
|
]
|
|
}
|
|
|
|
+if (!build_with_mozilla) {
|
|
rtc_library("create_peer_connection_quality_test_frame_generator") {
|
|
visibility = [ "*" ]
|
|
testonly = true
|
|
@@ -781,6 +813,7 @@ rtc_library("create_peer_connection_quality_test_frame_generator") {
|
|
"units:time_delta",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_source_set("libjingle_logging_api") {
|
|
visibility = [ "*" ]
|
|
@@ -967,6 +1000,7 @@ rtc_source_set("refcountedbase") {
|
|
]
|
|
}
|
|
|
|
+if (!build_with_mozilla) {
|
|
rtc_library("ice_transport_factory") {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
@@ -991,6 +1025,7 @@ rtc_library("ice_transport_factory") {
|
|
"rtc_event_log:rtc_event_log",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("neteq_simulator_api") {
|
|
visibility = [ "*" ]
|
|
diff --git a/api/rtp_sender_interface.h b/api/rtp_sender_interface.h
|
|
index 91d7b3c561..4595c28140 100644
|
|
--- a/api/rtp_sender_interface.h
|
|
+++ b/api/rtp_sender_interface.h
|
|
@@ -34,6 +34,8 @@
|
|
#include "api/video_codecs/video_encoder_factory.h"
|
|
#include "rtc_base/system/rtc_export.h"
|
|
|
|
+#include "api/rtp_sender_setparameters_callback.h"
|
|
+
|
|
namespace webrtc {
|
|
|
|
class RtpSenderObserverInterface {
|
|
@@ -46,8 +48,6 @@ class RtpSenderObserverInterface {
|
|
virtual ~RtpSenderObserverInterface() {}
|
|
};
|
|
|
|
-using SetParametersCallback = absl::AnyInvocable<void(RTCError) &&>;
|
|
-
|
|
class RTC_EXPORT RtpSenderInterface : public webrtc::RefCountInterface,
|
|
public FrameTransformerHost {
|
|
public:
|
|
diff --git a/api/rtp_sender_setparameters_callback.cc b/api/rtp_sender_setparameters_callback.cc
|
|
new file mode 100644
|
|
index 0000000000..99728ef95e
|
|
--- /dev/null
|
|
+++ b/api/rtp_sender_setparameters_callback.cc
|
|
@@ -0,0 +1,27 @@
|
|
+/*
|
|
+ * Copyright 2015 The WebRTC project authors. All Rights Reserved.
|
|
+ *
|
|
+ * Use of this source code is governed by a BSD-style license
|
|
+ * that can be found in the LICENSE file in the root of the source
|
|
+ * tree. An additional intellectual property rights grant can be found
|
|
+ * in the file PATENTS. All contributing project authors may
|
|
+ * be found in the AUTHORS file in the root of the source tree.
|
|
+ */
|
|
+
|
|
+// File added by mozilla, to decouple this from libwebrtc's implementation of
|
|
+// RTCRtpSender.
|
|
+
|
|
+#include "api/rtp_sender_setparameters_callback.h"
|
|
+
|
|
+namespace webrtc {
|
|
+
|
|
+webrtc::RTCError InvokeSetParametersCallback(SetParametersCallback& callback,
|
|
+ RTCError error) {
|
|
+ if (callback) {
|
|
+ std::move(callback)(error);
|
|
+ callback = nullptr;
|
|
+ }
|
|
+ return error;
|
|
+}
|
|
+
|
|
+} // namespace webrtc
|
|
diff --git a/api/rtp_sender_setparameters_callback.h b/api/rtp_sender_setparameters_callback.h
|
|
new file mode 100644
|
|
index 0000000000..45194f5ace
|
|
--- /dev/null
|
|
+++ b/api/rtp_sender_setparameters_callback.h
|
|
@@ -0,0 +1,28 @@
|
|
+/*
|
|
+ * Copyright 2015 The WebRTC project authors. All Rights Reserved.
|
|
+ *
|
|
+ * Use of this source code is governed by a BSD-style license
|
|
+ * that can be found in the LICENSE file in the root of the source
|
|
+ * tree. An additional intellectual property rights grant can be found
|
|
+ * in the file PATENTS. All contributing project authors may
|
|
+ * be found in the AUTHORS file in the root of the source tree.
|
|
+ */
|
|
+
|
|
+// File added by mozilla, to decouple this from libwebrtc's implementation of
|
|
+// RTCRtpSender.
|
|
+
|
|
+#ifndef API_RTP_SENDER_SETPARAMETERS_CALLBACK_H_
|
|
+#define API_RTP_SENDER_SETPARAMETERS_CALLBACK_H_
|
|
+
|
|
+#include "api/rtc_error.h"
|
|
+#include "absl/functional/any_invocable.h"
|
|
+
|
|
+namespace webrtc {
|
|
+
|
|
+using SetParametersCallback = absl::AnyInvocable<void(RTCError) &&>;
|
|
+
|
|
+webrtc::RTCError InvokeSetParametersCallback(SetParametersCallback& callback,
|
|
+ RTCError error);
|
|
+} // namespace webrtc
|
|
+
|
|
+#endif // API_RTP_SENDER_SETPARAMETERS_CALLBACK_H_
|
|
diff --git a/api/task_queue/BUILD.gn b/api/task_queue/BUILD.gn
|
|
index 9f10f0afc6..c1c917abb2 100644
|
|
--- a/api/task_queue/BUILD.gn
|
|
+++ b/api/task_queue/BUILD.gn
|
|
@@ -29,6 +29,7 @@ rtc_library("task_queue") {
|
|
]
|
|
}
|
|
|
|
+if (rtc_include_tests) {
|
|
rtc_library("task_queue_test") {
|
|
visibility = [ "*" ]
|
|
testonly = true
|
|
@@ -74,6 +75,7 @@ rtc_library("task_queue_test") {
|
|
]
|
|
}
|
|
}
|
|
+}
|
|
|
|
rtc_library("default_task_queue_factory") {
|
|
visibility = [ "*" ]
|
|
diff --git a/api/transport/BUILD.gn b/api/transport/BUILD.gn
|
|
index 7769526e07..f56ce3ce54 100644
|
|
--- a/api/transport/BUILD.gn
|
|
+++ b/api/transport/BUILD.gn
|
|
@@ -107,6 +107,7 @@ rtc_source_set("sctp_transport_factory_interface") {
|
|
}
|
|
|
|
rtc_source_set("stun_types") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"stun.cc",
|
|
@@ -129,6 +130,7 @@ rtc_source_set("stun_types") {
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
}
|
|
+}
|
|
|
|
if (rtc_include_tests) {
|
|
rtc_source_set("test_feedback_generator_interface") {
|
|
diff --git a/call/BUILD.gn b/call/BUILD.gn
|
|
index 7e13144381..5646f6bff5 100644
|
|
--- a/call/BUILD.gn
|
|
+++ b/call/BUILD.gn
|
|
@@ -48,7 +48,7 @@ rtc_library("call_interfaces") {
|
|
"../api:ref_count",
|
|
"../api:rtp_headers",
|
|
"../api:rtp_parameters",
|
|
- "../api:rtp_sender_interface",
|
|
+ "../api:rtp_sender_setparameters_callback",
|
|
"../api:scoped_refptr",
|
|
"../api:transport_api",
|
|
"../api/adaptation:resource_adaptation_api",
|
|
@@ -379,6 +379,12 @@ rtc_library("call") {
|
|
"//third_party/abseil-cpp/absl/functional:bind_front",
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
+ if (build_with_mozilla) { # See Bug 1820869.
|
|
+ deps -= [
|
|
+ ":fake_network",
|
|
+ ":simulated_network",
|
|
+ ]
|
|
+ }
|
|
}
|
|
|
|
rtc_library("payload_type_picker") {
|
|
diff --git a/call/audio_send_stream.h b/call/audio_send_stream.h
|
|
index 768ba0b19e..2d2cc89b08 100644
|
|
--- a/call/audio_send_stream.h
|
|
+++ b/call/audio_send_stream.h
|
|
@@ -27,7 +27,7 @@
|
|
#include "api/frame_transformer_interface.h"
|
|
#include "api/rtp_headers.h"
|
|
#include "api/rtp_parameters.h"
|
|
-#include "api/rtp_sender_interface.h"
|
|
+#include "api/rtp_sender_setparameters_callback.h"
|
|
#include "api/scoped_refptr.h"
|
|
#include "api/units/time_delta.h"
|
|
#include "call/audio_sender.h"
|
|
diff --git a/call/video_send_stream.h b/call/video_send_stream.h
|
|
index 02f3569dd2..e94be2df91 100644
|
|
--- a/call/video_send_stream.h
|
|
+++ b/call/video_send_stream.h
|
|
@@ -23,7 +23,7 @@
|
|
#include "api/crypto/crypto_options.h"
|
|
#include "api/frame_transformer_interface.h"
|
|
#include "api/rtp_parameters.h"
|
|
-#include "api/rtp_sender_interface.h"
|
|
+#include "api/rtp_sender_setparameters_callback.h"
|
|
#include "api/scoped_refptr.h"
|
|
#include "api/units/data_rate.h"
|
|
#include "api/video/video_content_type.h"
|
|
diff --git a/common_audio/BUILD.gn b/common_audio/BUILD.gn
|
|
index 4845bc71ef..0b5f6cb858 100644
|
|
--- a/common_audio/BUILD.gn
|
|
+++ b/common_audio/BUILD.gn
|
|
@@ -267,14 +267,10 @@ if (current_cpu == "x86" || current_cpu == "x64") {
|
|
"resampler/sinc_resampler_avx2.cc",
|
|
]
|
|
|
|
- if (is_win) {
|
|
- cflags = [ "/arch:AVX2" ]
|
|
- } else {
|
|
cflags = [
|
|
"-mavx2",
|
|
"-mfma",
|
|
]
|
|
- }
|
|
|
|
deps = [
|
|
":fir_filter",
|
|
diff --git a/common_audio/fir_filter_avx2.cc b/common_audio/fir_filter_avx2.cc
|
|
index 9cb0f770ca..0031392f8a 100644
|
|
--- a/common_audio/fir_filter_avx2.cc
|
|
+++ b/common_audio/fir_filter_avx2.cc
|
|
@@ -15,6 +15,8 @@
|
|
#include <string.h>
|
|
#include <xmmintrin.h>
|
|
|
|
+#include "common_audio/intrin.h"
|
|
+
|
|
#include "rtc_base/checks.h"
|
|
#include "rtc_base/memory/aligned_malloc.h"
|
|
|
|
diff --git a/common_audio/intrin.h b/common_audio/intrin.h
|
|
new file mode 100644
|
|
index 0000000000..f6ff7f218f
|
|
--- /dev/null
|
|
+++ b/common_audio/intrin.h
|
|
@@ -0,0 +1,8 @@
|
|
+#if defined (__SSE__)
|
|
+ #include <immintrin.h>
|
|
+ #if defined (__clang__)
|
|
+ #include <avxintrin.h>
|
|
+ #include <avx2intrin.h>
|
|
+ #include <fmaintrin.h>
|
|
+ #endif
|
|
+#endif
|
|
diff --git a/media/BUILD.gn b/media/BUILD.gn
|
|
index 75fd8bda50..655b155c6a 100644
|
|
--- a/media/BUILD.gn
|
|
+++ b/media/BUILD.gn
|
|
@@ -76,7 +76,7 @@ rtc_library("rtc_media_base") {
|
|
"../api:media_stream_interface",
|
|
"../api:rtc_error",
|
|
"../api:rtp_parameters",
|
|
- "../api:rtp_sender_interface",
|
|
+ "../api:rtp_sender_setparameters_callback",
|
|
"../api:scoped_refptr",
|
|
"../api:sequence_checker",
|
|
"../api:transport_api",
|
|
@@ -127,6 +127,12 @@ rtc_library("rtc_media_base") {
|
|
"../video/config:encoder_config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
]
|
|
+ if (build_with_mozilla) {
|
|
+ sources -= [
|
|
+ "base/adapted_video_track_source.cc",
|
|
+ "base/adapted_video_track_source.h",
|
|
+ ]
|
|
+ }
|
|
}
|
|
|
|
rtc_library("adapted_video_track_source") {
|
|
@@ -151,6 +157,9 @@ rtc_library("adapted_video_track_source") {
|
|
|
|
rtc_source_set("audio_source") {
|
|
sources = [ "base/audio_source.h" ]
|
|
+ if (build_with_mozilla) {
|
|
+ sources -= [ "base/audio_source.h" ]
|
|
+ }
|
|
}
|
|
|
|
rtc_library("video_adapter") {
|
|
@@ -254,9 +263,16 @@ rtc_library("media_engine") {
|
|
"../rtc_base/system:file_wrapper",
|
|
"//third_party/abseil-cpp/absl/algorithm:container",
|
|
]
|
|
+ if (build_with_mozilla) {
|
|
+ sources -= [
|
|
+ "base/media_engine.cc",
|
|
+ "base/media_engine.h",
|
|
+ ]
|
|
+ }
|
|
}
|
|
|
|
rtc_library("media_channel_impl") {
|
|
+if (!build_with_mozilla) {
|
|
sources = [
|
|
"base/media_channel_impl.cc",
|
|
"base/media_channel_impl.h",
|
|
@@ -303,6 +319,7 @@ rtc_library("media_channel_impl") {
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_source_set("media_channel") {
|
|
sources = [ "base/media_channel.h" ]
|
|
@@ -398,6 +415,7 @@ rtc_library("codec_list") {
|
|
}
|
|
|
|
rtc_library("rtp_utils") {
|
|
+if (!build_with_mozilla) {
|
|
sources = [
|
|
"base/rtp_utils.cc",
|
|
"base/rtp_utils.h",
|
|
@@ -414,8 +432,10 @@ rtc_library("rtp_utils") {
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("stream_params") {
|
|
+if (!build_with_mozilla) {
|
|
sources = [
|
|
"base/stream_params.cc",
|
|
"base/stream_params.h",
|
|
@@ -428,6 +448,7 @@ rtc_library("stream_params") {
|
|
"//third_party/abseil-cpp/absl/algorithm:container",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("media_constants") {
|
|
sources = [
|
|
@@ -438,6 +459,7 @@ rtc_library("media_constants") {
|
|
}
|
|
|
|
rtc_library("turn_utils") {
|
|
+if (!build_with_mozilla) {
|
|
sources = [
|
|
"base/turn_utils.cc",
|
|
"base/turn_utils.h",
|
|
@@ -448,14 +470,17 @@ rtc_library("turn_utils") {
|
|
"../rtc_base/system:rtc_export",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("rid_description") {
|
|
+if (!build_with_mozilla) {
|
|
sources = [
|
|
"base/rid_description.cc",
|
|
"base/rid_description.h",
|
|
]
|
|
deps = [ ":codec" ]
|
|
}
|
|
+}
|
|
|
|
rtc_library("rtc_simulcast_encoder_adapter") {
|
|
visibility = [ "*" ]
|
|
@@ -537,6 +562,11 @@ rtc_library("rtc_internal_video_codecs") {
|
|
"//third_party/abseil-cpp/absl/container:inlined_vector",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
]
|
|
+ if (build_with_mozilla) {
|
|
+ deps -= [
|
|
+ "../test:fake_video_codecs",
|
|
+ ]
|
|
+ }
|
|
|
|
if (enable_libaom) {
|
|
defines += [ "RTC_USE_LIBAOM_AV1_ENCODER" ]
|
|
@@ -556,6 +586,13 @@ rtc_library("rtc_internal_video_codecs") {
|
|
"engine/internal_encoder_factory.cc",
|
|
"engine/internal_encoder_factory.h",
|
|
]
|
|
+ if (build_with_mozilla) {
|
|
+ sources -= [
|
|
+ "engine/fake_video_codec_factory.cc",
|
|
+ "engine/fake_video_codec_factory.h",
|
|
+ "engine/internal_encoder_factory.cc", # See Bug 1820869.
|
|
+ ]
|
|
+ }
|
|
}
|
|
|
|
rtc_library("rtc_audio_video") {
|
|
diff --git a/media/base/media_channel.h b/media/base/media_channel.h
|
|
index c85d6a3c51..e5718b4659 100644
|
|
--- a/media/base/media_channel.h
|
|
+++ b/media/base/media_channel.h
|
|
@@ -68,10 +68,6 @@ class Timing;
|
|
|
|
namespace webrtc {
|
|
class VideoFrame;
|
|
-
|
|
-webrtc::RTCError InvokeSetParametersCallback(SetParametersCallback& callback,
|
|
- RTCError error);
|
|
-
|
|
} // namespace webrtc
|
|
|
|
namespace cricket {
|
|
diff --git a/media/base/media_channel_impl.cc b/media/base/media_channel_impl.cc
|
|
index d41c9f9c0f..22b166a081 100644
|
|
--- a/media/base/media_channel_impl.cc
|
|
+++ b/media/base/media_channel_impl.cc
|
|
@@ -31,19 +31,6 @@
|
|
#include "modules/rtp_rtcp/include/report_block_data.h"
|
|
#include "rtc_base/checks.h"
|
|
|
|
-namespace webrtc {
|
|
-
|
|
-webrtc::RTCError InvokeSetParametersCallback(SetParametersCallback& callback,
|
|
- RTCError error) {
|
|
- if (callback) {
|
|
- std::move(callback)(error);
|
|
- callback = nullptr;
|
|
- }
|
|
- return error;
|
|
-}
|
|
-
|
|
-} // namespace webrtc
|
|
-
|
|
namespace cricket {
|
|
using webrtc::FrameDecryptorInterface;
|
|
using webrtc::FrameEncryptorInterface;
|
|
diff --git a/modules/audio_coding/BUILD.gn b/modules/audio_coding/BUILD.gn
|
|
index 573e7af58a..640aba6d40 100644
|
|
--- a/modules/audio_coding/BUILD.gn
|
|
+++ b/modules/audio_coding/BUILD.gn
|
|
@@ -358,7 +358,7 @@ rtc_library("webrtc_opus_wrapper") {
|
|
deps += [ rtc_opus_dir ]
|
|
public_configs = [ "//third_party/opus:opus_config" ]
|
|
} else if (build_with_mozilla) {
|
|
- include_dirs = [ getenv("DIST") + "/include/opus" ]
|
|
+ public_configs = [ "//third_party/opus:opus_config" ]
|
|
}
|
|
}
|
|
|
|
diff --git a/modules/audio_device/BUILD.gn b/modules/audio_device/BUILD.gn
|
|
index aa4d216b28..55c39a530f 100644
|
|
--- a/modules/audio_device/BUILD.gn
|
|
+++ b/modules/audio_device/BUILD.gn
|
|
@@ -30,6 +30,7 @@ rtc_source_set("audio_device_default") {
|
|
}
|
|
|
|
rtc_source_set("audio_device") {
|
|
+if (!build_with_mozilla) { # See Bug 1820869.
|
|
visibility = [ "*" ]
|
|
public_deps += [ # no-presubmit-check TODO(webrtc:8603)
|
|
":audio_device_api",
|
|
@@ -40,6 +41,7 @@ rtc_source_set("audio_device") {
|
|
":audio_device_impl",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_source_set("audio_device_api") {
|
|
visibility = [ "*" ]
|
|
@@ -55,6 +57,7 @@ rtc_library("audio_device_config") {
|
|
}
|
|
|
|
rtc_library("audio_device_buffer") {
|
|
+if (!build_with_mozilla) { # See Bug 1820869.
|
|
sources = [
|
|
"audio_device_buffer.cc",
|
|
"audio_device_buffer.h",
|
|
@@ -80,6 +83,7 @@ rtc_library("audio_device_buffer") {
|
|
"../../system_wrappers:metrics",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("audio_device_generic") {
|
|
sources = [
|
|
@@ -250,6 +254,7 @@ if (!build_with_chromium) {
|
|
# Contains default implementations of webrtc::AudioDeviceModule for Windows,
|
|
# Linux, Mac, iOS and Android.
|
|
rtc_library("audio_device_impl") {
|
|
+if (!build_with_mozilla) { # See Bug 1820869.
|
|
visibility = [ "*" ]
|
|
deps = [
|
|
":audio_device_buffer",
|
|
@@ -295,9 +300,9 @@ rtc_library("audio_device_impl") {
|
|
sources = [ "include/fake_audio_device.h" ]
|
|
|
|
if (build_with_mozilla) {
|
|
- sources += [
|
|
- "opensl/single_rw_fifo.cc",
|
|
- "opensl/single_rw_fifo.h",
|
|
+ sources -= [
|
|
+ "include/test_audio_device.cc",
|
|
+ "include/test_audio_device.h",
|
|
]
|
|
}
|
|
|
|
@@ -402,6 +407,7 @@ rtc_library("audio_device_impl") {
|
|
sources += [ "dummy/file_audio_device_factory.h" ]
|
|
}
|
|
}
|
|
+}
|
|
|
|
if (is_mac) {
|
|
rtc_source_set("audio_device_impl_frameworks") {
|
|
@@ -419,6 +425,7 @@ if (is_mac) {
|
|
}
|
|
}
|
|
|
|
+if (!build_with_mozilla) { # See Bug 1820869.
|
|
rtc_source_set("mock_audio_device") {
|
|
visibility = [ "*" ]
|
|
testonly = true
|
|
@@ -436,8 +443,10 @@ rtc_source_set("mock_audio_device") {
|
|
"../../test:test_support",
|
|
]
|
|
}
|
|
+}
|
|
|
|
-if (rtc_include_tests && !build_with_chromium) {
|
|
+# See Bug 1820869 for !build_with_mozilla.
|
|
+if (rtc_include_tests && !build_with_chromium && !build_with_mozilla) {
|
|
rtc_library("audio_device_unittests") {
|
|
testonly = true
|
|
|
|
diff --git a/modules/audio_processing/aec3/BUILD.gn b/modules/audio_processing/aec3/BUILD.gn
|
|
index a0bda5f494..65aa6a9542 100644
|
|
--- a/modules/audio_processing/aec3/BUILD.gn
|
|
+++ b/modules/audio_processing/aec3/BUILD.gn
|
|
@@ -261,14 +261,11 @@ if (current_cpu == "x86" || current_cpu == "x64") {
|
|
"vector_math_avx2.cc",
|
|
]
|
|
|
|
- if (is_win) {
|
|
- cflags = [ "/arch:AVX2" ]
|
|
- } else {
|
|
- cflags = [
|
|
- "-mavx2",
|
|
- "-mfma",
|
|
- ]
|
|
- }
|
|
+ cflags = [
|
|
+ "-mavx",
|
|
+ "-mavx2",
|
|
+ "-mfma",
|
|
+ ]
|
|
|
|
deps = [
|
|
":adaptive_fir_filter",
|
|
diff --git a/modules/audio_processing/aec3/adaptive_fir_filter_avx2.cc b/modules/audio_processing/aec3/adaptive_fir_filter_avx2.cc
|
|
index b6eda9f117..8d6e1cf3d7 100644
|
|
--- a/modules/audio_processing/aec3/adaptive_fir_filter_avx2.cc
|
|
+++ b/modules/audio_processing/aec3/adaptive_fir_filter_avx2.cc
|
|
@@ -8,7 +8,7 @@
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
-#include <immintrin.h>
|
|
+#include "common_audio/intrin.h"
|
|
|
|
#include "modules/audio_processing/aec3/adaptive_fir_filter.h"
|
|
#include "rtc_base/checks.h"
|
|
diff --git a/modules/audio_processing/agc2/rnn_vad/BUILD.gn b/modules/audio_processing/agc2/rnn_vad/BUILD.gn
|
|
index 025794d262..a23a7c15ce 100644
|
|
--- a/modules/audio_processing/agc2/rnn_vad/BUILD.gn
|
|
+++ b/modules/audio_processing/agc2/rnn_vad/BUILD.gn
|
|
@@ -121,7 +121,7 @@ rtc_source_set("vector_math") {
|
|
if (current_cpu == "x86" || current_cpu == "x64") {
|
|
rtc_library("vector_math_avx2") {
|
|
sources = [ "vector_math_avx2.cc" ]
|
|
- if (is_win) {
|
|
+ if (is_win && !build_with_mozilla) {
|
|
cflags = [ "/arch:AVX2" ]
|
|
} else {
|
|
cflags = [
|
|
diff --git a/modules/desktop_capture/BUILD.gn b/modules/desktop_capture/BUILD.gn
|
|
index 634ef53920..059a4dadc1 100644
|
|
--- a/modules/desktop_capture/BUILD.gn
|
|
+++ b/modules/desktop_capture/BUILD.gn
|
|
@@ -346,37 +346,12 @@ rtc_library("desktop_capture") {
|
|
]
|
|
deps += [ ":desktop_capture_objc" ]
|
|
}
|
|
-
|
|
- if (build_with_mozilla) {
|
|
- sources += [
|
|
- "desktop_device_info.cc",
|
|
- "desktop_device_info.h",
|
|
- ]
|
|
- if (is_win) {
|
|
- sources += [
|
|
- "app_capturer_win.cc",
|
|
- "win/desktop_device_info_win.cc",
|
|
- "win/win_shared.cc",
|
|
- ]
|
|
- }
|
|
- }
|
|
if (rtc_use_x11_extensions || rtc_use_pipewire) {
|
|
sources += [
|
|
"mouse_cursor_monitor_linux.cc",
|
|
"screen_capturer_linux.cc",
|
|
"window_capturer_linux.cc",
|
|
]
|
|
-
|
|
- if (build_with_mozilla && (is_linux || is_chromeos)) {
|
|
- sources += [
|
|
- "app_capturer_linux.cc",
|
|
- "linux/x11/app_capturer_x11.cc",
|
|
- "linux/x11/desktop_device_info_linux.cc",
|
|
- "linux/x11/desktop_device_info_linux.h",
|
|
- "linux/x11/shared_x_util.cc",
|
|
- "linux/x11/shared_x_util.h",
|
|
- ]
|
|
- }
|
|
}
|
|
|
|
if (rtc_use_x11_extensions) {
|
|
@@ -538,9 +513,7 @@ rtc_library("desktop_capture") {
|
|
deps += [ "../../rtc_base:sanitizer" ]
|
|
}
|
|
|
|
- if (!build_with_mozilla) {
|
|
- deps += [ "//third_party/libyuv" ]
|
|
- }
|
|
+ deps += [ "//third_party/libyuv" ]
|
|
|
|
if (use_desktop_capture_differ_sse2) {
|
|
deps += [ ":desktop_capture_differ_sse2" ]
|
|
diff --git a/modules/portal/BUILD.gn b/modules/portal/BUILD.gn
|
|
index e2b2717c89..aff8609b54 100644
|
|
--- a/modules/portal/BUILD.gn
|
|
+++ b/modules/portal/BUILD.gn
|
|
@@ -11,6 +11,7 @@ import("//tools/generate_stubs/rules.gni")
|
|
import("../../webrtc.gni")
|
|
|
|
if ((is_linux || is_chromeos) && rtc_use_pipewire) {
|
|
+if (!build_with_mozilla) {
|
|
pkg_config("gio") {
|
|
packages = [
|
|
"gio-2.0",
|
|
@@ -88,6 +89,12 @@ if ((is_linux || is_chromeos) && rtc_use_pipewire) {
|
|
defines += [ "WEBRTC_USE_GIO" ]
|
|
}
|
|
}
|
|
+} else {
|
|
+ config("pipewire_all") {
|
|
+ }
|
|
+ config("pipewire_config") {
|
|
+ }
|
|
+}
|
|
|
|
rtc_library("portal") {
|
|
sources = [
|
|
@@ -120,5 +127,22 @@ if ((is_linux || is_chromeos) && rtc_use_pipewire) {
|
|
|
|
deps += [ ":pipewire_stubs" ]
|
|
}
|
|
+
|
|
+ if (build_with_mozilla) {
|
|
+ configs -= [
|
|
+ ":gio",
|
|
+ ":pipewire",
|
|
+ ":pipewire_config",
|
|
+ ]
|
|
+ deps -= [ ":pipewire_stubs" ]
|
|
+ defines -= [ "WEBRTC_DLOPEN_PIPEWIRE" ]
|
|
+ public_deps = [
|
|
+ "//third_party/pipewire",
|
|
+ "//third_party/drm",
|
|
+ "//third_party/gbm",
|
|
+ "//third_party/libepoxy"
|
|
+ ]
|
|
+ }
|
|
}
|
|
}
|
|
+
|
|
diff --git a/modules/utility/BUILD.gn b/modules/utility/BUILD.gn
|
|
index 8cefe5653c..b8d75865f7 100644
|
|
--- a/modules/utility/BUILD.gn
|
|
+++ b/modules/utility/BUILD.gn
|
|
@@ -25,5 +25,9 @@ rtc_source_set("utility") {
|
|
"../../rtc_base:platform_thread",
|
|
"../../rtc_base/system:arch",
|
|
]
|
|
+
|
|
+ if (build_with_mozilla) {
|
|
+ sources -= [ "source/jvm_android.cc" ]
|
|
+ }
|
|
}
|
|
}
|
|
diff --git a/modules/video_capture/BUILD.gn b/modules/video_capture/BUILD.gn
|
|
index c15dcedc2a..1a737e1596 100644
|
|
--- a/modules/video_capture/BUILD.gn
|
|
+++ b/modules/video_capture/BUILD.gn
|
|
@@ -129,21 +129,12 @@ if (!build_with_chromium || is_linux || is_chromeos) {
|
|
"strmiids.lib",
|
|
"user32.lib",
|
|
]
|
|
-
|
|
- if (build_with_mozilla) {
|
|
- sources += [
|
|
- "windows/BaseFilter.cpp",
|
|
- "windows/BaseInputPin.cpp",
|
|
- "windows/BasePin.cpp",
|
|
- "windows/MediaType.cpp",
|
|
- ]
|
|
- }
|
|
}
|
|
if (is_fuchsia) {
|
|
sources += [ "video_capture_factory_null.cc" ]
|
|
}
|
|
|
|
- if (build_with_mozilla && is_android) {
|
|
+ if (!build_with_mozilla && is_android) {
|
|
include_dirs = [
|
|
"/config/external/nspr",
|
|
"/nsprpub/lib/ds",
|
|
diff --git a/rtc_base/BUILD.gn b/rtc_base/BUILD.gn
|
|
index 19d5c60e1c..b1e53c16c7 100644
|
|
--- a/rtc_base/BUILD.gn
|
|
+++ b/rtc_base/BUILD.gn
|
|
@@ -312,6 +312,7 @@ rtc_library("sample_counter") {
|
|
]
|
|
}
|
|
|
|
+if (!build_with_mozilla) { # See Bug 1820869.
|
|
rtc_library("timestamp_aligner") {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
@@ -325,6 +326,7 @@ rtc_library("timestamp_aligner") {
|
|
"system:rtc_export",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("zero_memory") {
|
|
visibility = [ "*" ]
|
|
@@ -806,7 +808,9 @@ rtc_library("rtc_json") {
|
|
":stringutils",
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
+if (!build_with_mozilla) {
|
|
all_dependent_configs = [ "//third_party/jsoncpp:jsoncpp_config" ]
|
|
+}
|
|
if (rtc_build_json) {
|
|
deps += [ "//third_party/jsoncpp" ]
|
|
} else {
|
|
@@ -1166,6 +1170,7 @@ if (!build_with_chromium) {
|
|
}
|
|
|
|
rtc_library("network") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"network.cc",
|
|
@@ -1203,16 +1208,20 @@ rtc_library("network") {
|
|
deps += [ ":win32" ]
|
|
}
|
|
}
|
|
+}
|
|
|
|
rtc_library("socket_address_pair") {
|
|
+if (!build_with_mozilla) {
|
|
sources = [
|
|
"socket_address_pair.cc",
|
|
"socket_address_pair.h",
|
|
]
|
|
deps = [ ":socket_address" ]
|
|
}
|
|
+}
|
|
|
|
rtc_library("net_helper") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"net_helper.cc",
|
|
@@ -1223,8 +1232,10 @@ rtc_library("net_helper") {
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("socket_adapters") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"socket_adapters.cc",
|
|
@@ -1243,6 +1254,7 @@ rtc_library("socket_adapters") {
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("network_route") {
|
|
sources = [
|
|
@@ -1257,6 +1269,7 @@ rtc_library("network_route") {
|
|
}
|
|
|
|
rtc_library("async_tcp_socket") {
|
|
+if (!build_with_mozilla) {
|
|
sources = [
|
|
"async_tcp_socket.cc",
|
|
"async_tcp_socket.h",
|
|
@@ -1274,8 +1287,10 @@ rtc_library("async_tcp_socket") {
|
|
"network:sent_packet",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("async_udp_socket") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"async_udp_socket.cc",
|
|
@@ -1300,8 +1315,10 @@ rtc_library("async_udp_socket") {
|
|
"system:no_unique_address",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("async_packet_socket") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"async_packet_socket.cc",
|
|
@@ -1324,6 +1341,7 @@ rtc_library("async_packet_socket") {
|
|
"//third_party/abseil-cpp/absl/functional:any_invocable",
|
|
]
|
|
}
|
|
+}
|
|
|
|
if (rtc_include_tests) {
|
|
rtc_library("async_packet_socket_unittest") {
|
|
@@ -1396,6 +1414,7 @@ rtc_library("data_rate_limiter") {
|
|
}
|
|
|
|
rtc_library("unique_id_generator") {
|
|
+if (!build_with_mozilla) {
|
|
sources = [
|
|
"unique_id_generator.cc",
|
|
"unique_id_generator.h",
|
|
@@ -1410,6 +1429,7 @@ rtc_library("unique_id_generator") {
|
|
"//third_party/abseil-cpp/absl/strings:string_view",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_library("crc32") {
|
|
sources = [
|
|
@@ -1444,6 +1464,7 @@ rtc_library("stream") {
|
|
}
|
|
|
|
rtc_library("rtc_certificate_generator") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"rtc_certificate_generator.cc",
|
|
@@ -1458,6 +1479,7 @@ rtc_library("rtc_certificate_generator") {
|
|
"//third_party/abseil-cpp/absl/functional:any_invocable",
|
|
]
|
|
}
|
|
+}
|
|
|
|
rtc_source_set("ssl_header") {
|
|
visibility = [ "*" ]
|
|
@@ -1514,6 +1536,7 @@ rtc_library("crypto_random") {
|
|
}
|
|
|
|
rtc_library("ssl") {
|
|
+if (!build_with_mozilla) {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
"openssl_key_pair.cc",
|
|
@@ -1587,6 +1610,7 @@ rtc_library("ssl") {
|
|
deps += [ ":win32" ]
|
|
}
|
|
}
|
|
+}
|
|
|
|
rtc_library("ssl_adapter") {
|
|
visibility = [ "*" ]
|
|
@@ -2205,7 +2229,7 @@ if (rtc_include_tests) {
|
|
}
|
|
}
|
|
|
|
-if (is_android) {
|
|
+if (is_android && !build_with_mozilla) {
|
|
rtc_android_library("base_java") {
|
|
visibility = [ "*" ]
|
|
sources = [
|
|
diff --git a/rtc_base/system/BUILD.gn b/rtc_base/system/BUILD.gn
|
|
index b18114f107..3ca6994c81 100644
|
|
--- a/rtc_base/system/BUILD.gn
|
|
+++ b/rtc_base/system/BUILD.gn
|
|
@@ -101,7 +101,7 @@ if (is_mac || is_ios) {
|
|
rtc_source_set("warn_current_thread_is_deadlocked") {
|
|
sources = [ "warn_current_thread_is_deadlocked.h" ]
|
|
deps = []
|
|
- if (is_android && !build_with_chromium) {
|
|
+ if (is_android && (!build_with_chromium && !build_with_mozilla)) {
|
|
sources += [ "warn_current_thread_is_deadlocked.cc" ]
|
|
deps += [
|
|
"..:logging",
|
|
diff --git a/test/BUILD.gn b/test/BUILD.gn
|
|
index 598c196bad..18179de94f 100644
|
|
--- a/test/BUILD.gn
|
|
+++ b/test/BUILD.gn
|
|
@@ -230,6 +230,7 @@ rtc_library("audio_test_common") {
|
|
]
|
|
}
|
|
|
|
+if (!build_with_mozilla) {
|
|
if (!build_with_chromium) {
|
|
if (is_mac || is_ios) {
|
|
rtc_library("video_test_mac") {
|
|
@@ -283,8 +284,12 @@ if (!build_with_chromium) {
|
|
}
|
|
}
|
|
}
|
|
+}
|
|
|
|
rtc_library("rtp_test_utils") {
|
|
+ if (build_with_mozilla) {
|
|
+ sources = []
|
|
+ } else {
|
|
testonly = true
|
|
sources = [
|
|
"rtcp_packet_parser.cc",
|
|
@@ -294,6 +299,7 @@ rtc_library("rtp_test_utils") {
|
|
"rtp_file_writer.cc",
|
|
"rtp_file_writer.h",
|
|
]
|
|
+ }
|
|
|
|
deps = [
|
|
"../api:array_view",
|
|
@@ -516,7 +522,9 @@ rtc_library("video_frame_writer") {
|
|
]
|
|
|
|
if (!is_ios) {
|
|
+ if (!build_with_mozilla) {
|
|
deps += [ "//third_party:jpeg" ]
|
|
+ }
|
|
sources += [ "testsupport/jpeg_frame_writer.cc" ]
|
|
} else {
|
|
sources += [ "testsupport/jpeg_frame_writer_ios.cc" ]
|
|
@@ -1300,6 +1308,7 @@ if (!build_with_chromium) {
|
|
}
|
|
}
|
|
|
|
+if (!build_with_mozilla) {
|
|
if (!build_with_chromium && is_android) {
|
|
rtc_android_library("native_test_java") {
|
|
testonly = true
|
|
@@ -1342,6 +1351,7 @@ if (!build_with_chromium && is_android) {
|
|
sources = [ "android/org/webrtc/native_test/NativeTestWebrtc.java" ]
|
|
}
|
|
}
|
|
+}
|
|
|
|
rtc_library("call_config_utils") {
|
|
testonly = true
|
|
diff --git a/video/BUILD.gn b/video/BUILD.gn
|
|
index 7cca46263c..ee2b94ed45 100644
|
|
--- a/video/BUILD.gn
|
|
+++ b/video/BUILD.gn
|
|
@@ -17,7 +17,7 @@ rtc_library("video_stream_encoder_interface") {
|
|
"../api:fec_controller_api",
|
|
"../api:rtc_error",
|
|
"../api:rtp_parameters",
|
|
- "../api:rtp_sender_interface",
|
|
+ "../api:rtp_sender_setparameters_callback",
|
|
"../api:scoped_refptr",
|
|
"../api/adaptation:resource_adaptation_api",
|
|
"../api/units:data_rate",
|
|
@@ -408,7 +408,7 @@ rtc_library("video_stream_encoder_impl") {
|
|
":video_stream_encoder_interface",
|
|
"../api:field_trials_view",
|
|
"../api:rtp_parameters",
|
|
- "../api:rtp_sender_interface",
|
|
+ "../api:rtp_sender_setparameters_callback",
|
|
"../api:sequence_checker",
|
|
"../api/adaptation:resource_adaptation_api",
|
|
"../api/environment",
|
|
diff --git a/webrtc.gni b/webrtc.gni
|
|
index d77a4310f2..29286c5b95 100644
|
|
--- a/webrtc.gni
|
|
+++ b/webrtc.gni
|
|
@@ -35,6 +35,11 @@ if (is_mac) {
|
|
import("//build/config/mac/rules.gni")
|
|
}
|
|
|
|
+if (is_android) {
|
|
+ import("//build/config/android/config.gni")
|
|
+ import("//build/config/android/rules.gni")
|
|
+}
|
|
+
|
|
if (is_fuchsia) {
|
|
import("//build/config/fuchsia/config.gni")
|
|
}
|
|
@@ -46,6 +51,11 @@ if (build_with_chromium) {
|
|
# This declare_args is separated from the next one because args declared
|
|
# in this one, can be read from the next one (args defined in the same
|
|
# declare_args cannot be referenced in that scope).
|
|
+declare_args() {
|
|
+ # Enable to use the Mozilla internal settings.
|
|
+ build_with_mozilla = true
|
|
+}
|
|
+
|
|
declare_args() {
|
|
# Setting this to true will make RTC_EXPORT (see rtc_base/system/rtc_export.h)
|
|
# expand to code that will manage symbols visibility.
|
|
@@ -92,7 +102,7 @@ declare_args() {
|
|
# will tell the pre-processor to remove the default definition of the
|
|
# SystemTimeNanos() which is defined in rtc_base/system_time.cc. In
|
|
# that case a new implementation needs to be provided.
|
|
- rtc_exclude_system_time = build_with_chromium
|
|
+ rtc_exclude_system_time = build_with_chromium || build_with_mozilla
|
|
|
|
# Setting this to false will require the API user to pass in their own
|
|
# SSLCertificateVerifier to verify the certificates presented from a
|
|
@@ -115,7 +125,7 @@ declare_args() {
|
|
|
|
# Used to specify an external OpenSSL include path when not compiling the
|
|
# library that comes with WebRTC (i.e. rtc_build_ssl == 0).
|
|
- rtc_ssl_root = ""
|
|
+ rtc_ssl_root = "unused"
|
|
|
|
# Enable when an external authentication mechanism is used for performing
|
|
# packet authentication for RTP packets instead of libsrtp.
|
|
@@ -129,13 +139,13 @@ declare_args() {
|
|
rtc_exclude_audio_processing_module = false
|
|
|
|
# Set this to false to skip building examples.
|
|
- rtc_build_examples = true
|
|
+ rtc_build_examples = false
|
|
|
|
# Set this to false to skip building tools.
|
|
- rtc_build_tools = true
|
|
+ rtc_build_tools = false
|
|
|
|
# Set this to false to skip building code that requires X11.
|
|
- rtc_use_x11 = ozone_platform_x11
|
|
+ rtc_use_x11 = use_x11
|
|
|
|
# Set this to use PipeWire on the Wayland display server.
|
|
# By default it's only enabled on desktop Linux (excludes ChromeOS) and
|
|
@@ -146,9 +156,6 @@ declare_args() {
|
|
# Set this to link PipeWire and required libraries directly instead of using the dlopen.
|
|
rtc_link_pipewire = false
|
|
|
|
- # Enable to use the Mozilla internal settings.
|
|
- build_with_mozilla = false
|
|
-
|
|
# Experimental: enable use of Android AAudio which requires Android SDK 26 or above
|
|
# and NDK r16 or above.
|
|
rtc_enable_android_aaudio = false
|
|
@@ -290,7 +297,7 @@ declare_args() {
|
|
rtc_build_json = !build_with_mozilla
|
|
rtc_build_libsrtp = !build_with_mozilla
|
|
rtc_build_libvpx = !build_with_mozilla
|
|
- rtc_libvpx_build_vp9 = !build_with_mozilla
|
|
+ rtc_libvpx_build_vp9 = true
|
|
rtc_build_opus = !build_with_mozilla
|
|
rtc_build_ssl = !build_with_mozilla
|
|
|
|
@@ -299,7 +306,7 @@ declare_args() {
|
|
|
|
# Chromium uses its own IO handling, so the internal ADM is only built for
|
|
# standalone WebRTC.
|
|
- rtc_include_internal_audio_device = !build_with_chromium
|
|
+ rtc_include_internal_audio_device = !build_with_chromium && !build_with_mozilla
|
|
|
|
# Set this to true to enable the avx2 support in webrtc.
|
|
# TODO: Make sure that AVX2 works also for non-clang compilers.
|
|
@@ -339,6 +346,9 @@ declare_args() {
|
|
rtc_enable_grpc = rtc_enable_protobuf && (is_linux || is_mac)
|
|
}
|
|
|
|
+# Enable liboam only on non-mozilla builds.
|
|
+enable_libaom = !build_with_mozilla
|
|
+
|
|
# Make it possible to provide custom locations for some libraries (move these
|
|
# up into declare_args should we need to actually use them for the GN build).
|
|
rtc_libvpx_dir = "//third_party/libvpx"
|
|
@@ -1205,7 +1215,7 @@ if (is_mac || is_ios) {
|
|
}
|
|
}
|
|
|
|
-if (is_android) {
|
|
+if (is_android && !build_with_mozilla) {
|
|
template("rtc_android_library") {
|
|
android_library(target_name) {
|
|
forward_variables_from(invoker,
|