summaryrefslogtreecommitdiffstats
path: root/third_party/libwebrtc/pc/connection_context.cc
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/libwebrtc/pc/connection_context.cc')
-rw-r--r--third_party/libwebrtc/pc/connection_context.cc21
1 files changed, 14 insertions, 7 deletions
diff --git a/third_party/libwebrtc/pc/connection_context.cc b/third_party/libwebrtc/pc/connection_context.cc
index f436e27c0a..df4522bf13 100644
--- a/third_party/libwebrtc/pc/connection_context.cc
+++ b/third_party/libwebrtc/pc/connection_context.cc
@@ -14,9 +14,11 @@
#include <utility>
#include <vector>
+#include "api/environment/environment.h"
#include "api/transport/field_trial_based_config.h"
#include "media/base/media_engine.h"
#include "media/sctp/sctp_transport_factory.h"
+#include "pc/media_factory.h"
#include "rtc_base/helpers.h"
#include "rtc_base/internal/default_socket_server.h"
#include "rtc_base/socket_server.h"
@@ -77,12 +79,14 @@ std::unique_ptr<SctpTransportFactoryInterface> MaybeCreateSctpFactory(
// Static
rtc::scoped_refptr<ConnectionContext> ConnectionContext::Create(
+ const Environment& env,
PeerConnectionFactoryDependencies* dependencies) {
return rtc::scoped_refptr<ConnectionContext>(
- new ConnectionContext(dependencies));
+ new ConnectionContext(env, dependencies));
}
ConnectionContext::ConnectionContext(
+ const Environment& env,
PeerConnectionFactoryDependencies* dependencies)
: network_thread_(MaybeStartNetworkThread(dependencies->network_thread,
owned_socket_factory_,
@@ -96,18 +100,21 @@ ConnectionContext::ConnectionContext(
}),
signaling_thread_(MaybeWrapThread(dependencies->signaling_thread,
wraps_current_thread_)),
- trials_(dependencies->trials ? std::move(dependencies->trials)
- : std::make_unique<FieldTrialBasedConfig>()),
- media_engine_(std::move(dependencies->media_engine)),
+ env_(env),
+ media_engine_(
+ dependencies->media_factory != nullptr
+ ? dependencies->media_factory->CreateMediaEngine(env_,
+ *dependencies)
+ : nullptr),
network_monitor_factory_(
std::move(dependencies->network_monitor_factory)),
default_network_manager_(std::move(dependencies->network_manager)),
- call_factory_(std::move(dependencies->call_factory)),
+ call_factory_(std::move(dependencies->media_factory)),
default_socket_factory_(std::move(dependencies->packet_socket_factory)),
sctp_factory_(
MaybeCreateSctpFactory(std::move(dependencies->sctp_factory),
network_thread(),
- *trials_.get())),
+ env_.field_trials())),
use_rtx_(true) {
RTC_DCHECK_RUN_ON(signaling_thread_);
RTC_DCHECK(!(default_network_manager_ && network_monitor_factory_))
@@ -150,7 +157,7 @@ ConnectionContext::ConnectionContext(
// If network_monitor_factory_ is non-null, it will be used to create a
// network monitor while on the network thread.
default_network_manager_ = std::make_unique<rtc::BasicNetworkManager>(
- network_monitor_factory_.get(), socket_factory, &field_trials());
+ network_monitor_factory_.get(), socket_factory, &env_.field_trials());
}
if (!default_socket_factory_) {
default_socket_factory_ =