OLD | NEW |
---|---|
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 <stdio.h> | 10 #include <stdio.h> |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
42 // pipe, // FakeNetworkPipe::Config | 42 // pipe, // FakeNetworkPipe::Config |
43 // { ... }, // Spatial scalability. | 43 // { ... }, // Spatial scalability. |
44 // logs // bool | 44 // logs // bool |
45 // }; | 45 // }; |
46 | 46 |
47 #if !defined(RTC_DISABLE_VP9) | 47 #if !defined(RTC_DISABLE_VP9) |
48 TEST_F(FullStackTest, ForemanCifWithoutPacketLossVp9) { | 48 TEST_F(FullStackTest, ForemanCifWithoutPacketLossVp9) { |
49 // TODO(pbos): Decide on psnr/ssim thresholds for foreman_cif. | 49 // TODO(pbos): Decide on psnr/ssim thresholds for foreman_cif. |
50 VideoQualityTest::Params foreman_cif; | 50 VideoQualityTest::Params foreman_cif; |
51 foreman_cif.call.send_side_bwe = true; | 51 foreman_cif.call.send_side_bwe = true; |
52 foreman_cif.video = {true, 352, 288, 30, 700000, 700000, 700000, false, | 52 foreman_cif.video = {true, 352, 288, 30, 700000, 700000, |
53 "VP9", 1, 0, 0, false, false, "foreman_cif"}; | 53 700000, false, "VP9", false, false, 1, |
54 0, 0, false, false, "foreman_cif"}; | |
54 foreman_cif.analyzer = {"foreman_cif_net_delay_0_0_plr_0_VP9", 0.0, 0.0, | 55 foreman_cif.analyzer = {"foreman_cif_net_delay_0_0_plr_0_VP9", 0.0, 0.0, |
55 kFullStackTestDurationSecs}; | 56 kFullStackTestDurationSecs}; |
56 RunTest(foreman_cif); | 57 RunTest(foreman_cif); |
57 } | 58 } |
58 | 59 |
59 TEST_F(FullStackTest, ForemanCifPlr5Vp9) { | 60 TEST_F(FullStackTest, ForemanCifPlr5Vp9) { |
60 VideoQualityTest::Params foreman_cif; | 61 VideoQualityTest::Params foreman_cif; |
61 foreman_cif.call.send_side_bwe = true; | 62 foreman_cif.call.send_side_bwe = true; |
62 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 63 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
63 "VP9", 1, 0, 0, false, false, "foreman_cif"}; | 64 2000000, false, "VP9", false, false, 1, |
65 0, 0, false, false, "foreman_cif"}; | |
64 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_VP9", 0.0, 0.0, | 66 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_VP9", 0.0, 0.0, |
65 kFullStackTestDurationSecs}; | 67 kFullStackTestDurationSecs}; |
66 foreman_cif.pipe.loss_percent = 5; | 68 foreman_cif.pipe.loss_percent = 5; |
67 foreman_cif.pipe.queue_delay_ms = 50; | 69 foreman_cif.pipe.queue_delay_ms = 50; |
68 RunTest(foreman_cif); | 70 RunTest(foreman_cif); |
69 } | 71 } |
70 #endif // !defined(RTC_DISABLE_VP9) | 72 #endif // !defined(RTC_DISABLE_VP9) |
71 | 73 |
72 TEST_F(FullStackTest, ParisQcifWithoutPacketLoss) { | 74 TEST_F(FullStackTest, ParisQcifWithoutPacketLoss) { |
73 VideoQualityTest::Params paris_qcif; | 75 VideoQualityTest::Params paris_qcif; |
74 paris_qcif.call.send_side_bwe = true; | 76 paris_qcif.call.send_side_bwe = true; |
75 paris_qcif.video = {true, 176, 144, 30, 300000, 300000, 300000, false, | 77 paris_qcif.video = {true, 176, 144, 30, 300000, 300000, |
76 "VP8", 1, 0, 0, false, false, "paris_qcif"}; | 78 300000, false, "VP8", false, false, 1, |
79 0, 0, false, false, "paris_qcif"}; | |
77 paris_qcif.analyzer = {"net_delay_0_0_plr_0", 36.0, 0.96, | 80 paris_qcif.analyzer = {"net_delay_0_0_plr_0", 36.0, 0.96, |
78 kFullStackTestDurationSecs}; | 81 kFullStackTestDurationSecs}; |
79 RunTest(paris_qcif); | 82 RunTest(paris_qcif); |
80 } | 83 } |
81 | 84 |
82 TEST_F(FullStackTest, ForemanCifWithoutPacketLoss) { | 85 TEST_F(FullStackTest, ForemanCifWithoutPacketLoss) { |
83 // TODO(pbos): Decide on psnr/ssim thresholds for foreman_cif. | 86 // TODO(pbos): Decide on psnr/ssim thresholds for foreman_cif. |
84 VideoQualityTest::Params foreman_cif; | 87 VideoQualityTest::Params foreman_cif; |
85 foreman_cif.call.send_side_bwe = true; | 88 foreman_cif.call.send_side_bwe = true; |
86 foreman_cif.video = {true, 352, 288, 30, 700000, 700000, 700000, false, | 89 foreman_cif.video = {true, 352, 288, 30, 700000, 700000, |
87 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 90 700000, false, "VP8", false, false, 1, |
91 0, 0, false, false, "foreman_cif"}; | |
88 foreman_cif.analyzer = {"foreman_cif_net_delay_0_0_plr_0", 0.0, 0.0, | 92 foreman_cif.analyzer = {"foreman_cif_net_delay_0_0_plr_0", 0.0, 0.0, |
89 kFullStackTestDurationSecs}; | 93 kFullStackTestDurationSecs}; |
90 RunTest(foreman_cif); | 94 RunTest(foreman_cif); |
91 } | 95 } |
92 | 96 |
93 TEST_F(FullStackTest, ForemanCif30kbpsWithoutPacketLoss) { | 97 TEST_F(FullStackTest, ForemanCif30kbpsWithoutPacketLoss) { |
94 VideoQualityTest::Params foreman_cif; | 98 VideoQualityTest::Params foreman_cif; |
95 foreman_cif.call.send_side_bwe = true; | 99 foreman_cif.call.send_side_bwe = true; |
96 foreman_cif.video = {true, 352, 288, 10, 30000, 30000, 30000, false, | 100 foreman_cif.video = {true, 352, 288, 10, 30000, 30000, |
97 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 101 30000, false, "VP8", false, false, 1, |
102 0, 0, false, false, "foreman_cif"}; | |
98 foreman_cif.analyzer = {"foreman_cif_30kbps_net_delay_0_0_plr_0", 0.0, 0.0, | 103 foreman_cif.analyzer = {"foreman_cif_30kbps_net_delay_0_0_plr_0", 0.0, 0.0, |
99 kFullStackTestDurationSecs}; | 104 kFullStackTestDurationSecs}; |
100 RunTest(foreman_cif); | 105 RunTest(foreman_cif); |
101 } | 106 } |
102 | 107 |
103 TEST_F(FullStackTest, ForemanCifPlr5) { | 108 TEST_F(FullStackTest, ForemanCifPlr5) { |
104 VideoQualityTest::Params foreman_cif; | 109 VideoQualityTest::Params foreman_cif; |
105 foreman_cif.call.send_side_bwe = true; | 110 foreman_cif.call.send_side_bwe = true; |
106 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 111 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
107 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 112 2000000, false, "VP8", false, false, 1, |
113 0, 0, false, false, "foreman_cif"}; | |
108 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5", 0.0, 0.0, | 114 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5", 0.0, 0.0, |
109 kFullStackTestDurationSecs}; | 115 kFullStackTestDurationSecs}; |
110 foreman_cif.pipe.loss_percent = 5; | 116 foreman_cif.pipe.loss_percent = 5; |
111 foreman_cif.pipe.queue_delay_ms = 50; | 117 foreman_cif.pipe.queue_delay_ms = 50; |
112 RunTest(foreman_cif); | 118 RunTest(foreman_cif); |
113 } | 119 } |
114 | 120 |
115 TEST_F(FullStackTest, ForemanCifPlr5Ulpfec) { | 121 TEST_F(FullStackTest, ForemanCifPlr5Ulpfec) { |
116 VideoQualityTest::Params foreman_cif; | 122 VideoQualityTest::Params foreman_cif; |
117 foreman_cif.call.send_side_bwe = true; | 123 foreman_cif.call.send_side_bwe = true; |
118 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 124 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
119 "VP8", 1, 0, 0, true, false, "foreman_cif"}; | 125 2000000, false, "VP8", false, false, 1, |
126 0, 0, true, false, "foreman_cif"}; | |
120 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_ulpfec", 0.0, 0.0, | 127 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_ulpfec", 0.0, 0.0, |
121 kFullStackTestDurationSecs}; | 128 kFullStackTestDurationSecs}; |
122 foreman_cif.pipe.loss_percent = 5; | 129 foreman_cif.pipe.loss_percent = 5; |
123 foreman_cif.pipe.queue_delay_ms = 50; | 130 foreman_cif.pipe.queue_delay_ms = 50; |
124 RunTest(foreman_cif); | 131 RunTest(foreman_cif); |
125 } | 132 } |
126 | 133 |
127 TEST_F(FullStackTest, ForemanCifPlr5Flexfec) { | 134 TEST_F(FullStackTest, ForemanCifPlr5Flexfec) { |
128 VideoQualityTest::Params foreman_cif; | 135 VideoQualityTest::Params foreman_cif; |
129 foreman_cif.call.send_side_bwe = true; | 136 foreman_cif.call.send_side_bwe = true; |
130 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 137 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
131 "VP8", 1, 0, 0, false, true, "foreman_cif"}; | 138 2000000, false, "VP8", false, false, 1, |
139 0, 0, false, true, "foreman_cif"}; | |
132 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_flexfec", 0.0, 0.0, | 140 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_flexfec", 0.0, 0.0, |
133 kFullStackTestDurationSecs}; | 141 kFullStackTestDurationSecs}; |
134 foreman_cif.pipe.loss_percent = 5; | 142 foreman_cif.pipe.loss_percent = 5; |
135 foreman_cif.pipe.queue_delay_ms = 50; | 143 foreman_cif.pipe.queue_delay_ms = 50; |
136 RunTest(foreman_cif); | 144 RunTest(foreman_cif); |
137 } | 145 } |
138 | 146 |
139 TEST_F(FullStackTest, ForemanCif500kbpsPlr3Flexfec) { | 147 TEST_F(FullStackTest, ForemanCif500kbpsPlr3Flexfec) { |
140 VideoQualityTest::Params foreman_cif; | 148 VideoQualityTest::Params foreman_cif; |
141 foreman_cif.call.send_side_bwe = true; | 149 foreman_cif.call.send_side_bwe = true; |
142 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 150 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
143 "VP8", 1, 0, 0, false, true, "foreman_cif"}; | 151 2000000, false, "VP8", false, false, 1, |
152 0, 0, false, true, "foreman_cif"}; | |
144 foreman_cif.analyzer = {"foreman_cif_500kbps_delay_50_0_plr_3_flexfec", 0.0, | 153 foreman_cif.analyzer = {"foreman_cif_500kbps_delay_50_0_plr_3_flexfec", 0.0, |
145 0.0, kFullStackTestDurationSecs}; | 154 0.0, kFullStackTestDurationSecs}; |
146 foreman_cif.pipe.loss_percent = 3; | 155 foreman_cif.pipe.loss_percent = 3; |
147 foreman_cif.pipe.link_capacity_kbps = 500; | 156 foreman_cif.pipe.link_capacity_kbps = 500; |
148 foreman_cif.pipe.queue_delay_ms = 50; | 157 foreman_cif.pipe.queue_delay_ms = 50; |
149 RunTest(foreman_cif); | 158 RunTest(foreman_cif); |
150 } | 159 } |
151 | 160 |
152 TEST_F(FullStackTest, ForemanCif500kbpsPlr3Ulpfec) { | 161 TEST_F(FullStackTest, ForemanCif500kbpsPlr3Ulpfec) { |
153 VideoQualityTest::Params foreman_cif; | 162 VideoQualityTest::Params foreman_cif; |
154 foreman_cif.call.send_side_bwe = true; | 163 foreman_cif.call.send_side_bwe = true; |
155 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 164 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
156 "VP8", 1, 0, 0, true, false, "foreman_cif"}; | 165 2000000, false, "VP8", false, false, 1, |
166 0, 0, true, false, "foreman_cif"}; | |
157 foreman_cif.analyzer = {"foreman_cif_500kbps_delay_50_0_plr_3_ulpfec", 0.0, | 167 foreman_cif.analyzer = {"foreman_cif_500kbps_delay_50_0_plr_3_ulpfec", 0.0, |
158 0.0, kFullStackTestDurationSecs}; | 168 0.0, kFullStackTestDurationSecs}; |
159 foreman_cif.pipe.loss_percent = 3; | 169 foreman_cif.pipe.loss_percent = 3; |
160 foreman_cif.pipe.link_capacity_kbps = 500; | 170 foreman_cif.pipe.link_capacity_kbps = 500; |
161 foreman_cif.pipe.queue_delay_ms = 50; | 171 foreman_cif.pipe.queue_delay_ms = 50; |
162 RunTest(foreman_cif); | 172 RunTest(foreman_cif); |
163 } | 173 } |
164 | 174 |
165 #if defined(WEBRTC_USE_H264) | 175 #if defined(WEBRTC_USE_H264) |
166 TEST_F(FullStackTest, ForemanCifWithoutPacketlossH264) { | 176 TEST_F(FullStackTest, ForemanCifWithoutPacketlossH264) { |
167 // TODO(pbos): Decide on psnr/ssim thresholds for foreman_cif. | 177 // TODO(pbos): Decide on psnr/ssim thresholds for foreman_cif. |
168 VideoQualityTest::Params foreman_cif; | 178 VideoQualityTest::Params foreman_cif; |
169 foreman_cif.call.send_side_bwe = true; | 179 foreman_cif.call.send_side_bwe = true; |
170 foreman_cif.video = {true, 352, 288, 30, 700000, | 180 foreman_cif.video = {true, 352, 288, 30, 700000, 700000, |
171 700000, 700000, false, "H264", 1, | 181 700000, false, "H264", false, false, 1, |
172 0, 0, false, false, "foreman_cif"}; | 182 0, 0, false, false, "foreman_cif"}; |
173 foreman_cif.analyzer = {"foreman_cif_net_delay_0_0_plr_0_H264", 0.0, 0.0, | 183 foreman_cif.analyzer = {"foreman_cif_net_delay_0_0_plr_0_H264", 0.0, 0.0, |
174 kFullStackTestDurationSecs}; | 184 kFullStackTestDurationSecs}; |
175 RunTest(foreman_cif); | 185 RunTest(foreman_cif); |
176 } | 186 } |
177 | 187 |
178 TEST_F(FullStackTest, ForemanCif30kbpsWithoutPacketlossH264) { | 188 TEST_F(FullStackTest, ForemanCif30kbpsWithoutPacketlossH264) { |
179 VideoQualityTest::Params foreman_cif; | 189 VideoQualityTest::Params foreman_cif; |
180 foreman_cif.call.send_side_bwe = true; | 190 foreman_cif.call.send_side_bwe = true; |
181 foreman_cif.video = {true, 352, 288, 10, 30000, 30000, 30000, false, | 191 foreman_cif.video = {true, 352, 288, 10, 30000, 30000, |
182 "H264", 1, 0, 0, false, false, "foreman_cif"}; | 192 30000, false, "H264", false, false, 1, |
193 0, 0, false, false, "foreman_cif"}; | |
183 foreman_cif.analyzer = {"foreman_cif_30kbps_net_delay_0_0_plr_0_H264", 0.0, | 194 foreman_cif.analyzer = {"foreman_cif_30kbps_net_delay_0_0_plr_0_H264", 0.0, |
184 0.0, kFullStackTestDurationSecs}; | 195 0.0, kFullStackTestDurationSecs}; |
185 RunTest(foreman_cif); | 196 RunTest(foreman_cif); |
186 } | 197 } |
187 | 198 |
188 TEST_F(FullStackTest, ForemanCifPlr5H264) { | 199 TEST_F(FullStackTest, ForemanCifPlr5H264) { |
189 VideoQualityTest::Params foreman_cif; | 200 VideoQualityTest::Params foreman_cif; |
190 foreman_cif.call.send_side_bwe = true; | 201 foreman_cif.call.send_side_bwe = true; |
191 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 202 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
192 "H264", 1, 0, 0, false, false, "foreman_cif"}; | 203 2000000, false, "H264", false, false, 1, |
204 0, 0, false, false, "foreman_cif"}; | |
193 std::string fec_description; | 205 std::string fec_description; |
194 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_H264", 0.0, 0.0, | 206 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_H264", 0.0, 0.0, |
195 kFullStackTestDurationSecs}; | 207 kFullStackTestDurationSecs}; |
196 foreman_cif.pipe.loss_percent = 5; | 208 foreman_cif.pipe.loss_percent = 5; |
197 foreman_cif.pipe.queue_delay_ms = 50; | 209 foreman_cif.pipe.queue_delay_ms = 50; |
198 RunTest(foreman_cif); | 210 RunTest(foreman_cif); |
199 } | 211 } |
200 | 212 |
201 // Verify that this is worth the bot time, before enabling. | 213 // Verify that this is worth the bot time, before enabling. |
202 TEST_F(FullStackTest, ForemanCifPlr5H264Flexfec) { | 214 TEST_F(FullStackTest, ForemanCifPlr5H264Flexfec) { |
203 VideoQualityTest::Params foreman_cif; | 215 VideoQualityTest::Params foreman_cif; |
204 foreman_cif.call.send_side_bwe = true; | 216 foreman_cif.call.send_side_bwe = true; |
205 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 217 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
206 "H264", 1, 0, 0, false, true, "foreman_cif"}; | 218 2000000, false, "H264", false, false, 1, |
219 0, 0, false, true, "foreman_cif"}; | |
207 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_H264_flexfec", 0.0, 0.0, | 220 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_H264_flexfec", 0.0, 0.0, |
208 kFullStackTestDurationSecs}; | 221 kFullStackTestDurationSecs}; |
209 foreman_cif.pipe.loss_percent = 5; | 222 foreman_cif.pipe.loss_percent = 5; |
210 foreman_cif.pipe.queue_delay_ms = 50; | 223 foreman_cif.pipe.queue_delay_ms = 50; |
211 RunTest(foreman_cif); | 224 RunTest(foreman_cif); |
212 } | 225 } |
213 | 226 |
214 // Ulpfec with H264 is an unsupported combination, so this test is only useful | 227 // Ulpfec with H264 is an unsupported combination, so this test is only useful |
215 // for debugging. It is therefore disabled by default. | 228 // for debugging. It is therefore disabled by default. |
216 TEST_F(FullStackTest, DISABLED_ForemanCifPlr5H264Ulpfec) { | 229 TEST_F(FullStackTest, DISABLED_ForemanCifPlr5H264Ulpfec) { |
217 VideoQualityTest::Params foreman_cif; | 230 VideoQualityTest::Params foreman_cif; |
218 foreman_cif.call.send_side_bwe = true; | 231 foreman_cif.call.send_side_bwe = true; |
219 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 232 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
220 "H264", 1, 0, 0, true, false, "foreman_cif"}; | 233 2000000, false, "H264", false, false, 1, |
234 0, 0, true, false, "foreman_cif"}; | |
221 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_H264_ulpfec", 0.0, 0.0, | 235 foreman_cif.analyzer = {"foreman_cif_delay_50_0_plr_5_H264_ulpfec", 0.0, 0.0, |
222 kFullStackTestDurationSecs}; | 236 kFullStackTestDurationSecs}; |
223 foreman_cif.pipe.loss_percent = 5; | 237 foreman_cif.pipe.loss_percent = 5; |
224 foreman_cif.pipe.queue_delay_ms = 50; | 238 foreman_cif.pipe.queue_delay_ms = 50; |
225 RunTest(foreman_cif); | 239 RunTest(foreman_cif); |
226 } | 240 } |
227 #endif // defined(WEBRTC_USE_H264) | 241 #endif // defined(WEBRTC_USE_H264) |
228 | 242 |
229 TEST_F(FullStackTest, ForemanCif500kbps) { | 243 TEST_F(FullStackTest, ForemanCif500kbps) { |
230 VideoQualityTest::Params foreman_cif; | 244 VideoQualityTest::Params foreman_cif; |
231 foreman_cif.call.send_side_bwe = true; | 245 foreman_cif.call.send_side_bwe = true; |
232 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 246 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
233 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 247 2000000, false, "VP8", false, false, 1, |
248 0, 0, false, false, "foreman_cif"}; | |
234 foreman_cif.analyzer = {"foreman_cif_500kbps", 0.0, 0.0, | 249 foreman_cif.analyzer = {"foreman_cif_500kbps", 0.0, 0.0, |
235 kFullStackTestDurationSecs}; | 250 kFullStackTestDurationSecs}; |
236 foreman_cif.pipe.queue_length_packets = 0; | 251 foreman_cif.pipe.queue_length_packets = 0; |
237 foreman_cif.pipe.queue_delay_ms = 0; | 252 foreman_cif.pipe.queue_delay_ms = 0; |
238 foreman_cif.pipe.link_capacity_kbps = 500; | 253 foreman_cif.pipe.link_capacity_kbps = 500; |
239 RunTest(foreman_cif); | 254 RunTest(foreman_cif); |
240 } | 255 } |
241 | 256 |
257 TEST_F(FullStackTest, ForemanSqcif30kbpsLibvpx) { | |
258 VideoQualityTest::Params foreman_sqcif; | |
259 foreman_sqcif.call.send_side_bwe = true; | |
260 foreman_sqcif.video = {true, 128, 96, 15, 30000, 30000, | |
261 2000000, false, "VP8", false, false, 1, | |
262 0, 0, false, false, "foreman_128x96"}; | |
263 foreman_sqcif.analyzer = {"foreman_sqcif_30kbps_libvpx", 0.0, 0.0, | |
264 kFullStackTestDurationSecs}; | |
265 foreman_sqcif.pipe.link_capacity_kbps = 30; | |
266 RunTest(foreman_sqcif); | |
267 } | |
268 | |
269 TEST_F(FullStackTest, Foreman240p100kbpsLibvpx) { | |
270 VideoQualityTest::Params foreman_240p; | |
271 foreman_240p.call.send_side_bwe = true; | |
272 foreman_240p.video = { | |
273 true, 320, 240, 10, 30000, 100000, 2000000, false, "VP8", false, | |
274 false, 1, 0, 0, false, false, "foreman_320x240"}; | |
275 foreman_240p.analyzer = {"foreman_240p_100kbps_libvpx", 0.0, 0.0, | |
276 kFullStackTestDurationSecs}; | |
277 foreman_240p.pipe.link_capacity_kbps = 100; | |
278 RunTest(foreman_240p); | |
279 } | |
280 | |
281 #if defined(WEBRTC_ANDROID) | |
282 TEST_F(FullStackTest, ForemanSqcif30kbpsMediaCodec) { | |
283 VideoQualityTest::Params foreman_sqcif; | |
284 foreman_sqcif.call.send_side_bwe = true; | |
285 foreman_sqcif.video = {true, 128, 96, 15, 30000, 30000, | |
286 2000000, false, "VP8", true, false, 1, | |
287 0, 0, false, false, "foreman_128x96"}; | |
288 foreman_sqcif.analyzer = {"foreman_sqcif_30kbps_mediacodec", 0.0, 0.0, | |
289 kFullStackTestDurationSecs}; | |
290 foreman_sqcif.pipe.link_capacity_kbps = 30; | |
291 RunTest(foreman_sqcif); | |
292 } | |
293 | |
294 TEST_F(FullStackTest, Foreman240p100kbpsMediaCodec) { | |
295 VideoQualityTest::Params foreman_240p; | |
296 foreman_240p.call.send_side_bwe = true; | |
297 foreman_240p.video = { | |
298 true, 320, 240, 10, 30000, 100000, 2000000, false, "VP8", true, | |
299 false, 1, 0, 0, false, false, "foreman_320x240"}; | |
300 foreman_240p.analyzer = {"foreman_240p_100kbps_mediacodec", 0.0, 0.0, | |
301 kFullStackTestDurationSecs}; | |
302 foreman_240p.pipe.link_capacity_kbps = 100; | |
303 RunTest(foreman_240p); | |
304 } | |
305 | |
306 TEST_F(FullStackTest, Foreman240p100kbpsMediaCodecWithForcedSwFallback) { | |
307 char field_trial[100]; | |
308 snprintf(field_trial, sizeof(field_trial), | |
309 "WebRTC-VP8-Forced-Fallback-Encoder/Enabled-150,175,%d,19200/", | |
310 1000 * kFullStackTestDurationSecs / 2); | |
311 test::ScopedFieldTrials override_field_trials(field_trial); | |
312 | |
313 VideoQualityTest::Params foreman_240p; | |
314 foreman_240p.call.send_side_bwe = true; | |
315 foreman_240p.video = { | |
316 true, 320, 240, 10, 30000, 100000, 2000000, false, "VP8", true, | |
317 true, 1, 0, 0, false, false, "foreman_320x240"}; | |
318 foreman_240p.analyzer = {"foreman_240p_100kbps_mediacodec_sw_fallback", 0.0, | |
319 0.0, kFullStackTestDurationSecs}; | |
320 foreman_240p.pipe.link_capacity_kbps = 100; | |
321 RunTest(foreman_240p); | |
322 } | |
323 #endif // defined(WEBRTC_ANDROID) | |
324 | |
242 TEST_F(FullStackTest, ForemanCif500kbpsLimitedQueue) { | 325 TEST_F(FullStackTest, ForemanCif500kbpsLimitedQueue) { |
243 VideoQualityTest::Params foreman_cif; | 326 VideoQualityTest::Params foreman_cif; |
244 foreman_cif.call.send_side_bwe = true; | 327 foreman_cif.call.send_side_bwe = true; |
245 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 328 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
246 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 329 2000000, false, "VP8", false, false, 1, |
330 0, 0, false, false, "foreman_cif"}; | |
247 foreman_cif.analyzer = {"foreman_cif_500kbps_32pkts_queue", 0.0, 0.0, | 331 foreman_cif.analyzer = {"foreman_cif_500kbps_32pkts_queue", 0.0, 0.0, |
248 kFullStackTestDurationSecs}; | 332 kFullStackTestDurationSecs}; |
249 foreman_cif.pipe.queue_length_packets = 32; | 333 foreman_cif.pipe.queue_length_packets = 32; |
250 foreman_cif.pipe.queue_delay_ms = 0; | 334 foreman_cif.pipe.queue_delay_ms = 0; |
251 foreman_cif.pipe.link_capacity_kbps = 500; | 335 foreman_cif.pipe.link_capacity_kbps = 500; |
252 RunTest(foreman_cif); | 336 RunTest(foreman_cif); |
253 } | 337 } |
254 | 338 |
255 TEST_F(FullStackTest, ForemanCif500kbps100ms) { | 339 TEST_F(FullStackTest, ForemanCif500kbps100ms) { |
256 VideoQualityTest::Params foreman_cif; | 340 VideoQualityTest::Params foreman_cif; |
257 foreman_cif.call.send_side_bwe = true; | 341 foreman_cif.call.send_side_bwe = true; |
258 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 342 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
259 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 343 2000000, false, "VP8", false, false, 1, |
344 0, 0, false, false, "foreman_cif"}; | |
260 foreman_cif.analyzer = {"foreman_cif_500kbps_100ms", 0.0, 0.0, | 345 foreman_cif.analyzer = {"foreman_cif_500kbps_100ms", 0.0, 0.0, |
261 kFullStackTestDurationSecs}; | 346 kFullStackTestDurationSecs}; |
262 foreman_cif.pipe.queue_length_packets = 0; | 347 foreman_cif.pipe.queue_length_packets = 0; |
263 foreman_cif.pipe.queue_delay_ms = 100; | 348 foreman_cif.pipe.queue_delay_ms = 100; |
264 foreman_cif.pipe.link_capacity_kbps = 500; | 349 foreman_cif.pipe.link_capacity_kbps = 500; |
265 RunTest(foreman_cif); | 350 RunTest(foreman_cif); |
266 } | 351 } |
267 | 352 |
268 TEST_F(FullStackTest, ForemanCif500kbps100msLimitedQueue) { | 353 TEST_F(FullStackTest, ForemanCif500kbps100msLimitedQueue) { |
269 VideoQualityTest::Params foreman_cif; | 354 VideoQualityTest::Params foreman_cif; |
270 foreman_cif.call.send_side_bwe = true; | 355 foreman_cif.call.send_side_bwe = true; |
271 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 356 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
272 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 357 2000000, false, "VP8", false, false, 1, |
358 0, 0, false, false, "foreman_cif"}; | |
273 foreman_cif.analyzer = {"foreman_cif_500kbps_100ms_32pkts_queue", 0.0, 0.0, | 359 foreman_cif.analyzer = {"foreman_cif_500kbps_100ms_32pkts_queue", 0.0, 0.0, |
274 kFullStackTestDurationSecs}; | 360 kFullStackTestDurationSecs}; |
275 foreman_cif.pipe.queue_length_packets = 32; | 361 foreman_cif.pipe.queue_length_packets = 32; |
276 foreman_cif.pipe.queue_delay_ms = 100; | 362 foreman_cif.pipe.queue_delay_ms = 100; |
277 foreman_cif.pipe.link_capacity_kbps = 500; | 363 foreman_cif.pipe.link_capacity_kbps = 500; |
278 RunTest(foreman_cif); | 364 RunTest(foreman_cif); |
279 } | 365 } |
280 | 366 |
281 TEST_F(FullStackTest, ForemanCif500kbps100msLimitedQueueRecvBwe) { | 367 TEST_F(FullStackTest, ForemanCif500kbps100msLimitedQueueRecvBwe) { |
282 VideoQualityTest::Params foreman_cif; | 368 VideoQualityTest::Params foreman_cif; |
283 foreman_cif.call.send_side_bwe = false; | 369 foreman_cif.call.send_side_bwe = false; |
284 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, 2000000, false, | 370 foreman_cif.video = {true, 352, 288, 30, 30000, 500000, |
285 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 371 2000000, false, "VP8", false, false, 1, |
372 0, 0, false, false, "foreman_cif"}; | |
286 foreman_cif.analyzer = {"foreman_cif_500kbps_100ms_32pkts_queue_recv_bwe", | 373 foreman_cif.analyzer = {"foreman_cif_500kbps_100ms_32pkts_queue_recv_bwe", |
287 0.0, 0.0, kFullStackTestDurationSecs}; | 374 0.0, 0.0, kFullStackTestDurationSecs}; |
288 foreman_cif.pipe.queue_length_packets = 32; | 375 foreman_cif.pipe.queue_length_packets = 32; |
289 foreman_cif.pipe.queue_delay_ms = 100; | 376 foreman_cif.pipe.queue_delay_ms = 100; |
290 foreman_cif.pipe.link_capacity_kbps = 500; | 377 foreman_cif.pipe.link_capacity_kbps = 500; |
291 RunTest(foreman_cif); | 378 RunTest(foreman_cif); |
292 } | 379 } |
293 | 380 |
294 TEST_F(FullStackTest, ForemanCif1000kbps100msLimitedQueue) { | 381 TEST_F(FullStackTest, ForemanCif1000kbps100msLimitedQueue) { |
295 VideoQualityTest::Params foreman_cif; | 382 VideoQualityTest::Params foreman_cif; |
296 foreman_cif.call.send_side_bwe = true; | 383 foreman_cif.call.send_side_bwe = true; |
297 foreman_cif.video = {true, 352, 288, 30, 30000, 2000000, 2000000, false, | 384 foreman_cif.video = {true, 352, 288, 30, 30000, 2000000, |
298 "VP8", 1, 0, 0, false, false, "foreman_cif"}; | 385 2000000, false, "VP8", false, false, 1, |
386 0, 0, false, false, "foreman_cif"}; | |
299 foreman_cif.analyzer = {"foreman_cif_1000kbps_100ms_32pkts_queue", 0.0, 0.0, | 387 foreman_cif.analyzer = {"foreman_cif_1000kbps_100ms_32pkts_queue", 0.0, 0.0, |
300 kFullStackTestDurationSecs}; | 388 kFullStackTestDurationSecs}; |
301 foreman_cif.pipe.queue_length_packets = 32; | 389 foreman_cif.pipe.queue_length_packets = 32; |
302 foreman_cif.pipe.queue_delay_ms = 100; | 390 foreman_cif.pipe.queue_delay_ms = 100; |
303 foreman_cif.pipe.link_capacity_kbps = 1000; | 391 foreman_cif.pipe.link_capacity_kbps = 1000; |
304 RunTest(foreman_cif); | 392 RunTest(foreman_cif); |
305 } | 393 } |
306 | 394 |
307 // TODO(sprang): Remove this if we have the similar ModerateLimits below? | 395 // TODO(sprang): Remove this if we have the similar ModerateLimits below? |
308 TEST_F(FullStackTest, ConferenceMotionHd2000kbps100msLimitedQueue) { | 396 TEST_F(FullStackTest, ConferenceMotionHd2000kbps100msLimitedQueue) { |
309 VideoQualityTest::Params conf_motion_hd; | 397 VideoQualityTest::Params conf_motion_hd; |
310 conf_motion_hd.call.send_side_bwe = true; | 398 conf_motion_hd.call.send_side_bwe = true; |
311 conf_motion_hd.video = { | 399 conf_motion_hd.video = {true, |
312 true, 1280, 720, 50, 30000, | 400 1280, |
313 3000000, 3000000, false, "VP8", 1, | 401 720, |
314 0, 0, false, false, "ConferenceMotion_1280_720_50"}; | 402 50, |
403 30000, | |
404 3000000, | |
405 3000000, | |
406 false, | |
407 "VP8", | |
408 false, | |
409 false, | |
410 1, | |
411 0, | |
412 0, | |
413 false, | |
414 false, | |
415 "ConferenceMotion_1280_720_50"}; | |
315 conf_motion_hd.analyzer = {"conference_motion_hd_2000kbps_100ms_32pkts_queue", | 416 conf_motion_hd.analyzer = {"conference_motion_hd_2000kbps_100ms_32pkts_queue", |
316 0.0, 0.0, kFullStackTestDurationSecs}; | 417 0.0, 0.0, kFullStackTestDurationSecs}; |
317 conf_motion_hd.pipe.queue_length_packets = 32; | 418 conf_motion_hd.pipe.queue_length_packets = 32; |
318 conf_motion_hd.pipe.queue_delay_ms = 100; | 419 conf_motion_hd.pipe.queue_delay_ms = 100; |
319 conf_motion_hd.pipe.link_capacity_kbps = 2000; | 420 conf_motion_hd.pipe.link_capacity_kbps = 2000; |
320 RunTest(conf_motion_hd); | 421 RunTest(conf_motion_hd); |
321 } | 422 } |
322 | 423 |
323 TEST_F(FullStackTest, ConferenceMotionHd1TLModerateLimits) { | 424 TEST_F(FullStackTest, ConferenceMotionHd1TLModerateLimits) { |
324 VideoQualityTest::Params conf_motion_hd; | 425 VideoQualityTest::Params conf_motion_hd; |
325 conf_motion_hd.call.send_side_bwe = true; | 426 conf_motion_hd.call.send_side_bwe = true; |
326 conf_motion_hd.video = { | 427 conf_motion_hd.video = {true, |
327 true, 1280, 720, 50, 30000, | 428 1280, |
328 3000000, 3000000, false, "VP8", 1, | 429 720, |
329 -1, 0, false, false, "ConferenceMotion_1280_720_50"}; | 430 50, |
431 30000, | |
432 3000000, | |
433 3000000, | |
434 false, | |
435 "VP8", | |
436 false, | |
437 false, | |
438 1, | |
439 -1, | |
440 0, | |
441 false, | |
442 false, | |
443 "ConferenceMotion_1280_720_50"}; | |
330 conf_motion_hd.analyzer = {"conference_motion_hd_1tl_moderate_limits", 0.0, | 444 conf_motion_hd.analyzer = {"conference_motion_hd_1tl_moderate_limits", 0.0, |
331 0.0, kFullStackTestDurationSecs}; | 445 0.0, kFullStackTestDurationSecs}; |
332 conf_motion_hd.pipe.queue_length_packets = 50; | 446 conf_motion_hd.pipe.queue_length_packets = 50; |
333 conf_motion_hd.pipe.loss_percent = 3; | 447 conf_motion_hd.pipe.loss_percent = 3; |
334 conf_motion_hd.pipe.queue_delay_ms = 100; | 448 conf_motion_hd.pipe.queue_delay_ms = 100; |
335 conf_motion_hd.pipe.link_capacity_kbps = 2000; | 449 conf_motion_hd.pipe.link_capacity_kbps = 2000; |
336 RunTest(conf_motion_hd); | 450 RunTest(conf_motion_hd); |
337 } | 451 } |
338 | 452 |
339 TEST_F(FullStackTest, ConferenceMotionHd2TLModerateLimits) { | 453 TEST_F(FullStackTest, ConferenceMotionHd2TLModerateLimits) { |
340 VideoQualityTest::Params conf_motion_hd; | 454 VideoQualityTest::Params conf_motion_hd; |
341 conf_motion_hd.call.send_side_bwe = true; | 455 conf_motion_hd.call.send_side_bwe = true; |
342 conf_motion_hd.video = { | 456 conf_motion_hd.video = {true, |
343 true, 1280, 720, 50, 30000, | 457 1280, |
344 3000000, 3000000, false, "VP8", 2, | 458 720, |
345 -1, 0, false, false, "ConferenceMotion_1280_720_50"}; | 459 50, |
460 30000, | |
461 3000000, | |
462 3000000, | |
463 false, | |
464 "VP8", | |
465 false, | |
466 false, | |
467 2, | |
468 -1, | |
469 0, | |
470 false, | |
471 false, | |
472 "ConferenceMotion_1280_720_50"}; | |
346 conf_motion_hd.analyzer = {"conference_motion_hd_2tl_moderate_limits", 0.0, | 473 conf_motion_hd.analyzer = {"conference_motion_hd_2tl_moderate_limits", 0.0, |
347 0.0, kFullStackTestDurationSecs}; | 474 0.0, kFullStackTestDurationSecs}; |
348 conf_motion_hd.pipe.queue_length_packets = 50; | 475 conf_motion_hd.pipe.queue_length_packets = 50; |
349 conf_motion_hd.pipe.loss_percent = 3; | 476 conf_motion_hd.pipe.loss_percent = 3; |
350 conf_motion_hd.pipe.queue_delay_ms = 100; | 477 conf_motion_hd.pipe.queue_delay_ms = 100; |
351 conf_motion_hd.pipe.link_capacity_kbps = 2000; | 478 conf_motion_hd.pipe.link_capacity_kbps = 2000; |
352 RunTest(conf_motion_hd); | 479 RunTest(conf_motion_hd); |
353 } | 480 } |
354 | 481 |
355 TEST_F(FullStackTest, ConferenceMotionHd3TLModerateLimits) { | 482 TEST_F(FullStackTest, ConferenceMotionHd3TLModerateLimits) { |
356 VideoQualityTest::Params conf_motion_hd; | 483 VideoQualityTest::Params conf_motion_hd; |
357 conf_motion_hd.call.send_side_bwe = true; | 484 conf_motion_hd.call.send_side_bwe = true; |
358 conf_motion_hd.video = { | 485 conf_motion_hd.video = {true, |
359 true, 1280, 720, 50, 30000, | 486 1280, |
360 3000000, 3000000, false, "VP8", 3, | 487 720, |
361 -1, 0, false, false, "ConferenceMotion_1280_720_50"}; | 488 50, |
489 30000, | |
490 3000000, | |
491 3000000, | |
492 false, | |
493 "VP8", | |
494 false, | |
495 false, | |
496 3, | |
497 -1, | |
498 0, | |
499 false, | |
500 false, | |
501 "ConferenceMotion_1280_720_50"}; | |
362 conf_motion_hd.analyzer = {"conference_motion_hd_3tl_moderate_limits", 0.0, | 502 conf_motion_hd.analyzer = {"conference_motion_hd_3tl_moderate_limits", 0.0, |
363 0.0, kFullStackTestDurationSecs}; | 503 0.0, kFullStackTestDurationSecs}; |
364 conf_motion_hd.pipe.queue_length_packets = 50; | 504 conf_motion_hd.pipe.queue_length_packets = 50; |
365 conf_motion_hd.pipe.loss_percent = 3; | 505 conf_motion_hd.pipe.loss_percent = 3; |
366 conf_motion_hd.pipe.queue_delay_ms = 100; | 506 conf_motion_hd.pipe.queue_delay_ms = 100; |
367 conf_motion_hd.pipe.link_capacity_kbps = 2000; | 507 conf_motion_hd.pipe.link_capacity_kbps = 2000; |
368 RunTest(conf_motion_hd); | 508 RunTest(conf_motion_hd); |
369 } | 509 } |
370 | 510 |
371 TEST_F(FullStackTest, ConferenceMotionHd4TLModerateLimits) { | 511 TEST_F(FullStackTest, ConferenceMotionHd4TLModerateLimits) { |
372 VideoQualityTest::Params conf_motion_hd; | 512 VideoQualityTest::Params conf_motion_hd; |
373 conf_motion_hd.call.send_side_bwe = true; | 513 conf_motion_hd.call.send_side_bwe = true; |
374 conf_motion_hd.video = { | 514 conf_motion_hd.video = {true, |
375 true, 1280, 720, 50, 30000, | 515 1280, |
376 3000000, 3000000, false, "VP8", 4, | 516 720, |
377 -1, 0, false, false, "ConferenceMotion_1280_720_50"}; | 517 50, |
518 30000, | |
519 3000000, | |
520 3000000, | |
521 false, | |
522 "VP8", | |
523 false, | |
524 false, | |
525 4, | |
526 -1, | |
527 0, | |
528 false, | |
529 false, | |
530 "ConferenceMotion_1280_720_50"}; | |
378 conf_motion_hd.analyzer = {"conference_motion_hd_4tl_moderate_limits", 0.0, | 531 conf_motion_hd.analyzer = {"conference_motion_hd_4tl_moderate_limits", 0.0, |
379 0.0, kFullStackTestDurationSecs}; | 532 0.0, kFullStackTestDurationSecs}; |
380 conf_motion_hd.pipe.queue_length_packets = 50; | 533 conf_motion_hd.pipe.queue_length_packets = 50; |
381 conf_motion_hd.pipe.loss_percent = 3; | 534 conf_motion_hd.pipe.loss_percent = 3; |
382 conf_motion_hd.pipe.queue_delay_ms = 100; | 535 conf_motion_hd.pipe.queue_delay_ms = 100; |
383 conf_motion_hd.pipe.link_capacity_kbps = 2000; | 536 conf_motion_hd.pipe.link_capacity_kbps = 2000; |
384 RunTest(conf_motion_hd); | 537 RunTest(conf_motion_hd); |
385 } | 538 } |
386 | 539 |
387 TEST_F(FullStackTest, ConferenceMotionHd3TLModerateLimitsAltTLPattern) { | 540 TEST_F(FullStackTest, ConferenceMotionHd3TLModerateLimitsAltTLPattern) { |
388 test::ScopedFieldTrials field_trial("WebRTC-UseShortVP8TL3Pattern/Enabled/"); | 541 test::ScopedFieldTrials field_trial("WebRTC-UseShortVP8TL3Pattern/Enabled/"); |
389 VideoQualityTest::Params conf_motion_hd; | 542 VideoQualityTest::Params conf_motion_hd; |
390 conf_motion_hd.call.send_side_bwe = true; | 543 conf_motion_hd.call.send_side_bwe = true; |
391 conf_motion_hd.video = { | 544 conf_motion_hd.video = {true, |
392 true, 1280, 720, 50, 30000, | 545 1280, |
393 3000000, 3000000, false, "VP8", 3, | 546 720, |
394 -1, 0, false, false, "ConferenceMotion_1280_720_50"}; | 547 50, |
548 30000, | |
549 3000000, | |
550 3000000, | |
551 false, | |
552 "VP8", | |
553 false, | |
554 false, | |
555 3, | |
556 -1, | |
557 0, | |
558 false, | |
559 false, | |
560 "ConferenceMotion_1280_720_50"}; | |
395 conf_motion_hd.analyzer = {"conference_motion_hd_3tl_alt_moderate_limits", | 561 conf_motion_hd.analyzer = {"conference_motion_hd_3tl_alt_moderate_limits", |
396 0.0, 0.0, kFullStackTestDurationSecs}; | 562 0.0, 0.0, kFullStackTestDurationSecs}; |
397 conf_motion_hd.pipe.queue_length_packets = 50; | 563 conf_motion_hd.pipe.queue_length_packets = 50; |
398 conf_motion_hd.pipe.loss_percent = 3; | 564 conf_motion_hd.pipe.loss_percent = 3; |
399 conf_motion_hd.pipe.queue_delay_ms = 100; | 565 conf_motion_hd.pipe.queue_delay_ms = 100; |
400 conf_motion_hd.pipe.link_capacity_kbps = 2000; | 566 conf_motion_hd.pipe.link_capacity_kbps = 2000; |
401 RunTest(conf_motion_hd); | 567 RunTest(conf_motion_hd); |
402 } | 568 } |
403 | 569 |
404 #if !defined(RTC_DISABLE_VP9) | 570 #if !defined(RTC_DISABLE_VP9) |
405 TEST_F(FullStackTest, ConferenceMotionHd2000kbps100msLimitedQueueVP9) { | 571 TEST_F(FullStackTest, ConferenceMotionHd2000kbps100msLimitedQueueVP9) { |
406 VideoQualityTest::Params conf_motion_hd; | 572 VideoQualityTest::Params conf_motion_hd; |
407 conf_motion_hd.call.send_side_bwe = true; | 573 conf_motion_hd.call.send_side_bwe = true; |
408 conf_motion_hd.video = { | 574 conf_motion_hd.video = {true, |
409 true, 1280, 720, 50, 30000, | 575 1280, |
410 3000000, 3000000, false, "VP9", 1, | 576 720, |
411 0, 0, false, false, "ConferenceMotion_1280_720_50"}; | 577 50, |
578 30000, | |
579 3000000, | |
580 3000000, | |
581 false, | |
582 "VP9", | |
583 false, | |
584 false, | |
585 1, | |
586 0, | |
587 0, | |
588 false, | |
589 false, | |
590 "ConferenceMotion_1280_720_50"}; | |
sprang_webrtc
2017/09/12 13:08:47
Weird formatting. Is this clang-format's fault?
brandtr
2017/09/13 11:17:24
Yes :( Maybe this is a sign that we should split u
| |
412 conf_motion_hd.analyzer = { | 591 conf_motion_hd.analyzer = { |
413 "conference_motion_hd_2000kbps_100ms_32pkts_queue_vp9", 0.0, 0.0, | 592 "conference_motion_hd_2000kbps_100ms_32pkts_queue_vp9", 0.0, 0.0, |
414 kFullStackTestDurationSecs}; | 593 kFullStackTestDurationSecs}; |
415 conf_motion_hd.pipe.queue_length_packets = 32; | 594 conf_motion_hd.pipe.queue_length_packets = 32; |
416 conf_motion_hd.pipe.queue_delay_ms = 100; | 595 conf_motion_hd.pipe.queue_delay_ms = 100; |
417 conf_motion_hd.pipe.link_capacity_kbps = 2000; | 596 conf_motion_hd.pipe.link_capacity_kbps = 2000; |
418 RunTest(conf_motion_hd); | 597 RunTest(conf_motion_hd); |
419 } | 598 } |
420 #endif | 599 #endif |
421 | 600 |
422 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL) { | 601 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL) { |
423 VideoQualityTest::Params screenshare; | 602 VideoQualityTest::Params screenshare; |
424 screenshare.call.send_side_bwe = true; | 603 screenshare.call.send_side_bwe = true; |
425 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 604 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
426 "VP8", 2, 1, 400000, false, false, ""}; | 605 2000000, false, "VP8", false, false, 2, |
606 1, 400000, false, false, ""}; | |
427 screenshare.screenshare = {true, false, 10}; | 607 screenshare.screenshare = {true, false, 10}; |
428 screenshare.analyzer = {"screenshare_slides", 0.0, 0.0, | 608 screenshare.analyzer = {"screenshare_slides", 0.0, 0.0, |
429 kFullStackTestDurationSecs}; | 609 kFullStackTestDurationSecs}; |
430 RunTest(screenshare); | 610 RunTest(screenshare); |
431 } | 611 } |
432 | 612 |
433 TEST_F(FullStackTest, ScreenshareSlidesVP8_3TL_Simulcast) { | 613 TEST_F(FullStackTest, ScreenshareSlidesVP8_3TL_Simulcast) { |
434 test::ScopedFieldTrials field_trial(kScreenshareSimulcastExperiment); | 614 test::ScopedFieldTrials field_trial(kScreenshareSimulcastExperiment); |
435 VideoQualityTest::Params screenshare; | 615 VideoQualityTest::Params screenshare; |
436 screenshare.call.send_side_bwe = true; | 616 screenshare.call.send_side_bwe = true; |
437 screenshare.screenshare = {true, false, 10}; | 617 screenshare.screenshare = {true, false, 10}; |
438 screenshare.video = {true, 1850, 1110, 5, 800000, | 618 screenshare.video = {true, 1850, 1110, 5, 800000, 2500000, |
439 2500000, 2500000, false, "VP8", 3, | 619 2500000, false, "VP8", false, false, 3, |
440 2, 400000, false, false, ""}; | 620 2, 400000, false, false, ""}; |
441 screenshare.analyzer = {"screenshare_slides_simulcast", 0.0, 0.0, | 621 screenshare.analyzer = {"screenshare_slides_simulcast", 0.0, 0.0, |
442 kFullStackTestDurationSecs}; | 622 kFullStackTestDurationSecs}; |
443 VideoQualityTest::Params screenshare_params_high; | 623 VideoQualityTest::Params screenshare_params_high; |
444 screenshare_params_high.video = {true, 1850, 1110, 5, 800000, | 624 screenshare_params_high.video = { |
445 2500000, 2500000, false, "VP8", 3, | 625 true, 1850, 1110, 5, 800000, 2500000, 2500000, false, "VP8", |
446 0, 400000, false, false, ""}; | 626 false, false, 3, 0, 400000, false, false, ""}; |
447 VideoQualityTest::Params screenshare_params_low; | 627 VideoQualityTest::Params screenshare_params_low; |
448 screenshare_params_low.video = {true, 1850, 1110, 5, 50000, | 628 screenshare_params_low.video = {true, 1850, 1110, 5, 50000, 200000, |
449 200000, 2000000, false, "VP8", 2, | 629 2000000, false, "VP8", false, false, 2, |
450 0, 400000, false, false, ""}; | 630 0, 400000, false, false, ""}; |
451 | 631 |
452 std::vector<VideoStream> streams = { | 632 std::vector<VideoStream> streams = { |
453 DefaultVideoStream(screenshare_params_low), | 633 DefaultVideoStream(screenshare_params_low), |
454 DefaultVideoStream(screenshare_params_high)}; | 634 DefaultVideoStream(screenshare_params_high)}; |
455 screenshare.ss = {streams, 1, 1, 0, std::vector<SpatialLayer>(), false}; | 635 screenshare.ss = {streams, 1, 1, 0, std::vector<SpatialLayer>(), false}; |
456 RunTest(screenshare); | 636 RunTest(screenshare); |
457 } | 637 } |
458 | 638 |
459 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_Scroll) { | 639 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_Scroll) { |
460 VideoQualityTest::Params config; | 640 VideoQualityTest::Params config; |
461 config.call.send_side_bwe = true; | 641 config.call.send_side_bwe = true; |
462 config.video = {true, 1850, 1110 / 2, 5, 50000, 200000, 2000000, false, | 642 config.video = {true, 1850, 1110 / 2, 5, 50000, 200000, |
463 "VP8", 2, 1, 400000, false, false, ""}; | 643 2000000, false, "VP8", false, false, 2, |
644 1, 400000, false, false, ""}; | |
464 config.screenshare = {true, false, 10, 2}; | 645 config.screenshare = {true, false, 10, 2}; |
465 config.analyzer = {"screenshare_slides_scrolling", 0.0, 0.0, | 646 config.analyzer = {"screenshare_slides_scrolling", 0.0, 0.0, |
466 kFullStackTestDurationSecs}; | 647 kFullStackTestDurationSecs}; |
467 RunTest(config); | 648 RunTest(config); |
468 } | 649 } |
469 | 650 |
470 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_LossyNet) { | 651 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_LossyNet) { |
471 VideoQualityTest::Params screenshare; | 652 VideoQualityTest::Params screenshare; |
472 screenshare.call.send_side_bwe = true; | 653 screenshare.call.send_side_bwe = true; |
473 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 654 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
474 "VP8", 2, 1, 400000, false, false, ""}; | 655 2000000, false, "VP8", false, false, 2, |
656 1, 400000, false, false, ""}; | |
475 screenshare.screenshare = {true, false, 10}; | 657 screenshare.screenshare = {true, false, 10}; |
476 screenshare.analyzer = {"screenshare_slides_lossy_net", 0.0, 0.0, | 658 screenshare.analyzer = {"screenshare_slides_lossy_net", 0.0, 0.0, |
477 kFullStackTestDurationSecs}; | 659 kFullStackTestDurationSecs}; |
478 screenshare.pipe.loss_percent = 5; | 660 screenshare.pipe.loss_percent = 5; |
479 screenshare.pipe.queue_delay_ms = 200; | 661 screenshare.pipe.queue_delay_ms = 200; |
480 screenshare.pipe.link_capacity_kbps = 500; | 662 screenshare.pipe.link_capacity_kbps = 500; |
481 RunTest(screenshare); | 663 RunTest(screenshare); |
482 } | 664 } |
483 | 665 |
484 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_VeryLossyNet) { | 666 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_VeryLossyNet) { |
485 VideoQualityTest::Params screenshare; | 667 VideoQualityTest::Params screenshare; |
486 screenshare.call.send_side_bwe = true; | 668 screenshare.call.send_side_bwe = true; |
487 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 669 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
488 "VP8", 2, 1, 400000, false, false, ""}; | 670 2000000, false, "VP8", false, false, 2, |
671 1, 400000, false, false, ""}; | |
489 screenshare.screenshare = {true, false, 10}; | 672 screenshare.screenshare = {true, false, 10}; |
490 screenshare.analyzer = {"screenshare_slides_very_lossy", 0.0, 0.0, | 673 screenshare.analyzer = {"screenshare_slides_very_lossy", 0.0, 0.0, |
491 kFullStackTestDurationSecs}; | 674 kFullStackTestDurationSecs}; |
492 screenshare.pipe.loss_percent = 10; | 675 screenshare.pipe.loss_percent = 10; |
493 screenshare.pipe.queue_delay_ms = 200; | 676 screenshare.pipe.queue_delay_ms = 200; |
494 screenshare.pipe.link_capacity_kbps = 500; | 677 screenshare.pipe.link_capacity_kbps = 500; |
495 RunTest(screenshare); | 678 RunTest(screenshare); |
496 } | 679 } |
497 | 680 |
498 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_LossyNetRestrictedQueue) { | 681 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_LossyNetRestrictedQueue) { |
499 VideoQualityTest::Params screenshare; | 682 VideoQualityTest::Params screenshare; |
500 screenshare.call.send_side_bwe = true; | 683 screenshare.call.send_side_bwe = true; |
501 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 684 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
502 "VP8", 2, 1, 400000, false, false, ""}; | 685 2000000, false, "VP8", false, false, 2, |
686 1, 400000, false, false, ""}; | |
503 screenshare.screenshare = {true, false, 10}; | 687 screenshare.screenshare = {true, false, 10}; |
504 screenshare.analyzer = {"screenshare_slides_lossy_limited", 0.0, 0.0, | 688 screenshare.analyzer = {"screenshare_slides_lossy_limited", 0.0, 0.0, |
505 kFullStackTestDurationSecs}; | 689 kFullStackTestDurationSecs}; |
506 screenshare.pipe.loss_percent = 5; | 690 screenshare.pipe.loss_percent = 5; |
507 screenshare.pipe.link_capacity_kbps = 200; | 691 screenshare.pipe.link_capacity_kbps = 200; |
508 screenshare.pipe.queue_length_packets = 30; | 692 screenshare.pipe.queue_length_packets = 30; |
509 | 693 |
510 RunTest(screenshare); | 694 RunTest(screenshare); |
511 } | 695 } |
512 | 696 |
513 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_ModeratelyRestricted) { | 697 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_ModeratelyRestricted) { |
514 VideoQualityTest::Params screenshare; | 698 VideoQualityTest::Params screenshare; |
515 screenshare.call.send_side_bwe = true; | 699 screenshare.call.send_side_bwe = true; |
516 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 700 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
517 "VP8", 2, 1, 400000, false, false, ""}; | 701 2000000, false, "VP8", false, false, 2, |
702 1, 400000, false, false, ""}; | |
518 screenshare.screenshare = {true, false, 10}; | 703 screenshare.screenshare = {true, false, 10}; |
519 screenshare.analyzer = {"screenshare_slides_moderately_restricted", 0.0, 0.0, | 704 screenshare.analyzer = {"screenshare_slides_moderately_restricted", 0.0, 0.0, |
520 kFullStackTestDurationSecs}; | 705 kFullStackTestDurationSecs}; |
521 screenshare.pipe.loss_percent = 1; | 706 screenshare.pipe.loss_percent = 1; |
522 screenshare.pipe.link_capacity_kbps = 1200; | 707 screenshare.pipe.link_capacity_kbps = 1200; |
523 screenshare.pipe.queue_length_packets = 30; | 708 screenshare.pipe.queue_length_packets = 30; |
524 | 709 |
525 RunTest(screenshare); | 710 RunTest(screenshare); |
526 } | 711 } |
527 | 712 |
528 // TODO(sprang): Retire these tests once experiment is removed. | 713 // TODO(sprang): Retire these tests once experiment is removed. |
529 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_LossyNetRestrictedQueue_ALR) { | 714 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_LossyNetRestrictedQueue_ALR) { |
530 test::ScopedFieldTrials field_trial(kAlrProbingExperiment); | 715 test::ScopedFieldTrials field_trial(kAlrProbingExperiment); |
531 VideoQualityTest::Params screenshare; | 716 VideoQualityTest::Params screenshare; |
532 screenshare.call.send_side_bwe = true; | 717 screenshare.call.send_side_bwe = true; |
533 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 718 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
534 "VP8", 2, 1, 400000, false, false, ""}; | 719 2000000, false, "VP8", false, false, 2, |
720 1, 400000, false, false, ""}; | |
535 screenshare.screenshare = {true, false, 10}; | 721 screenshare.screenshare = {true, false, 10}; |
536 screenshare.analyzer = {"screenshare_slides_lossy_limited_ALR", 0.0, 0.0, | 722 screenshare.analyzer = {"screenshare_slides_lossy_limited_ALR", 0.0, 0.0, |
537 kFullStackTestDurationSecs}; | 723 kFullStackTestDurationSecs}; |
538 screenshare.pipe.loss_percent = 5; | 724 screenshare.pipe.loss_percent = 5; |
539 screenshare.pipe.link_capacity_kbps = 200; | 725 screenshare.pipe.link_capacity_kbps = 200; |
540 screenshare.pipe.queue_length_packets = 30; | 726 screenshare.pipe.queue_length_packets = 30; |
541 | 727 |
542 RunTest(screenshare); | 728 RunTest(screenshare); |
543 } | 729 } |
544 | 730 |
545 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_ALR) { | 731 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_ALR) { |
546 test::ScopedFieldTrials field_trial(kAlrProbingExperiment); | 732 test::ScopedFieldTrials field_trial(kAlrProbingExperiment); |
547 VideoQualityTest::Params screenshare; | 733 VideoQualityTest::Params screenshare; |
548 screenshare.call.send_side_bwe = true; | 734 screenshare.call.send_side_bwe = true; |
549 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 735 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
550 "VP8", 2, 1, 400000, false, false, ""}; | 736 2000000, false, "VP8", false, false, 2, |
737 1, 400000, false, false, ""}; | |
551 screenshare.screenshare = {true, false, 10}; | 738 screenshare.screenshare = {true, false, 10}; |
552 screenshare.analyzer = {"screenshare_slides_ALR", 0.0, 0.0, | 739 screenshare.analyzer = {"screenshare_slides_ALR", 0.0, 0.0, |
553 kFullStackTestDurationSecs}; | 740 kFullStackTestDurationSecs}; |
554 RunTest(screenshare); | 741 RunTest(screenshare); |
555 } | 742 } |
556 | 743 |
557 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_ModeratelyRestricted_ALR) { | 744 TEST_F(FullStackTest, ScreenshareSlidesVP8_2TL_ModeratelyRestricted_ALR) { |
558 test::ScopedFieldTrials field_trial(kAlrProbingExperiment); | 745 test::ScopedFieldTrials field_trial(kAlrProbingExperiment); |
559 VideoQualityTest::Params screenshare; | 746 VideoQualityTest::Params screenshare; |
560 screenshare.call.send_side_bwe = true; | 747 screenshare.call.send_side_bwe = true; |
561 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 748 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
562 "VP8", 2, 1, 400000, false, false, ""}; | 749 2000000, false, "VP8", false, false, 2, |
750 1, 400000, false, false, ""}; | |
563 screenshare.screenshare = {true, false, 10}; | 751 screenshare.screenshare = {true, false, 10}; |
564 screenshare.analyzer = {"screenshare_slides_moderately_restricted_ALR", 0.0, | 752 screenshare.analyzer = {"screenshare_slides_moderately_restricted_ALR", 0.0, |
565 0.0, kFullStackTestDurationSecs}; | 753 0.0, kFullStackTestDurationSecs}; |
566 screenshare.pipe.loss_percent = 1; | 754 screenshare.pipe.loss_percent = 1; |
567 screenshare.pipe.link_capacity_kbps = 1200; | 755 screenshare.pipe.link_capacity_kbps = 1200; |
568 screenshare.pipe.queue_length_packets = 30; | 756 screenshare.pipe.queue_length_packets = 30; |
569 | 757 |
570 RunTest(screenshare); | 758 RunTest(screenshare); |
571 } | 759 } |
572 | 760 |
573 TEST_F(FullStackTest, ScreenshareSlidesVP8_3TL_Simulcast_ALR) { | 761 TEST_F(FullStackTest, ScreenshareSlidesVP8_3TL_Simulcast_ALR) { |
574 test::ScopedFieldTrials field_trial(kScreenshareSimulcastExperiment + | 762 test::ScopedFieldTrials field_trial(kScreenshareSimulcastExperiment + |
575 kAlrProbingExperiment); | 763 kAlrProbingExperiment); |
576 VideoQualityTest::Params screenshare; | 764 VideoQualityTest::Params screenshare; |
577 screenshare.call.send_side_bwe = true; | 765 screenshare.call.send_side_bwe = true; |
578 screenshare.screenshare = {true, false, 10}; | 766 screenshare.screenshare = {true, false, 10}; |
579 screenshare.video = {true, 1850, 1110, 5, 800000, | 767 screenshare.video = {true, 1850, 1110, 5, 800000, 2500000, |
580 2500000, 2500000, false, "VP8", 3, | 768 2500000, false, "VP8", false, false, 3, |
581 2, 400000, false, false, ""}; | 769 2, 400000, false, false, ""}; |
582 screenshare.analyzer = {"screenshare_slides_simulcast_alr", 0.0, 0.0, | 770 screenshare.analyzer = {"screenshare_slides_simulcast_alr", 0.0, 0.0, |
583 kFullStackTestDurationSecs}; | 771 kFullStackTestDurationSecs}; |
584 VideoQualityTest::Params screenshare_params_high; | 772 VideoQualityTest::Params screenshare_params_high; |
585 screenshare_params_high.video = {true, 1850, 1110, 5, 800000, | 773 screenshare_params_high.video = { |
586 2500000, 2500000, false, "VP8", 3, | 774 true, 1850, 1110, 5, 800000, 2500000, 2500000, false, "VP8", |
587 0, 400000, false, false, ""}; | 775 false, false, 3, 0, 400000, false, false, ""}; |
588 VideoQualityTest::Params screenshare_params_low; | 776 VideoQualityTest::Params screenshare_params_low; |
589 screenshare_params_low.video = {true, 1850, 1110, 5, 50000, | 777 screenshare_params_low.video = {true, 1850, 1110, 5, 50000, 200000, |
590 200000, 2000000, false, "VP8", 2, | 778 2000000, false, "VP8", false, false, 2, |
591 0, 400000, false, false, ""}; | 779 0, 400000, false, false, ""}; |
592 | 780 |
593 std::vector<VideoStream> streams = { | 781 std::vector<VideoStream> streams = { |
594 DefaultVideoStream(screenshare_params_low), | 782 DefaultVideoStream(screenshare_params_low), |
595 DefaultVideoStream(screenshare_params_high)}; | 783 DefaultVideoStream(screenshare_params_high)}; |
596 screenshare.ss = {streams, 1, 1, 0, std::vector<SpatialLayer>(), false}; | 784 screenshare.ss = {streams, 1, 1, 0, std::vector<SpatialLayer>(), false}; |
597 RunTest(screenshare); | 785 RunTest(screenshare); |
598 } | 786 } |
599 | 787 |
600 const VideoQualityTest::Params::Video kSvcVp9Video = { | 788 const VideoQualityTest::Params::Video kSvcVp9Video = { |
601 true, 1280, 720, 30, 800000, | 789 true, |
602 2500000, 2500000, false, "VP9", 3, | 790 1280, |
603 2, 400000, false, false, "ConferenceMotion_1280_720_50"}; | 791 720, |
792 30, | |
793 800000, | |
794 2500000, | |
795 2500000, | |
796 false, | |
797 "VP9", | |
798 false, | |
799 false, | |
800 3, | |
801 2, | |
802 400000, | |
803 false, | |
804 false, | |
805 "ConferenceMotion_1280_720_50"}; | |
604 | 806 |
605 const VideoQualityTest::Params::Video kSimulcastVp8VideoHigh = { | 807 const VideoQualityTest::Params::Video kSimulcastVp8VideoHigh = { |
606 true, 1280, 720, 30, 800000, | 808 true, |
607 2500000, 2500000, false, "VP8", 3, | 809 1280, |
608 2, 400000, false, false, "ConferenceMotion_1280_720_50"}; | 810 720, |
811 30, | |
812 800000, | |
813 2500000, | |
814 2500000, | |
815 false, | |
816 "VP8", | |
817 false, | |
818 false, | |
819 3, | |
820 2, | |
821 400000, | |
822 false, | |
823 false, | |
824 "ConferenceMotion_1280_720_50"}; | |
609 | 825 |
610 const VideoQualityTest::Params::Video kSimulcastVp8VideoMedium = { | 826 const VideoQualityTest::Params::Video kSimulcastVp8VideoMedium = { |
611 true, 640, 360, 30, 150000, | 827 true, |
612 500000, 700000, false, "VP8", 3, | 828 640, |
613 2, 400000, false, false, "ConferenceMotion_1280_720_50"}; | 829 360, |
830 30, | |
831 150000, | |
832 500000, | |
833 700000, | |
834 false, | |
835 "VP8", | |
836 false, | |
837 false, | |
838 3, | |
839 2, | |
840 400000, | |
841 false, | |
842 false, | |
843 "ConferenceMotion_1280_720_50"}; | |
614 | 844 |
615 const VideoQualityTest::Params::Video kSimulcastVp8VideoLow = { | 845 const VideoQualityTest::Params::Video kSimulcastVp8VideoLow = { |
616 true, 320, 180, 30, 30000, | 846 true, |
617 150000, 200000, false, "VP8", 3, | 847 320, |
618 2, 400000, false, false, "ConferenceMotion_1280_720_50"}; | 848 180, |
849 30, | |
850 30000, | |
851 150000, | |
852 200000, | |
853 false, | |
854 "VP8", | |
855 false, | |
856 false, | |
857 3, | |
858 2, | |
859 400000, | |
860 false, | |
861 false, | |
862 "ConferenceMotion_1280_720_50"}; | |
619 | 863 |
620 #if !defined(RTC_DISABLE_VP9) | 864 #if !defined(RTC_DISABLE_VP9) |
621 TEST_F(FullStackTest, ScreenshareSlidesVP9_2SL) { | 865 TEST_F(FullStackTest, ScreenshareSlidesVP9_2SL) { |
622 VideoQualityTest::Params screenshare; | 866 VideoQualityTest::Params screenshare; |
623 screenshare.call.send_side_bwe = true; | 867 screenshare.call.send_side_bwe = true; |
624 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, 2000000, false, | 868 screenshare.video = {true, 1850, 1110, 5, 50000, 200000, |
625 "VP9", 1, 0, 400000, false, false, ""}; | 869 2000000, false, "VP9", false, false, 1, |
870 0, 400000, false, false, ""}; | |
626 screenshare.screenshare = {true, false, 10}; | 871 screenshare.screenshare = {true, false, 10}; |
627 screenshare.analyzer = {"screenshare_slides_vp9_2sl", 0.0, 0.0, | 872 screenshare.analyzer = {"screenshare_slides_vp9_2sl", 0.0, 0.0, |
628 kFullStackTestDurationSecs}; | 873 kFullStackTestDurationSecs}; |
629 screenshare.ss = {std::vector<VideoStream>(), 0, 2, 1, | 874 screenshare.ss = {std::vector<VideoStream>(), 0, 2, 1, |
630 std::vector<SpatialLayer>(), false}; | 875 std::vector<SpatialLayer>(), false}; |
631 RunTest(screenshare); | 876 RunTest(screenshare); |
632 } | 877 } |
633 | 878 |
634 TEST_F(FullStackTest, VP9SVC_3SL_High) { | 879 TEST_F(FullStackTest, VP9SVC_3SL_High) { |
635 VideoQualityTest::Params simulcast; | 880 VideoQualityTest::Params simulcast; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
667 // Android bots can't handle FullHD, so disable the test. | 912 // Android bots can't handle FullHD, so disable the test. |
668 #if defined(WEBRTC_ANDROID) | 913 #if defined(WEBRTC_ANDROID) |
669 #define MAYBE_SimulcastFullHdOveruse DISABLED_SimulcastFullHdOveruse | 914 #define MAYBE_SimulcastFullHdOveruse DISABLED_SimulcastFullHdOveruse |
670 #else | 915 #else |
671 #define MAYBE_SimulcastFullHdOveruse SimulcastFullHdOveruse | 916 #define MAYBE_SimulcastFullHdOveruse SimulcastFullHdOveruse |
672 #endif | 917 #endif |
673 | 918 |
674 TEST_F(FullStackTest, MAYBE_SimulcastFullHdOveruse) { | 919 TEST_F(FullStackTest, MAYBE_SimulcastFullHdOveruse) { |
675 VideoQualityTest::Params simulcast; | 920 VideoQualityTest::Params simulcast; |
676 simulcast.call.send_side_bwe = true; | 921 simulcast.call.send_side_bwe = true; |
677 simulcast.video = {true, 1920, 1080, 30, 800000, | 922 simulcast.video = {true, 1920, 1080, 30, 800000, 2500000, |
678 2500000, 2500000, false, "VP8", 3, | 923 2500000, false, "VP8", false, false, 3, |
679 2, 400000, false, false, "Generator"}; | 924 2, 400000, false, false, "Generator"}; |
680 simulcast.analyzer = {"simulcast_HD_high", 0.0, 0.0, | 925 simulcast.analyzer = {"simulcast_HD_high", 0.0, 0.0, |
681 kFullStackTestDurationSecs}; | 926 kFullStackTestDurationSecs}; |
682 simulcast.pipe.loss_percent = 0; | 927 simulcast.pipe.loss_percent = 0; |
683 simulcast.pipe.queue_delay_ms = 100; | 928 simulcast.pipe.queue_delay_ms = 100; |
684 std::vector<VideoStream> streams = {DefaultVideoStream(simulcast), | 929 std::vector<VideoStream> streams = {DefaultVideoStream(simulcast), |
685 DefaultVideoStream(simulcast), | 930 DefaultVideoStream(simulcast), |
686 DefaultVideoStream(simulcast)}; | 931 DefaultVideoStream(simulcast)}; |
687 simulcast.ss = {streams, 2, 1, 0, std::vector<SpatialLayer>(), true}; | 932 simulcast.ss = {streams, 2, 1, 0, std::vector<SpatialLayer>(), true}; |
688 webrtc::test::ScopedFieldTrials override_trials( | 933 webrtc::test::ScopedFieldTrials override_trials( |
689 "WebRTC-ForceSimulatedOveruseIntervalMs/1000-50000-300/"); | 934 "WebRTC-ForceSimulatedOveruseIntervalMs/1000-50000-300/"); |
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
830 std::vector<VideoStream> streams = {DefaultVideoStream(video_params_low), | 1075 std::vector<VideoStream> streams = {DefaultVideoStream(video_params_low), |
831 DefaultVideoStream(video_params_medium), | 1076 DefaultVideoStream(video_params_medium), |
832 DefaultVideoStream(video_params_high)}; | 1077 DefaultVideoStream(video_params_high)}; |
833 large_room.call.num_thumbnails = 50; | 1078 large_room.call.num_thumbnails = 50; |
834 large_room.ss = {streams, 2, 1, 0, std::vector<SpatialLayer>(), false}; | 1079 large_room.ss = {streams, 2, 1, 0, std::vector<SpatialLayer>(), false}; |
835 RunTest(large_room); | 1080 RunTest(large_room); |
836 } | 1081 } |
837 | 1082 |
838 | 1083 |
839 } // namespace webrtc | 1084 } // namespace webrtc |
OLD | NEW |