Set ChannelReceive transport at construction time.

Followup to cl https://webrtc-review.googlesource.com/c/src/+/103640.
Set the rtcp_send_transport at construction time, delete
RegisterTransport, and the proxying of transport methods.

In addition, delete the unused RtcpRtpStats argument from the
constructor.

Bug: webrtc:9801
Change-Id: I80f25bc08dc2130386053568ddce4ef91654caeb
Reviewed-on: https://webrtc-review.googlesource.com/c/103803
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25010}
diff --git a/call/call_perf_tests.cc b/call/call_perf_tests.cc
index 8e91665..8fcd566 100644
--- a/call/call_perf_tests.cc
+++ b/call/call_perf_tests.cc
@@ -39,6 +39,7 @@
 #include "test/frame_generator.h"
 #include "test/frame_generator_capturer.h"
 #include "test/gtest.h"
+#include "test/null_transport.h"
 #include "test/rtp_rtcp_observer.h"
 #include "test/single_threaded_task_queue.h"
 #include "test/testsupport/fileutils.h"
@@ -163,6 +164,7 @@
   std::unique_ptr<test::PacketTransport> audio_send_transport;
   std::unique_ptr<test::PacketTransport> video_send_transport;
   std::unique_ptr<test::PacketTransport> receive_transport;
+  test::NullTransport rtcp_send_transport;
 
   AudioSendStream* audio_send_stream;
   AudioReceiveStream* audio_receive_stream;
@@ -250,6 +252,7 @@
     AudioReceiveStream::Config audio_recv_config;
     audio_recv_config.rtp.remote_ssrc = kAudioSendSsrc;
     audio_recv_config.rtp.local_ssrc = kAudioRecvSsrc;
+    audio_recv_config.rtcp_send_transport = &rtcp_send_transport;
     audio_recv_config.sync_group = kSyncGroup;
     audio_recv_config.decoder_factory = audio_decoder_factory_;
     audio_recv_config.decoder_map = {
diff --git a/call/call_unittest.cc b/call/call_unittest.cc
index 1084bcf..8ae0400 100644
--- a/call/call_unittest.cc
+++ b/call/call_unittest.cc
@@ -72,7 +72,9 @@
 TEST(CallTest, CreateDestroy_AudioReceiveStream) {
   CallHelper call;
   AudioReceiveStream::Config config;
+  MockTransport rtcp_send_transport;
   config.rtp.remote_ssrc = 42;
+  config.rtcp_send_transport = &rtcp_send_transport;
   config.decoder_factory =
       new rtc::RefCountedObject<webrtc::MockAudioDecoderFactory>();
   AudioReceiveStream* stream = call->CreateAudioReceiveStream(config);
@@ -105,6 +107,8 @@
 TEST(CallTest, CreateDestroy_AudioReceiveStreams) {
   CallHelper call;
   AudioReceiveStream::Config config;
+  MockTransport rtcp_send_transport;
+  config.rtcp_send_transport = &rtcp_send_transport;
   config.decoder_factory =
       new rtc::RefCountedObject<webrtc::MockAudioDecoderFactory>();
   std::list<AudioReceiveStream*> streams;
@@ -129,8 +133,10 @@
 TEST(CallTest, CreateDestroy_AssociateAudioSendReceiveStreams_RecvFirst) {
   CallHelper call;
   AudioReceiveStream::Config recv_config;
+  MockTransport rtcp_send_transport;
   recv_config.rtp.remote_ssrc = 42;
   recv_config.rtp.local_ssrc = 777;
+  recv_config.rtcp_send_transport = &rtcp_send_transport;
   recv_config.decoder_factory =
       new rtc::RefCountedObject<webrtc::MockAudioDecoderFactory>();
   AudioReceiveStream* recv_stream = call->CreateAudioReceiveStream(recv_config);
@@ -160,8 +166,10 @@
   EXPECT_NE(send_stream, nullptr);
 
   AudioReceiveStream::Config recv_config;
+  MockTransport rtcp_send_transport;
   recv_config.rtp.remote_ssrc = 42;
   recv_config.rtp.local_ssrc = 777;
+  recv_config.rtcp_send_transport = &rtcp_send_transport;
   recv_config.decoder_factory =
       new rtc::RefCountedObject<webrtc::MockAudioDecoderFactory>();
   AudioReceiveStream* recv_stream = call->CreateAudioReceiveStream(recv_config);