Per default enable RobustThroughputEstimator

Experiments has not showed significant metric changes. However, simulations has showed that RobustThroughputEstimator better follow the actually receive rate better. Especially during bursts of sent packets. Code is also simpler.


Bug: webrtc:13402 chromium:1411666
Change-Id: I38c309f74e8e1322602196354545b3a465866263
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/318040
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40653}
This commit is contained in:
Per K 2023-08-29 11:52:45 +02:00 committed by WebRTC LUCI CQ
parent 1f1b0b31e7
commit d017b1e306
2 changed files with 16 additions and 1 deletions

View File

@ -33,7 +33,9 @@ struct RobustThroughputEstimatorSettings {
explicit RobustThroughputEstimatorSettings(
const FieldTrialsView* key_value_config);
bool enabled = false; // Set to true to use RobustThroughputEstimator.
// Set `enabled` to true to use the RobustThroughputEstimator, false to use
// the AcknowledgedBitrateEstimator.
bool enabled = true;
// The estimator keeps the smallest window containing at least
// `window_packets` and at least the packets received during the last

View File

@ -63,6 +63,19 @@ class FeedbackGenerator {
uint16_t sequence_number_ = 100;
};
TEST(RobustThroughputEstimatorTest, DefaultEnabled) {
RobustThroughputEstimatorSettings settings =
CreateRobustThroughputEstimatorSettings("");
EXPECT_TRUE(settings.enabled);
}
TEST(RobustThroughputEstimatorTest, CanDisable) {
RobustThroughputEstimatorSettings settings =
CreateRobustThroughputEstimatorSettings(
"WebRTC-Bwe-RobustThroughputEstimatorSettings/enabled:false/");
EXPECT_FALSE(settings.enabled);
}
TEST(RobustThroughputEstimatorTest, InitialEstimate) {
FeedbackGenerator feedback_generator;
RobustThroughputEstimator throughput_estimator(