Index: webrtc/modules/congestion_controller/delay_based_bwe.h |
diff --git a/webrtc/modules/congestion_controller/delay_based_bwe.h b/webrtc/modules/congestion_controller/delay_based_bwe.h |
index eccd73ac4d49f7daea6b7fd1ae7366b6e6089d50..c44ea12e1c752479f20fa3798d0f9436823918bd 100644 |
--- a/webrtc/modules/congestion_controller/delay_based_bwe.h |
+++ b/webrtc/modules/congestion_controller/delay_based_bwe.h |
@@ -48,7 +48,8 @@ class DelayBasedBwe { |
virtual ~DelayBasedBwe(); |
Result IncomingPacketFeedbackVector( |
- const std::vector<PacketFeedback>& packet_feedback_vector); |
+ const std::vector<PacketFeedback>& packet_feedback_vector, |
+ rtc::Optional<uint32_t> acked_bitrate_bps); |
void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms); |
bool LatestEstimate(std::vector<uint32_t>* ssrcs, |
uint32_t* bitrate_bps) const; |
@@ -57,30 +58,11 @@ class DelayBasedBwe { |
int64_t GetExpectedBwePeriodMs() const; |
private: |
- // Computes a bayesian estimate of the throughput given acks containing |
- // the arrival time and payload size. Samples which are far from the current |
- // estimate or are based on few packets are given a smaller weight, as they |
- // are considered to be more likely to have been caused by, e.g., delay spikes |
- // unrelated to congestion. |
- class BitrateEstimator { |
- public: |
- BitrateEstimator(); |
- void Update(int64_t now_ms, int bytes); |
- rtc::Optional<uint32_t> bitrate_bps() const; |
- |
- private: |
- float UpdateWindow(int64_t now_ms, int bytes, int rate_window_ms); |
- int sum_; |
- int64_t current_win_ms_; |
- int64_t prev_time_ms_; |
- float bitrate_estimate_; |
- float bitrate_estimate_var_; |
- }; |
- |
void IncomingPacketFeedback(const PacketFeedback& packet_feedback); |
Result OnLongFeedbackDelay(int64_t arrival_time_ms); |
- Result MaybeUpdateEstimate(bool overusing); |
+ Result MaybeUpdateEstimate(bool overusing, |
+ rtc::Optional<uint32_t> acked_bitrate_bps); |
// Updates the current remote rate estimate and returns true if a valid |
// estimate exists. |
bool UpdateEstimate(int64_t now_ms, |
@@ -94,7 +76,6 @@ class DelayBasedBwe { |
std::unique_ptr<InterArrival> inter_arrival_; |
std::unique_ptr<TrendlineEstimator> trendline_estimator_; |
OveruseDetector detector_; |
- BitrateEstimator receiver_incoming_bitrate_; |
int64_t last_seen_packet_ms_; |
bool uma_recorded_; |
AimdRateControl rate_control_; |