Chromium Code Reviews| Index: webrtc/test/call_test.cc |
| diff --git a/webrtc/test/call_test.cc b/webrtc/test/call_test.cc |
| index 244b79b5c37ed4b072af999f3f7e31da35faacca..1dafd5447752732eb3f9e1a07ca547ff574f271e 100644 |
| --- a/webrtc/test/call_test.cc |
| +++ b/webrtc/test/call_test.cc |
| @@ -26,29 +26,6 @@ namespace { |
| const int kVideoRotationRtpExtensionId = 4; |
| } |
| -void CallTest::PayloadDemuxer::SetReceiver(PacketReceiver* receiver) { |
| - receiver_ = receiver; |
| -} |
| - |
| -PacketReceiver::DeliveryStatus CallTest::PayloadDemuxer::DeliverPacket( |
| - MediaType media_type, |
| - const uint8_t* packet, |
| - size_t length, |
| - const PacketTime& packet_time) { |
| - if (media_type == MediaType::ANY) { |
| - // This simplistic demux logic will not make much sense for RTCP |
| - // packets, but it seems that doesn't matter. |
| - RTC_CHECK_GE(length, 2); |
| - uint8_t pt = packet[1] & 0x7f; |
| - if (pt == kFakeVideoSendPayloadType || pt == kFlexfecPayloadType) { |
| - media_type = MediaType::VIDEO; |
| - } else { |
| - media_type = MediaType::AUDIO; |
| - } |
| - } |
| - return receiver_->DeliverPacket(media_type, packet, length, packet_time); |
| -} |
| - |
| CallTest::CallTest() |
| : clock_(Clock::GetRealTimeClock()), |
| video_send_config_(nullptr), |
| @@ -98,20 +75,8 @@ void CallTest::RunBaseTest(BaseTest* test) { |
| send_transport_.reset(test->CreateSendTransport(sender_call_.get())); |
| if (test->ShouldCreateReceivers()) { |
| - // For tests using only video or only audio, we rely on each test |
| - // configuring the underlying FakeNetworkPipe with the right media |
| - // type. But for tests sending both video and audio over the same |
| - // FakeNetworkPipe, we need to "demux", i.e., setting the |
| - // MediaType based on RTP payload type. |
| - if (num_video_streams_ > 0 && num_audio_streams_ > 0) { |
| - receive_demuxer_.SetReceiver(receiver_call_->Receiver()); |
| - send_transport_->SetReceiver(&receive_demuxer_); |
| - send_demuxer_.SetReceiver(sender_call_->Receiver()); |
| - receive_transport_->SetReceiver(&send_demuxer_); |
| - } else { |
| - send_transport_->SetReceiver(receiver_call_->Receiver()); |
| - receive_transport_->SetReceiver(sender_call_->Receiver()); |
| - } |
| + send_transport_->SetReceiver(receiver_call_->Receiver()); |
| + receive_transport_->SetReceiver(sender_call_->Receiver()); |
| if (num_video_streams_ > 0) |
| receiver_call_->SignalChannelNetworkState(MediaType::VIDEO, kNetworkUp); |
| if (num_audio_streams_ > 0) |
| @@ -299,7 +264,7 @@ void CallTest::CreateMatchingReceiveConfigs(Transport* rtcp_send_transport) { |
| audio_config.voe_channel_id = voe_recv_.channel_id; |
| audio_config.rtp.remote_ssrc = audio_send_config_.rtp.ssrc; |
| audio_config.decoder_factory = decoder_factory_; |
| - audio_config.decoder_map = {{120, {"opus", 48000, 2}}}; |
| + audio_config.decoder_map = {{kAudioSendPayloadType, {"opus", 48000, 2}}}; |
| audio_receive_configs_.push_back(audio_config); |
| } |
| @@ -461,6 +426,16 @@ const uint32_t CallTest::kReceiverLocalVideoSsrc = 0x123456; |
| const uint32_t CallTest::kReceiverLocalAudioSsrc = 0x1234567; |
| const int CallTest::kNackRtpHistoryMs = 1000; |
| +const std::map<uint8_t, MediaType> CallTest::payload_type_map_ = { |
| + {CallTest::kVideoSendPayloadType, MediaType::VIDEO}, |
| + {CallTest::kFakeVideoSendPayloadType, MediaType::VIDEO}, |
| + {CallTest::kSendRtxPayloadType, MediaType::VIDEO}, |
| + {CallTest::kRedPayloadType, MediaType::VIDEO}, |
|
nisse-webrtc
2017/04/06 12:23:56
Looks like kRedPayloadType is 118, but here's a di
minyue-webrtc
2017/04/06 18:45:10
ok. I will take a look at ulpfec_generator_fuzzer.
minyue-webrtc
2017/04/07 09:16:28
I have read ulpfec_generator_fuzzer now, it does n
|
| + {CallTest::kRtxRedPayloadType, MediaType::VIDEO}, |
| + {CallTest::kUlpfecPayloadType, MediaType::VIDEO}, |
| + {CallTest::kFlexfecPayloadType, MediaType::VIDEO}, |
|
nisse-webrtc
2017/04/06 12:23:56
kFlexfecPayloadType is 120 here, but 123 in fuzzer
minyue-webrtc
2017/04/07 09:16:28
same here
|
| + {CallTest::kAudioSendPayloadType, MediaType::AUDIO}}; |
|
nisse-webrtc
2017/04/06 12:23:56
And kAudioSendPayloadType is 103.
At least before
minyue-webrtc
2017/04/06 18:45:10
I should have solved them, since tests all passed
minyue-webrtc
2017/04/07 09:16:28
I could not find such conflict. Would you point it
|
| + |
| BaseTest::BaseTest() {} |
| BaseTest::BaseTest(unsigned int timeout_ms) : RtpRtcpObserver(timeout_ms) { |
| @@ -492,28 +467,15 @@ Call::Config BaseTest::GetReceiverCallConfig() { |
| void BaseTest::OnCallsCreated(Call* sender_call, Call* receiver_call) { |
| } |
| -MediaType BaseTest::SelectMediaType() { |
| - if (GetNumVideoStreams() > 0) { |
| - if (GetNumAudioStreams() > 0) { |
| - // Relies on PayloadDemuxer to set media type from payload type. |
| - return MediaType::ANY; |
| - } else { |
| - return MediaType::VIDEO; |
| - } |
| - } else { |
| - return MediaType::AUDIO; |
| - } |
| -} |
| - |
| test::PacketTransport* BaseTest::CreateSendTransport(Call* sender_call) { |
| return new PacketTransport(sender_call, this, test::PacketTransport::kSender, |
| - SelectMediaType(), |
| + CallTest::payload_type_map_, |
| FakeNetworkPipe::Config()); |
| } |
| test::PacketTransport* BaseTest::CreateReceiveTransport() { |
| return new PacketTransport(nullptr, this, test::PacketTransport::kReceiver, |
| - SelectMediaType(), |
| + CallTest::payload_type_map_, |
| FakeNetworkPipe::Config()); |
| } |