| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2016 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 | 10 |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 159 // Simulate a client leaving and rejoining the call after some multiple of | 159 // Simulate a client leaving and rejoining the call after some multiple of |
| 160 // 64 seconds later. This will cause a zero difference in abs send times due | 160 // 64 seconds later. This will cause a zero difference in abs send times due |
| 161 // to the wrap, but a big difference in arrival time, if streams aren't | 161 // to the wrap, but a big difference in arrival time, if streams aren't |
| 162 // properly timed out. | 162 // properly timed out. |
| 163 TestWrappingHelper(10 * 64); | 163 TestWrappingHelper(10 * 64); |
| 164 } | 164 } |
| 165 | 165 |
| 166 class DelayBasedBweExperimentTest : public DelayBasedBweTest { | 166 class DelayBasedBweExperimentTest : public DelayBasedBweTest { |
| 167 public: | 167 public: |
| 168 DelayBasedBweExperimentTest() | 168 DelayBasedBweExperimentTest() |
| 169 : override_field_trials_("WebRTC-ImprovedBitrateEstimate/Enabled/") {} | 169 : override_field_trials_("WebRTC-ImprovedBitrateEstimate/Enabled/") { |
| 170 | |
| 171 protected: | |
| 172 void SetUp() override { | |
| 173 bitrate_estimator_.reset(new DelayBasedBwe(&clock_)); | 170 bitrate_estimator_.reset(new DelayBasedBwe(&clock_)); |
| 174 } | 171 } |
| 175 | 172 |
| 173 private: |
| 176 test::ScopedFieldTrials override_field_trials_; | 174 test::ScopedFieldTrials override_field_trials_; |
| 177 }; | 175 }; |
| 178 | 176 |
| 179 TEST_F(DelayBasedBweExperimentTest, RateIncreaseRtpTimestamps) { | 177 TEST_F(DelayBasedBweExperimentTest, RateIncreaseRtpTimestamps) { |
| 180 RateIncreaseRtpTimestampsTestHelper(1288); | 178 RateIncreaseRtpTimestampsTestHelper(1288); |
| 181 } | 179 } |
| 182 | 180 |
| 183 TEST_F(DelayBasedBweExperimentTest, CapacityDropOneStream) { | 181 TEST_F(DelayBasedBweExperimentTest, CapacityDropOneStream) { |
| 184 CapacityDropTestHelper(1, false, 333, 0); | 182 CapacityDropTestHelper(1, false, 333, 0); |
| 185 } | 183 } |
| 186 | 184 |
| 187 TEST_F(DelayBasedBweExperimentTest, CapacityDropPosOffsetChange) { | 185 TEST_F(DelayBasedBweExperimentTest, CapacityDropPosOffsetChange) { |
| 188 CapacityDropTestHelper(1, false, 300, 30000); | 186 CapacityDropTestHelper(1, false, 300, 30000); |
| 189 } | 187 } |
| 190 | 188 |
| 191 TEST_F(DelayBasedBweExperimentTest, CapacityDropNegOffsetChange) { | 189 TEST_F(DelayBasedBweExperimentTest, CapacityDropNegOffsetChange) { |
| 192 CapacityDropTestHelper(1, false, 300, -30000); | 190 CapacityDropTestHelper(1, false, 300, -30000); |
| 193 } | 191 } |
| 194 | 192 |
| 195 TEST_F(DelayBasedBweExperimentTest, CapacityDropOneStreamWrap) { | 193 TEST_F(DelayBasedBweExperimentTest, CapacityDropOneStreamWrap) { |
| 196 CapacityDropTestHelper(1, true, 333, 0); | 194 CapacityDropTestHelper(1, true, 333, 0); |
| 197 } | 195 } |
| 198 | 196 |
| 199 class DelayBasedBweTrendlineExperimentTest : public DelayBasedBweTest { | 197 class DelayBasedBweTrendlineExperimentTest : public DelayBasedBweTest { |
| 200 public: | 198 public: |
| 201 DelayBasedBweTrendlineExperimentTest() | 199 DelayBasedBweTrendlineExperimentTest() |
| 202 : override_field_trials_("WebRTC-BweTrendlineFilter/Enabled-15,0.9,4/") {} | 200 : override_field_trials_("WebRTC-BweTrendlineFilter/Enabled-15,0.9,4/") { |
| 203 | |
| 204 protected: | |
| 205 void SetUp() override { | |
| 206 bitrate_estimator_.reset(new DelayBasedBwe(&clock_)); | 201 bitrate_estimator_.reset(new DelayBasedBwe(&clock_)); |
| 207 } | 202 } |
| 208 | 203 |
| 204 private: |
| 209 test::ScopedFieldTrials override_field_trials_; | 205 test::ScopedFieldTrials override_field_trials_; |
| 210 }; | 206 }; |
| 211 | 207 |
| 212 TEST_F(DelayBasedBweTrendlineExperimentTest, RateIncreaseRtpTimestamps) { | 208 TEST_F(DelayBasedBweTrendlineExperimentTest, RateIncreaseRtpTimestamps) { |
| 213 RateIncreaseRtpTimestampsTestHelper(1240); | 209 RateIncreaseRtpTimestampsTestHelper(1240); |
| 214 } | 210 } |
| 215 | 211 |
| 216 TEST_F(DelayBasedBweTrendlineExperimentTest, CapacityDropOneStream) { | 212 TEST_F(DelayBasedBweTrendlineExperimentTest, CapacityDropOneStream) { |
| 217 CapacityDropTestHelper(1, false, 600, 0); | 213 CapacityDropTestHelper(1, false, 600, 0); |
| 218 } | 214 } |
| 219 | 215 |
| 220 TEST_F(DelayBasedBweTrendlineExperimentTest, CapacityDropPosOffsetChange) { | 216 TEST_F(DelayBasedBweTrendlineExperimentTest, CapacityDropPosOffsetChange) { |
| 221 CapacityDropTestHelper(1, false, 600, 30000); | 217 CapacityDropTestHelper(1, false, 600, 30000); |
| 222 } | 218 } |
| 223 | 219 |
| 224 TEST_F(DelayBasedBweTrendlineExperimentTest, CapacityDropNegOffsetChange) { | 220 TEST_F(DelayBasedBweTrendlineExperimentTest, CapacityDropNegOffsetChange) { |
| 225 CapacityDropTestHelper(1, false, 1267, -30000); | 221 CapacityDropTestHelper(1, false, 1267, -30000); |
| 226 } | 222 } |
| 227 | 223 |
| 228 TEST_F(DelayBasedBweTrendlineExperimentTest, CapacityDropOneStreamWrap) { | 224 TEST_F(DelayBasedBweTrendlineExperimentTest, CapacityDropOneStreamWrap) { |
| 229 CapacityDropTestHelper(1, true, 600, 0); | 225 CapacityDropTestHelper(1, true, 600, 0); |
| 230 } | 226 } |
| 231 | 227 |
| 228 class DelayBasedBweTheilSenExperimentTest : public DelayBasedBweTest { |
| 229 public: |
| 230 DelayBasedBweTheilSenExperimentTest() |
| 231 : override_field_trials_("WebRTC-BweTheilSenFilter/Enabled-20,4/") { |
| 232 bitrate_estimator_.reset(new DelayBasedBwe(&clock_)); |
| 233 } |
| 234 |
| 235 private: |
| 236 test::ScopedFieldTrials override_field_trials_; |
| 237 }; |
| 238 |
| 239 TEST_F(DelayBasedBweTheilSenExperimentTest, RateIncreaseRtpTimestamps) { |
| 240 RateIncreaseRtpTimestampsTestHelper(1240); |
| 241 } |
| 242 |
| 243 TEST_F(DelayBasedBweTheilSenExperimentTest, CapacityDropOneStream) { |
| 244 CapacityDropTestHelper(1, false, 600, 0); |
| 245 } |
| 246 |
| 247 TEST_F(DelayBasedBweTheilSenExperimentTest, CapacityDropPosOffsetChange) { |
| 248 CapacityDropTestHelper(1, false, 600, 30000); |
| 249 } |
| 250 |
| 251 TEST_F(DelayBasedBweTheilSenExperimentTest, CapacityDropNegOffsetChange) { |
| 252 CapacityDropTestHelper(1, false, 1267, -30000); |
| 253 } |
| 254 |
| 255 TEST_F(DelayBasedBweTheilSenExperimentTest, CapacityDropOneStreamWrap) { |
| 256 CapacityDropTestHelper(1, true, 600, 0); |
| 257 } |
| 258 |
| 232 } // namespace webrtc | 259 } // namespace webrtc |
| OLD | NEW |