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

Unified Diff: webrtc/modules/remote_bitrate_estimator/aimd_rate_control.h

Issue 2380883003: Add interval estimator to remote bitrate estimator (Closed)
Patch Set: Simplify probing estimator. Created 4 years, 2 months 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
Index: webrtc/modules/remote_bitrate_estimator/aimd_rate_control.h
diff --git a/webrtc/modules/remote_bitrate_estimator/aimd_rate_control.h b/webrtc/modules/remote_bitrate_estimator/aimd_rate_control.h
index 2b2e85bf911b0b16b80f092f78919a3b31c964c3..457a3f4504159c2ad2da45ae2b94579d09c17be4 100644
--- a/webrtc/modules/remote_bitrate_estimator/aimd_rate_control.h
+++ b/webrtc/modules/remote_bitrate_estimator/aimd_rate_control.h
@@ -42,6 +42,8 @@ class AimdRateControl {
void SetRtt(int64_t rtt);
void Update(const RateControlInput* input, int64_t now_ms);
void SetEstimate(int bitrate_bps, int64_t now_ms);
+ virtual rtc::Optional<int> GetNearMaxIncreaseRate() const;
+ virtual rtc::Optional<int> GetLastDecrease() const;
private:
// Update the target bitrate according based on, among other things,
@@ -70,6 +72,7 @@ class AimdRateControl {
float avg_max_bitrate_kbps_;
float var_max_bitrate_kbps_;
RateControlState rate_control_state_;
+ RateControlState last_rate_control_state_;
RateControlRegion rate_control_region_;
int64_t time_last_bitrate_change_;
RateControlInput current_input_;
@@ -79,6 +82,9 @@ class AimdRateControl {
float beta_;
int64_t rtt_;
bool in_experiment_;
+ rtc::Optional<int> near_max_increase_rate_bps_;
+ rtc::Optional<int> last_decrease_;
+ rtc::Optional<int64_t> last_near_max_increase_rate_update_;
};
} // namespace webrtc

Powered by Google App Engine
This is Rietveld 408576698