diff options
author | stefan <stefan@webrtc.org> | 2015-07-07 04:20:34 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-07-07 11:20:40 +0000 |
commit | c62642c7a662a2a88293b82192e2240049f0cbb9 (patch) | |
tree | 43852b563645d9c8bf75e06ae2f5f565f5ece335 /webrtc/modules/pacing | |
parent | 4e7aa43ea0fd7106cd39036798877301398966a6 (diff) | |
download | webrtc-c62642c7a662a2a88293b82192e2240049f0cbb9.tar.gz |
Make the BWE threshold adaptive.
This improves self-fairness and competing for resources with TCP flows.
BUG=4711
Review URL: https://codereview.webrtc.org/1151603008
Cr-Commit-Position: refs/heads/master@{#9545}
Diffstat (limited to 'webrtc/modules/pacing')
-rw-r--r-- | webrtc/modules/pacing/paced_sender.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/webrtc/modules/pacing/paced_sender.cc b/webrtc/modules/pacing/paced_sender.cc index f25134156b..7c842bff02 100644 --- a/webrtc/modules/pacing/paced_sender.cc +++ b/webrtc/modules/pacing/paced_sender.cc @@ -175,6 +175,8 @@ class IntervalBudget { void set_target_rate_kbps(int target_rate_kbps) { target_rate_kbps_ = target_rate_kbps; + bytes_remaining_ = + std::max(-kWindowMs * target_rate_kbps_ / 8, bytes_remaining_); } void IncreaseBudget(int64_t delta_time_ms) { @@ -190,7 +192,7 @@ class IntervalBudget { void UseBudget(size_t bytes) { bytes_remaining_ = std::max(bytes_remaining_ - static_cast<int>(bytes), - -500 * target_rate_kbps_ / 8); + -kWindowMs * target_rate_kbps_ / 8); } size_t bytes_remaining() const { @@ -200,6 +202,8 @@ class IntervalBudget { int target_rate_kbps() const { return target_rate_kbps_; } private: + static const int kWindowMs = 500; + int target_rate_kbps_; int bytes_remaining_; }; |