| 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_;
|
|
|