Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(60)

Unified Diff: webrtc/modules/congestion_controller/probe_controller.cc

Issue 2430133005: Increase maximum probing bitrate to 100Mbps. (Closed)
Patch Set: fix tests Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | webrtc/modules/congestion_controller/probe_controller_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/modules/congestion_controller/probe_controller.cc
diff --git a/webrtc/modules/congestion_controller/probe_controller.cc b/webrtc/modules/congestion_controller/probe_controller.cc
index e7bf1fc9b3501d79c3c0c866556d3f366699b7d2..7e1d936a1eb7d2be61d108cd4c82bee777325338 100644
--- a/webrtc/modules/congestion_controller/probe_controller.cc
+++ b/webrtc/modules/congestion_controller/probe_controller.cc
@@ -33,8 +33,9 @@ constexpr int64_t kMaxWaitingTimeForProbingResultMs = 1000;
// further probing is disabled.
constexpr int kExponentialProbingDisabled = 0;
-// A limit to prevent probing at excessive bitrates.
-constexpr int kMaxProbingBitrateBps = 10000000;
+// Default probing bitrate limit. Applied only when the application didn't
+// specify max bitrate.
+constexpr int kDefaultMaxProbingBitrateBps = 100000000;
// This is a limit on how often probing can be done when there is a BW
// drop detected in ALR region.
@@ -63,18 +64,21 @@ void ProbeController::SetBitrates(int min_bitrate_bps,
4 * start_bitrate_bps);
}
+ int old_max_bitrate_bps = max_bitrate_bps_;
+ max_bitrate_bps_ = max_bitrate_bps;
+
// Only do probing if:
// we are mid-call, which we consider to be if
// exponential probing is not active and
// |estimated_bitrate_bps_| is valid (> 0) and
// the current bitrate is lower than the new |max_bitrate_bps|, and
- // we actually want to increase the |max_bitrate_bps_|.
+ // |max_bitrate_bps_| was increased.
if (state_ != State::kWaitingForProbingResult &&
- estimated_bitrate_bps_ != 0 && estimated_bitrate_bps_ < max_bitrate_bps &&
- max_bitrate_bps > max_bitrate_bps_) {
+ estimated_bitrate_bps_ != 0 &&
+ estimated_bitrate_bps_ < old_max_bitrate_bps &&
+ max_bitrate_bps_ > old_max_bitrate_bps) {
InitiateProbing({max_bitrate_bps}, kExponentialProbingDisabled);
}
- max_bitrate_bps_ = max_bitrate_bps;
}
void ProbeController::SetEstimatedBitrate(int bitrate_bps) {
@@ -131,7 +135,9 @@ void ProbeController::InitiateProbing(
int min_bitrate_to_probe_further_bps) {
bool first_cluster = true;
for (int bitrate : bitrates_to_probe) {
- bitrate = std::min(bitrate, kMaxProbingBitrateBps);
+ int max_probe_bitrate_bps =
+ max_bitrate_bps_ > 0 ? max_bitrate_bps_ : kDefaultMaxProbingBitrateBps;
+ bitrate = std::min(bitrate, max_probe_bitrate_bps);
if (first_cluster) {
pacer_->CreateProbeCluster(bitrate, kProbeDeltasPerCluster + 1);
first_cluster = false;
« no previous file with comments | « no previous file | webrtc/modules/congestion_controller/probe_controller_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698