Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(645)

Side by Side Diff: webrtc/video/end_to_end_tests.cc

Issue 2774463003: Don't hardcode MediaType::ANY in FakeNetworkPipe. (Closed)
Patch Set: Update FakeCall::DeliverPacket, for consistency with Call::DeliverRtp. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « webrtc/test/rtp_rtcp_observer.h ('k') | webrtc/video/replay.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 #include <algorithm> 10 #include <algorithm>
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 event_.Set(); 195 event_.Set();
196 } 196 }
197 197
198 bool Wait() { return event_.Wait(kDefaultTimeoutMs); } 198 bool Wait() { return event_.Wait(kDefaultTimeoutMs); }
199 199
200 rtc::Event event_; 200 rtc::Event event_;
201 } renderer; 201 } renderer;
202 202
203 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); 203 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_));
204 204
205 test::DirectTransport sender_transport(sender_call_.get()); 205 test::DirectTransport sender_transport(
206 test::DirectTransport receiver_transport(receiver_call_.get()); 206 sender_call_.get(), MediaType::VIDEO);
207 test::DirectTransport receiver_transport(
208 receiver_call_.get(), MediaType::VIDEO);
207 sender_transport.SetReceiver(receiver_call_->Receiver()); 209 sender_transport.SetReceiver(receiver_call_->Receiver());
208 receiver_transport.SetReceiver(sender_call_->Receiver()); 210 receiver_transport.SetReceiver(sender_call_->Receiver());
209 211
210 CreateSendConfig(1, 0, 0, &sender_transport); 212 CreateSendConfig(1, 0, 0, &sender_transport);
211 CreateMatchingReceiveConfigs(&receiver_transport); 213 CreateMatchingReceiveConfigs(&receiver_transport);
212 214
213 video_receive_configs_[0].renderer = &renderer; 215 video_receive_configs_[0].renderer = &renderer;
214 216
215 CreateVideoStreams(); 217 CreateVideoStreams();
216 Start(); 218 Start();
(...skipping 25 matching lines...) Expand all
242 244
243 void OnFrame(const VideoFrame& video_frame) override { event_.Set(); } 245 void OnFrame(const VideoFrame& video_frame) override { event_.Set(); }
244 246
245 bool Wait() { return event_.Wait(kDefaultTimeoutMs); } 247 bool Wait() { return event_.Wait(kDefaultTimeoutMs); }
246 248
247 rtc::Event event_; 249 rtc::Event event_;
248 } renderer; 250 } renderer;
249 251
250 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); 252 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_));
251 253
252 test::DirectTransport sender_transport(sender_call_.get()); 254 test::DirectTransport sender_transport(
253 test::DirectTransport receiver_transport(receiver_call_.get()); 255 sender_call_.get(), MediaType::VIDEO);
256 test::DirectTransport receiver_transport(
257 receiver_call_.get(), MediaType::VIDEO);
254 sender_transport.SetReceiver(receiver_call_->Receiver()); 258 sender_transport.SetReceiver(receiver_call_->Receiver());
255 receiver_transport.SetReceiver(sender_call_->Receiver()); 259 receiver_transport.SetReceiver(sender_call_->Receiver());
256 260
257 CreateSendConfig(1, 0, 0, &sender_transport); 261 CreateSendConfig(1, 0, 0, &sender_transport);
258 CreateMatchingReceiveConfigs(&receiver_transport); 262 CreateMatchingReceiveConfigs(&receiver_transport);
259 video_receive_configs_[0].renderer = &renderer; 263 video_receive_configs_[0].renderer = &renderer;
260 264
261 CreateVideoStreams(); 265 CreateVideoStreams();
262 Start(); 266 Start();
263 267
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
514 remote_ssrc_(0), 518 remote_ssrc_(0),
515 receive_transport_(nullptr) {} 519 receive_transport_(nullptr) {}
516 520
517 private: 521 private:
518 size_t GetNumVideoStreams() const override { return 0; } 522 size_t GetNumVideoStreams() const override { return 0; }
519 size_t GetNumAudioStreams() const override { return 1; } 523 size_t GetNumAudioStreams() const override { return 1; }
520 524
521 test::PacketTransport* CreateReceiveTransport() override { 525 test::PacketTransport* CreateReceiveTransport() override {
522 test::PacketTransport* receive_transport = new test::PacketTransport( 526 test::PacketTransport* receive_transport = new test::PacketTransport(
523 nullptr, this, test::PacketTransport::kReceiver, 527 nullptr, this, test::PacketTransport::kReceiver,
528 MediaType::AUDIO,
524 FakeNetworkPipe::Config()); 529 FakeNetworkPipe::Config());
525 receive_transport_ = receive_transport; 530 receive_transport_ = receive_transport;
526 return receive_transport; 531 return receive_transport;
527 } 532 }
528 533
529 Action OnSendRtp(const uint8_t* packet, size_t length) override { 534 Action OnSendRtp(const uint8_t* packet, size_t length) override {
530 RTPHeader header; 535 RTPHeader header;
531 EXPECT_TRUE(parser_->Parse(packet, length, &header)); 536 EXPECT_TRUE(parser_->Parse(packet, length, &header));
532 537
533 if (!sequence_number_to_retransmit_) { 538 if (!sequence_number_to_retransmit_) {
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
775 780
776 return SEND_PACKET; 781 return SEND_PACKET;
777 } 782 }
778 783
779 test::PacketTransport* CreateSendTransport(Call* sender_call) override { 784 test::PacketTransport* CreateSendTransport(Call* sender_call) override {
780 // At low RTT (< kLowRttNackMs) -> NACK only, no FEC. 785 // At low RTT (< kLowRttNackMs) -> NACK only, no FEC.
781 const int kNetworkDelayMs = 100; 786 const int kNetworkDelayMs = 100;
782 FakeNetworkPipe::Config config; 787 FakeNetworkPipe::Config config;
783 config.queue_delay_ms = kNetworkDelayMs; 788 config.queue_delay_ms = kNetworkDelayMs;
784 return new test::PacketTransport(sender_call, this, 789 return new test::PacketTransport(sender_call, this,
785 test::PacketTransport::kSender, config); 790 test::PacketTransport::kSender,
791 MediaType::VIDEO, config);
786 } 792 }
787 793
788 void OnFrame(const VideoFrame& video_frame) override { 794 void OnFrame(const VideoFrame& video_frame) override {
789 rtc::CritScope lock(&crit_); 795 rtc::CritScope lock(&crit_);
790 // Rendering frame with timestamp of packet that was dropped -> FEC 796 // Rendering frame with timestamp of packet that was dropped -> FEC
791 // protection worked. 797 // protection worked.
792 auto it = dropped_timestamps_.find(video_frame.timestamp()); 798 auto it = dropped_timestamps_.find(video_frame.timestamp());
793 if (it != dropped_timestamps_.end()) { 799 if (it != dropped_timestamps_.end()) {
794 if (!expect_flexfec_rtcp_ || received_flexfec_rtcp_) { 800 if (!expect_flexfec_rtcp_ || received_flexfec_rtcp_) {
795 observation_complete_.Set(); 801 observation_complete_.Set();
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
954 return SEND_PACKET; 960 return SEND_PACKET;
955 } 961 }
956 962
957 test::PacketTransport* CreateSendTransport(Call* sender_call) override { 963 test::PacketTransport* CreateSendTransport(Call* sender_call) override {
958 // At low RTT (< kLowRttNackMs) -> NACK only, no FEC. 964 // At low RTT (< kLowRttNackMs) -> NACK only, no FEC.
959 // Configure some network delay. 965 // Configure some network delay.
960 const int kNetworkDelayMs = 50; 966 const int kNetworkDelayMs = 50;
961 FakeNetworkPipe::Config config; 967 FakeNetworkPipe::Config config;
962 config.queue_delay_ms = kNetworkDelayMs; 968 config.queue_delay_ms = kNetworkDelayMs;
963 return new test::PacketTransport(sender_call, this, 969 return new test::PacketTransport(sender_call, this,
964 test::PacketTransport::kSender, config); 970 test::PacketTransport::kSender,
971 MediaType::VIDEO, config);
965 } 972 }
966 973
967 // TODO(holmer): Investigate why we don't send FEC packets when the bitrate 974 // TODO(holmer): Investigate why we don't send FEC packets when the bitrate
968 // is 10 kbps. 975 // is 10 kbps.
969 Call::Config GetSenderCallConfig() override { 976 Call::Config GetSenderCallConfig() override {
970 Call::Config config(&event_log_); 977 Call::Config config(&event_log_);
971 const int kMinBitrateBps = 30000; 978 const int kMinBitrateBps = 30000;
972 config.bitrate_config.min_bitrate_bps = kMinBitrateBps; 979 config.bitrate_config.min_bitrate_bps = kMinBitrateBps;
973 return config; 980 return config;
974 } 981 }
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after
1296 return delivery_status; 1303 return delivery_status;
1297 } 1304 }
1298 } 1305 }
1299 1306
1300 PacketReceiver* receiver_; 1307 PacketReceiver* receiver_;
1301 rtc::Event delivered_packet_; 1308 rtc::Event delivered_packet_;
1302 }; 1309 };
1303 1310
1304 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); 1311 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_));
1305 1312
1306 test::DirectTransport send_transport(sender_call_.get()); 1313 test::DirectTransport send_transport(
1307 test::DirectTransport receive_transport(receiver_call_.get()); 1314 sender_call_.get(), MediaType::VIDEO);
1315 test::DirectTransport receive_transport(
1316 receiver_call_.get(), MediaType::VIDEO);
1308 PacketInputObserver input_observer(receiver_call_->Receiver()); 1317 PacketInputObserver input_observer(receiver_call_->Receiver());
1309 send_transport.SetReceiver(&input_observer); 1318 send_transport.SetReceiver(&input_observer);
1310 receive_transport.SetReceiver(sender_call_->Receiver()); 1319 receive_transport.SetReceiver(sender_call_->Receiver());
1311 1320
1312 CreateSendConfig(1, 0, 0, &send_transport); 1321 CreateSendConfig(1, 0, 0, &send_transport);
1313 CreateMatchingReceiveConfigs(&receive_transport); 1322 CreateMatchingReceiveConfigs(&receive_transport);
1314 1323
1315 CreateVideoStreams(); 1324 CreateVideoStreams();
1316 CreateFrameGeneratorCapturer(kDefaultFramerate, kDefaultWidth, 1325 CreateFrameGeneratorCapturer(kDefaultFramerate, kDefaultWidth,
1317 kDefaultHeight); 1326 kDefaultHeight);
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
1524 // start flowing should this be dereferenced. 1533 // start flowing should this be dereferenced.
1525 virtual void UpdateSendConfig( 1534 virtual void UpdateSendConfig(
1526 size_t stream_index, 1535 size_t stream_index,
1527 VideoSendStream::Config* send_config, 1536 VideoSendStream::Config* send_config,
1528 VideoEncoderConfig* encoder_config, 1537 VideoEncoderConfig* encoder_config,
1529 test::FrameGeneratorCapturer** frame_generator) {} 1538 test::FrameGeneratorCapturer** frame_generator) {}
1530 virtual void UpdateReceiveConfig(size_t stream_index, 1539 virtual void UpdateReceiveConfig(size_t stream_index,
1531 VideoReceiveStream::Config* receive_config) { 1540 VideoReceiveStream::Config* receive_config) {
1532 } 1541 }
1533 virtual test::DirectTransport* CreateSendTransport(Call* sender_call) { 1542 virtual test::DirectTransport* CreateSendTransport(Call* sender_call) {
1534 return new test::DirectTransport(sender_call); 1543 return new test::DirectTransport(sender_call, MediaType::VIDEO);
1535 } 1544 }
1536 virtual test::DirectTransport* CreateReceiveTransport(Call* receiver_call) { 1545 virtual test::DirectTransport* CreateReceiveTransport(Call* receiver_call) {
1537 return new test::DirectTransport(receiver_call); 1546 return new test::DirectTransport(receiver_call, MediaType::VIDEO);
1538 } 1547 }
1539 }; 1548 };
1540 1549
1541 // Each renderer verifies that it receives the expected resolution, and as soon 1550 // Each renderer verifies that it receives the expected resolution, and as soon
1542 // as every renderer has received a frame, the test finishes. 1551 // as every renderer has received a frame, the test finishes.
1543 TEST_F(EndToEndTest, SendsAndReceivesMultipleStreams) { 1552 TEST_F(EndToEndTest, SendsAndReceivesMultipleStreams) {
1544 class VideoOutputObserver : public rtc::VideoSinkInterface<VideoFrame> { 1553 class VideoOutputObserver : public rtc::VideoSinkInterface<VideoFrame> {
1545 public: 1554 public:
1546 VideoOutputObserver(const MultiStreamTest::CodecSettings& settings, 1555 VideoOutputObserver(const MultiStreamTest::CodecSettings& settings,
1547 uint32_t ssrc, 1556 uint32_t ssrc,
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
1606 } 1615 }
1607 1616
1608 TEST_F(EndToEndTest, AssignsTransportSequenceNumbers) { 1617 TEST_F(EndToEndTest, AssignsTransportSequenceNumbers) {
1609 static const int kExtensionId = 5; 1618 static const int kExtensionId = 5;
1610 1619
1611 class RtpExtensionHeaderObserver : public test::DirectTransport { 1620 class RtpExtensionHeaderObserver : public test::DirectTransport {
1612 public: 1621 public:
1613 RtpExtensionHeaderObserver(Call* sender_call, 1622 RtpExtensionHeaderObserver(Call* sender_call,
1614 const uint32_t& first_media_ssrc, 1623 const uint32_t& first_media_ssrc,
1615 const std::map<uint32_t, uint32_t>& ssrc_map) 1624 const std::map<uint32_t, uint32_t>& ssrc_map)
1616 : DirectTransport(sender_call), 1625 : DirectTransport(sender_call, MediaType::VIDEO),
1617 done_(false, false), 1626 done_(false, false),
1618 parser_(RtpHeaderParser::Create()), 1627 parser_(RtpHeaderParser::Create()),
1619 first_media_ssrc_(first_media_ssrc), 1628 first_media_ssrc_(first_media_ssrc),
1620 rtx_to_media_ssrcs_(ssrc_map), 1629 rtx_to_media_ssrcs_(ssrc_map),
1621 padding_observed_(false), 1630 padding_observed_(false),
1622 rtx_padding_observed_(false), 1631 rtx_padding_observed_(false),
1623 retransmit_observed_(false), 1632 retransmit_observed_(false),
1624 started_(false) { 1633 started_(false) {
1625 parser_->RegisterRtpHeaderExtension(kRtpExtensionTransportSequenceNumber, 1634 parser_->RegisterRtpHeaderExtension(kRtpExtensionTransportSequenceNumber,
1626 kExtensionId); 1635 kExtensionId);
(...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after
1922 size_t length_; 1931 size_t length_;
1923 FrameType frame_type_; 1932 FrameType frame_type_;
1924 rtc::Event called_; 1933 rtc::Event called_;
1925 }; 1934 };
1926 1935
1927 EncodedFrameTestObserver post_encode_observer; 1936 EncodedFrameTestObserver post_encode_observer;
1928 EncodedFrameTestObserver pre_decode_observer; 1937 EncodedFrameTestObserver pre_decode_observer;
1929 1938
1930 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); 1939 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_));
1931 1940
1932 test::DirectTransport sender_transport(sender_call_.get()); 1941 test::DirectTransport sender_transport(
1933 test::DirectTransport receiver_transport(receiver_call_.get()); 1942 sender_call_.get(), MediaType::VIDEO);
1943 test::DirectTransport receiver_transport(
1944 receiver_call_.get(), MediaType::VIDEO);
1934 sender_transport.SetReceiver(receiver_call_->Receiver()); 1945 sender_transport.SetReceiver(receiver_call_->Receiver());
1935 receiver_transport.SetReceiver(sender_call_->Receiver()); 1946 receiver_transport.SetReceiver(sender_call_->Receiver());
1936 1947
1937 CreateSendConfig(1, 0, 0, &sender_transport); 1948 CreateSendConfig(1, 0, 0, &sender_transport);
1938 CreateMatchingReceiveConfigs(&receiver_transport); 1949 CreateMatchingReceiveConfigs(&receiver_transport);
1939 video_send_config_.post_encode_callback = &post_encode_observer; 1950 video_send_config_.post_encode_callback = &post_encode_observer;
1940 video_receive_configs_[0].pre_decode_callback = &pre_decode_observer; 1951 video_receive_configs_[0].pre_decode_callback = &pre_decode_observer;
1941 1952
1942 CreateVideoStreams(); 1953 CreateVideoStreams();
1943 Start(); 1954 Start();
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
2087 this, 2098 this,
2088 "BitrateStatsPollingThread"), 2099 "BitrateStatsPollingThread"),
2089 state_(kWaitForFirstRampUp), 2100 state_(kWaitForFirstRampUp),
2090 retransmission_rate_limiter_(clock_, 1000) {} 2101 retransmission_rate_limiter_(clock_, 1000) {}
2091 2102
2092 ~BweObserver() {} 2103 ~BweObserver() {}
2093 2104
2094 test::PacketTransport* CreateReceiveTransport() override { 2105 test::PacketTransport* CreateReceiveTransport() override {
2095 receive_transport_ = new test::PacketTransport( 2106 receive_transport_ = new test::PacketTransport(
2096 nullptr, this, test::PacketTransport::kReceiver, 2107 nullptr, this, test::PacketTransport::kReceiver,
2108 MediaType::VIDEO,
2097 FakeNetworkPipe::Config()); 2109 FakeNetworkPipe::Config());
2098 return receive_transport_; 2110 return receive_transport_;
2099 } 2111 }
2100 2112
2101 Call::Config GetSenderCallConfig() override { 2113 Call::Config GetSenderCallConfig() override {
2102 Call::Config config(&event_log_); 2114 Call::Config config(&event_log_);
2103 // Set a high start bitrate to reduce the test completion time. 2115 // Set a high start bitrate to reduce the test completion time.
2104 config.bitrate_config.start_bitrate_bps = remb_bitrate_bps_; 2116 config.bitrate_config.start_bitrate_bps = remb_bitrate_bps_;
2105 return config; 2117 return config;
2106 } 2118 }
(...skipping 943 matching lines...) Expand 10 before | Expand all | Expand 10 after
3050 if (!stat.second) 3062 if (!stat.second)
3051 return false; 3063 return false;
3052 } 3064 }
3053 return true; 3065 return true;
3054 } 3066 }
3055 3067
3056 test::PacketTransport* CreateSendTransport(Call* sender_call) override { 3068 test::PacketTransport* CreateSendTransport(Call* sender_call) override {
3057 FakeNetworkPipe::Config network_config; 3069 FakeNetworkPipe::Config network_config;
3058 network_config.loss_percent = 5; 3070 network_config.loss_percent = 5;
3059 return new test::PacketTransport( 3071 return new test::PacketTransport(
3060 sender_call, this, test::PacketTransport::kSender, network_config); 3072 sender_call, this, test::PacketTransport::kSender, MediaType::VIDEO,
3073 network_config);
3061 } 3074 }
3062 3075
3063 Call::Config GetSenderCallConfig() override { 3076 Call::Config GetSenderCallConfig() override {
3064 Call::Config config = EndToEndTest::GetSenderCallConfig(); 3077 Call::Config config = EndToEndTest::GetSenderCallConfig();
3065 config.bitrate_config.start_bitrate_bps = kStartBitrateBps; 3078 config.bitrate_config.start_bitrate_bps = kStartBitrateBps;
3066 return config; 3079 return config;
3067 } 3080 }
3068 3081
3069 // This test use other VideoStream settings than the the default settings 3082 // This test use other VideoStream settings than the the default settings
3070 // implemented in DefaultVideoStreamFactory. Therefore this test implement 3083 // implemented in DefaultVideoStreamFactory. Therefore this test implement
(...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after
3604 rtc::CriticalSection crit_; 3617 rtc::CriticalSection crit_;
3605 size_t ssrcs_to_observe_ GUARDED_BY(crit_); 3618 size_t ssrcs_to_observe_ GUARDED_BY(crit_);
3606 std::map<uint32_t, bool> ssrc_observed_ GUARDED_BY(crit_); 3619 std::map<uint32_t, bool> ssrc_observed_ GUARDED_BY(crit_);
3607 } observer(use_rtx); 3620 } observer(use_rtx);
3608 3621
3609 Call::Config config(&event_log_); 3622 Call::Config config(&event_log_);
3610 CreateCalls(config, config); 3623 CreateCalls(config, config);
3611 3624
3612 test::PacketTransport send_transport(sender_call_.get(), &observer, 3625 test::PacketTransport send_transport(sender_call_.get(), &observer,
3613 test::PacketTransport::kSender, 3626 test::PacketTransport::kSender,
3627 MediaType::VIDEO,
3614 FakeNetworkPipe::Config()); 3628 FakeNetworkPipe::Config());
3615 test::PacketTransport receive_transport(nullptr, &observer, 3629 test::PacketTransport receive_transport(nullptr, &observer,
3616 test::PacketTransport::kReceiver, 3630 test::PacketTransport::kReceiver,
3631 MediaType::VIDEO,
3617 FakeNetworkPipe::Config()); 3632 FakeNetworkPipe::Config());
3618 send_transport.SetReceiver(receiver_call_->Receiver()); 3633 send_transport.SetReceiver(receiver_call_->Receiver());
3619 receive_transport.SetReceiver(sender_call_->Receiver()); 3634 receive_transport.SetReceiver(sender_call_->Receiver());
3620 3635
3621 CreateSendConfig(kNumSsrcs, 0, 0, &send_transport); 3636 CreateSendConfig(kNumSsrcs, 0, 0, &send_transport);
3622 3637
3623 if (use_rtx) { 3638 if (use_rtx) {
3624 for (size_t i = 0; i < kNumSsrcs; ++i) { 3639 for (size_t i = 0; i < kNumSsrcs; ++i) {
3625 video_send_config_.rtp.rtx.ssrcs.push_back(kSendRtxSsrcs[i]); 3640 video_send_config_.rtp.rtx.ssrcs.push_back(kSendRtxSsrcs[i]);
3626 } 3641 }
(...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after
3899 RunBaseTest(&test); 3914 RunBaseTest(&test);
3900 } 3915 }
3901 3916
3902 TEST_F(EndToEndTest, CallReportsRttForSender) { 3917 TEST_F(EndToEndTest, CallReportsRttForSender) {
3903 static const int kSendDelayMs = 30; 3918 static const int kSendDelayMs = 30;
3904 static const int kReceiveDelayMs = 70; 3919 static const int kReceiveDelayMs = 70;
3905 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); 3920 CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_));
3906 3921
3907 FakeNetworkPipe::Config config; 3922 FakeNetworkPipe::Config config;
3908 config.queue_delay_ms = kSendDelayMs; 3923 config.queue_delay_ms = kSendDelayMs;
3909 test::DirectTransport sender_transport(config, sender_call_.get()); 3924 test::DirectTransport sender_transport(
3925 config, sender_call_.get(), MediaType::VIDEO);
3910 config.queue_delay_ms = kReceiveDelayMs; 3926 config.queue_delay_ms = kReceiveDelayMs;
3911 test::DirectTransport receiver_transport(config, receiver_call_.get()); 3927 test::DirectTransport receiver_transport(
3928 config, receiver_call_.get(), MediaType::VIDEO);
3912 sender_transport.SetReceiver(receiver_call_->Receiver()); 3929 sender_transport.SetReceiver(receiver_call_->Receiver());
3913 receiver_transport.SetReceiver(sender_call_->Receiver()); 3930 receiver_transport.SetReceiver(sender_call_->Receiver());
3914 3931
3915 CreateSendConfig(1, 0, 0, &sender_transport); 3932 CreateSendConfig(1, 0, 0, &sender_transport);
3916 CreateMatchingReceiveConfigs(&receiver_transport); 3933 CreateMatchingReceiveConfigs(&receiver_transport);
3917 3934
3918 CreateVideoStreams(); 3935 CreateVideoStreams();
3919 CreateFrameGeneratorCapturer(kDefaultFramerate, kDefaultWidth, 3936 CreateFrameGeneratorCapturer(kDefaultFramerate, kDefaultWidth,
3920 kDefaultHeight); 3937 kDefaultHeight);
3921 Start(); 3938 Start();
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
3963 DestroyStreams(); 3980 DestroyStreams();
3964 } 3981 }
3965 3982
3966 void EndToEndTest::VerifyNewVideoReceiveStreamsRespectNetworkState( 3983 void EndToEndTest::VerifyNewVideoReceiveStreamsRespectNetworkState(
3967 MediaType network_to_bring_up, 3984 MediaType network_to_bring_up,
3968 Transport* transport) { 3985 Transport* transport) {
3969 Call::Config config(&event_log_); 3986 Call::Config config(&event_log_);
3970 CreateCalls(config, config); 3987 CreateCalls(config, config);
3971 receiver_call_->SignalChannelNetworkState(network_to_bring_up, kNetworkUp); 3988 receiver_call_->SignalChannelNetworkState(network_to_bring_up, kNetworkUp);
3972 3989
3973 test::DirectTransport sender_transport(sender_call_.get()); 3990 test::DirectTransport sender_transport(sender_call_.get(), MediaType::VIDEO);
3974 sender_transport.SetReceiver(receiver_call_->Receiver()); 3991 sender_transport.SetReceiver(receiver_call_->Receiver());
3975 CreateSendConfig(1, 0, 0, &sender_transport); 3992 CreateSendConfig(1, 0, 0, &sender_transport);
3976 CreateMatchingReceiveConfigs(transport); 3993 CreateMatchingReceiveConfigs(transport);
3977 CreateVideoStreams(); 3994 CreateVideoStreams();
3978 CreateFrameGeneratorCapturer(kDefaultFramerate, kDefaultWidth, 3995 CreateFrameGeneratorCapturer(kDefaultFramerate, kDefaultWidth,
3979 kDefaultHeight); 3996 kDefaultHeight);
3980 3997
3981 Start(); 3998 Start();
3982 SleepMs(kSilenceTimeoutMs); 3999 SleepMs(kSilenceTimeoutMs);
3983 Stop(); 4000 Stop();
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after
4287 std::unique_ptr<VideoEncoder> encoder_; 4304 std::unique_ptr<VideoEncoder> encoder_;
4288 std::unique_ptr<VideoDecoder> decoder_; 4305 std::unique_ptr<VideoDecoder> decoder_;
4289 rtc::CriticalSection crit_; 4306 rtc::CriticalSection crit_;
4290 int recorded_frames_ GUARDED_BY(crit_); 4307 int recorded_frames_ GUARDED_BY(crit_);
4291 } test(this); 4308 } test(this);
4292 4309
4293 RunBaseTest(&test); 4310 RunBaseTest(&test);
4294 } 4311 }
4295 4312
4296 } // namespace webrtc 4313 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/test/rtp_rtcp_observer.h ('k') | webrtc/video/replay.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698