| 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..6e5410dd00f96a08193cf2640f89622809f345a7 100644
|
| --- a/webrtc/modules/remote_bitrate_estimator/aimd_rate_control.h
|
| +++ b/webrtc/modules/remote_bitrate_estimator/aimd_rate_control.h
|
| @@ -43,6 +43,12 @@ class AimdRateControl {
|
| void Update(const RateControlInput* input, int64_t now_ms);
|
| void SetEstimate(int bitrate_bps, int64_t now_ms);
|
|
|
| + // Returns the increase rate which is used when used bandwidth is near the
|
| + // maximal available bandwidth.
|
| + virtual int GetNearMaxIncreaseRateBps() const;
|
| +
|
| + virtual rtc::Optional<int> GetLastBitrateDecreaseBps() const;
|
| +
|
| private:
|
| // Update the target bitrate according based on, among other things,
|
| // the current rate control state, the current target bitrate and the incoming
|
| @@ -56,8 +62,7 @@ class AimdRateControl {
|
| int64_t now_ms);
|
| uint32_t MultiplicativeRateIncrease(int64_t now_ms, int64_t last_ms,
|
| uint32_t current_bitrate_bps) const;
|
| - uint32_t AdditiveRateIncrease(int64_t now_ms, int64_t last_ms,
|
| - int64_t response_time_ms) const;
|
| + uint32_t AdditiveRateIncrease(int64_t now_ms, int64_t last_ms) const;
|
| void UpdateChangePeriod(int64_t now_ms);
|
| void UpdateMaxBitRateEstimate(float incoming_bit_rate_kbps);
|
| void ChangeState(const RateControlInput& input, int64_t now_ms);
|
| @@ -79,6 +84,7 @@ class AimdRateControl {
|
| float beta_;
|
| int64_t rtt_;
|
| bool in_experiment_;
|
| + rtc::Optional<int> last_decrease_;
|
| };
|
| } // namespace webrtc
|
|
|
|
|