Adding bps_or method to DataRate class.
Bug: webrtc:8415
Change-Id: I64e46b63d82cb843f0710839c1fc22e2440ae7e1
Reviewed-on: https://webrtc-review.googlesource.com/59222
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22285}
diff --git a/modules/congestion_controller/goog_cc/goog_cc_network_control.cc b/modules/congestion_controller/goog_cc/goog_cc_network_control.cc
index a360e9c..d07bc34 100644
--- a/modules/congestion_controller/goog_cc/goog_cc_network_control.cc
+++ b/modules/congestion_controller/goog_cc/goog_cc_network_control.cc
@@ -137,13 +137,8 @@
void GoogCcNetworkController::OnNetworkRouteChange(NetworkRouteChange msg) {
int64_t min_bitrate_bps = msg.constraints.min_data_rate.bps();
- int64_t max_bitrate_bps = -1;
- int64_t start_bitrate_bps = -1;
-
- if (msg.constraints.max_data_rate.IsFinite())
- max_bitrate_bps = msg.constraints.max_data_rate.bps();
- if (msg.constraints.starting_rate.IsFinite())
- start_bitrate_bps = msg.constraints.starting_rate.bps();
+ int64_t max_bitrate_bps = msg.constraints.max_data_rate.bps_or(-1);
+ int64_t start_bitrate_bps = msg.constraints.starting_rate.bps_or(-1);
ClampBitrates(&start_bitrate_bps, &min_bitrate_bps, &max_bitrate_bps);
@@ -216,13 +211,8 @@
void GoogCcNetworkController::OnTargetRateConstraints(
TargetRateConstraints constraints) {
int64_t min_bitrate_bps = constraints.min_data_rate.bps();
- int64_t max_bitrate_bps = -1;
- int64_t start_bitrate_bps = -1;
-
- if (constraints.max_data_rate.IsFinite())
- max_bitrate_bps = constraints.max_data_rate.bps();
- if (constraints.starting_rate.IsFinite())
- start_bitrate_bps = constraints.starting_rate.bps();
+ int64_t max_bitrate_bps = constraints.max_data_rate.bps_or(-1);
+ int64_t start_bitrate_bps = constraints.starting_rate.bps_or(-1);
ClampBitrates(&start_bitrate_bps, &min_bitrate_bps, &max_bitrate_bps);
diff --git a/modules/congestion_controller/network_control/include/network_units.h b/modules/congestion_controller/network_control/include/network_units.h
index ab7b4b2..81054f0 100644
--- a/modules/congestion_controller/network_control/include/network_units.h
+++ b/modules/congestion_controller/network_control/include/network_units.h
@@ -285,6 +285,9 @@
}
int64_t bytes_per_second() const { return bits_per_second() / 8; }
int64_t bps() const { return bits_per_second(); }
+ int64_t bps_or(int64_t fallback) const {
+ return IsFinite() ? bits_per_second() : fallback;
+ }
int64_t kbps() const { return units_internal::DivideAndRound(bps(), 1000); }
bool IsZero() const { return bits_per_sec_ == 0; }
bool IsInfinite() const {