Propagate Environment to audio RtpRtcp modules
Bug: webrtc:362762208
Change-Id: I5be383dd709958cbefb06fe489c96e5ba6891bef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361143
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Jakob Ivarsson‎ <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42904}
diff --git a/audio/channel_receive.cc b/audio/channel_receive.cc
index 64b41ab..e403cfa 100644
--- a/audio/channel_receive.cc
+++ b/audio/channel_receive.cc
@@ -563,12 +563,10 @@
rtp_receive_statistics_->EnableRetransmitDetection(remote_ssrc_, true);
RtpRtcpInterface::Configuration configuration;
- configuration.clock = &env_.clock();
configuration.audio = true;
configuration.receiver_only = true;
configuration.outgoing_transport = rtcp_send_transport;
configuration.receive_statistics = rtp_receive_statistics_.get();
- configuration.event_log = &env_.event_log();
configuration.local_media_ssrc = local_ssrc;
configuration.rtcp_packet_type_counter_observer = this;
configuration.non_sender_rtt_measurement = enable_non_sender_rtt;
@@ -576,7 +574,7 @@
if (frame_transformer)
InitFrameTransformerDelegate(std::move(frame_transformer));
- rtp_rtcp_ = ModuleRtpRtcpImpl2::Create(configuration);
+ rtp_rtcp_ = std::make_unique<ModuleRtpRtcpImpl2>(env_, configuration);
rtp_rtcp_->SetRemoteSSRC(remote_ssrc_);
// Ensure that RTCP is enabled for the created channel.
diff --git a/audio/channel_send.cc b/audio/channel_send.cc
index 888dfaf..18081e3 100644
--- a/audio/channel_send.cc
+++ b/audio/channel_send.cc
@@ -488,13 +488,10 @@
configuration.report_block_data_observer = this;
configuration.network_link_rtcp_observer =
transport_controller->GetRtcpObserver();
- configuration.clock = &env_.clock();
configuration.audio = true;
configuration.outgoing_transport = rtp_transport;
configuration.paced_sender = rtp_packet_pacer_proxy_.get();
-
- configuration.event_log = &env_.event_log();
configuration.rtt_stats = rtcp_rtt_stats;
if (env_.field_trials().IsDisabled("WebRTC-DisableRtxRateLimiter")) {
configuration.retransmission_rate_limiter =
@@ -503,15 +500,13 @@
configuration.extmap_allow_mixed = extmap_allow_mixed;
configuration.rtcp_report_interval_ms = rtcp_report_interval_ms;
configuration.rtcp_packet_type_counter_observer = this;
-
configuration.local_media_ssrc = ssrc;
- configuration.field_trials = &env_.field_trials();
- rtp_rtcp_ = ModuleRtpRtcpImpl2::Create(configuration);
+ rtp_rtcp_ = std::make_unique<ModuleRtpRtcpImpl2>(env_, configuration);
rtp_rtcp_->SetSendingMediaStatus(false);
- rtp_sender_audio_ = std::make_unique<RTPSenderAudio>(configuration.clock,
- rtp_rtcp_->RtpSender());
+ rtp_sender_audio_ =
+ std::make_unique<RTPSenderAudio>(&env_.clock(), rtp_rtcp_->RtpSender());
// Ensure that RTCP is enabled by default for the created channel.
rtp_rtcp_->SetRTCPStatus(RtcpMode::kCompound);
diff --git a/audio/voip/audio_channel.cc b/audio/voip/audio_channel.cc
index 4d72bed..7416bf5 100644
--- a/audio/voip/audio_channel.cc
+++ b/audio/voip/audio_channel.cc
@@ -39,14 +39,13 @@
receive_statistics_ = ReceiveStatistics::Create(&env.clock());
RtpRtcpInterface::Configuration rtp_config;
- rtp_config.clock = &env.clock();
rtp_config.audio = true;
rtp_config.receive_statistics = receive_statistics_.get();
rtp_config.rtcp_report_interval_ms = kRtcpReportIntervalMs;
rtp_config.outgoing_transport = transport;
rtp_config.local_media_ssrc = local_ssrc;
- rtp_rtcp_ = ModuleRtpRtcpImpl2::Create(rtp_config);
+ rtp_rtcp_ = std::make_unique<ModuleRtpRtcpImpl2>(env, rtp_config);
rtp_rtcp_->SetSendingMediaStatus(false);
rtp_rtcp_->SetRTCPStatus(RtcpMode::kCompound);
diff --git a/audio/voip/test/audio_egress_unittest.cc b/audio/voip/test/audio_egress_unittest.cc
index 166938a..a5b098e 100644
--- a/audio/voip/test/audio_egress_unittest.cc
+++ b/audio/voip/test/audio_egress_unittest.cc
@@ -34,16 +34,15 @@
using ::testing::NiceMock;
using ::testing::Unused;
-std::unique_ptr<ModuleRtpRtcpImpl2> CreateRtpStack(Clock* clock,
+std::unique_ptr<ModuleRtpRtcpImpl2> CreateRtpStack(const Environment& env,
Transport* transport,
uint32_t remote_ssrc) {
RtpRtcpInterface::Configuration rtp_config;
- rtp_config.clock = clock;
rtp_config.audio = true;
rtp_config.rtcp_report_interval_ms = 5000;
rtp_config.outgoing_transport = transport;
rtp_config.local_media_ssrc = remote_ssrc;
- auto rtp_rtcp = ModuleRtpRtcpImpl2::Create(rtp_config);
+ auto rtp_rtcp = std::make_unique<ModuleRtpRtcpImpl2>(env, rtp_config);
rtp_rtcp->SetSendingMediaStatus(false);
rtp_rtcp->SetRTCPStatus(RtcpMode::kCompound);
return rtp_rtcp;
@@ -68,8 +67,7 @@
// Prepare test on audio egress by using PCMu codec with specific
// sequence number and its status to be running.
void SetUp() override {
- rtp_rtcp_ =
- CreateRtpStack(time_controller_.GetClock(), &transport_, kRemoteSsrc);
+ rtp_rtcp_ = CreateRtpStack(env_, &transport_, kRemoteSsrc);
egress_ = std::make_unique<AudioEgress>(env_, rtp_rtcp_.get());
constexpr int kPcmuPayload = 0;
egress_->SetEncoder(kPcmuPayload, kPcmuFormat,
diff --git a/audio/voip/test/audio_ingress_unittest.cc b/audio/voip/test/audio_ingress_unittest.cc
index d4a9b7f..5dc1f62 100644
--- a/audio/voip/test/audio_ingress_unittest.cc
+++ b/audio/voip/test/audio_ingress_unittest.cc
@@ -46,13 +46,12 @@
ReceiveStatistics::Create(time_controller_.GetClock());
RtpRtcpInterface::Configuration rtp_config;
- rtp_config.clock = time_controller_.GetClock();
rtp_config.audio = true;
rtp_config.receive_statistics = receive_statistics_.get();
rtp_config.rtcp_report_interval_ms = 5000;
rtp_config.outgoing_transport = &transport_;
rtp_config.local_media_ssrc = 0xdeadc0de;
- rtp_rtcp_ = ModuleRtpRtcpImpl2::Create(rtp_config);
+ rtp_rtcp_ = std::make_unique<ModuleRtpRtcpImpl2>(env_, rtp_config);
rtp_rtcp_->SetSendingMediaStatus(false);
rtp_rtcp_->SetRTCPStatus(RtcpMode::kCompound);