From ee37de3c13c5fe4b397d909918e9f980dc8184c5 Mon Sep 17 00:00:00 2001 From: sprang Date: Mon, 23 Nov 2015 06:10:23 -0800 Subject: [PATCH] Add screenshare perf tests with lossy links This is a re-land of https://codereview.webrtc.org/1409513005/ Fingers crossed, the problems previously seen have been resolved by https://codereview.webrtc.org/1412233003/ BUG= Review URL: https://codereview.webrtc.org/1409993011 Cr-Commit-Position: refs/heads/master@{#10751} --- webrtc/video/full_stack.cc | 24 ++++++++++++++++++++++++ webrtc/video/video_quality_test.cc | 5 +++-- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/webrtc/video/full_stack.cc b/webrtc/video/full_stack.cc index 8fdccfdef8..e870c1ff14 100644 --- a/webrtc/video/full_stack.cc +++ b/webrtc/video/full_stack.cc @@ -145,6 +145,30 @@ TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_Scroll) { RunTest(config); } +TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_LossyNet) { + VideoQualityTest::Params screenshare = { + {1850, 1110, 5, 50000, 200000, 2000000, "VP8", 2, 1, 400000}, + {}, // Video-specific. + {true, 10}, // Screenshare-specific. + {"screenshare_slides_lossy_net", 0.0, 0.0, kFullStackTestDurationSecs}}; + screenshare.pipe.loss_percent = 5; + screenshare.pipe.queue_delay_ms = 200; + screenshare.pipe.link_capacity_kbps = 500; + RunTest(screenshare); +} + +TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_VeryLossyNet) { + VideoQualityTest::Params screenshare = { + {1850, 1110, 5, 50000, 200000, 2000000, "VP8", 2, 1, 400000}, + {}, // Video-specific. + {true, 10}, // Screenshare-specific. + {"screenshare_slides_very_lossy", 0.0, 0.0, kFullStackTestDurationSecs}}; + screenshare.pipe.loss_percent = 10; + screenshare.pipe.queue_delay_ms = 200; + screenshare.pipe.link_capacity_kbps = 500; + RunTest(screenshare); +} + TEST_F(FullStackTest, ScreenshareSlidesVP9_2SL) { VideoQualityTest::Params screenshare = { {1850, 1110, 5, 50000, 200000, 2000000, "VP9", 1, 0, 400000}, diff --git a/webrtc/video/video_quality_test.cc b/webrtc/video/video_quality_test.cc index a46fe1bd7c..878beed75e 100644 --- a/webrtc/video/video_quality_test.cc +++ b/webrtc/video/video_quality_test.cc @@ -641,9 +641,10 @@ void VideoQualityTest::CheckParams() { // use that feature with pack loss, since the NACK request would end up // retransmitting the wrong packets. RTC_CHECK(params_.ss.selected_sl == -1 || - params_.ss.num_spatial_layers == 1); + params_.ss.selected_sl == params_.ss.num_spatial_layers - 1); RTC_CHECK(params_.common.selected_tl == -1 || - params_.common.num_temporal_layers == 1); + params_.common.selected_tl == + params_.common.num_temporal_layers - 1); } // TODO(ivica): Should max_bitrate_bps == -1 represent inf max bitrate, as it