| Index: webrtc/modules/congestion_controller/include/congestion_controller.h
|
| diff --git a/webrtc/modules/congestion_controller/include/congestion_controller.h b/webrtc/modules/congestion_controller/include/congestion_controller.h
|
| index 57c2c64ff4eb396573e2e478eb2b1896e808443a..a9252f4fc6df1c2fc6f0e39a666bcfe24fe772a8 100644
|
| --- a/webrtc/modules/congestion_controller/include/congestion_controller.h
|
| +++ b/webrtc/modules/congestion_controller/include/congestion_controller.h
|
| @@ -30,6 +30,7 @@ namespace webrtc {
|
|
|
| class BitrateController;
|
| class Clock;
|
| +class ProbeController;
|
| class ProcessThread;
|
| class RateLimiter;
|
| class RemoteBitrateEstimator;
|
| @@ -37,7 +38,9 @@ class RemoteBitrateObserver;
|
| class RtcEventLog;
|
| class TransportFeedbackObserver;
|
|
|
| -class CongestionController : public CallStatsObserver, public Module {
|
| +class CongestionController : public CallStatsObserver,
|
| + public Module,
|
| + public RemoteBitrateObserver {
|
| public:
|
| // Observer class for bitrate changes announced due to change in bandwidth
|
| // estimate or due to that the send pacer is full. Fraction loss and rtt is
|
| @@ -98,6 +101,13 @@ class CongestionController : public CallStatsObserver, public Module {
|
|
|
| virtual void OnSentPacket(const rtc::SentPacket& sent_packet);
|
|
|
| + // Implements RemoteBitrateObserver.
|
| + // Called by delay based estimator to report estimated bandwidth.
|
| + void OnReceiveBitrateChanged(const std::vector<uint32_t>& ssrcs,
|
| + uint32_t bitrate_bps) override;
|
| + // Called by delay based estimator to report measured probing bitrate.
|
| + void OnProbeBitrate(uint32_t bitrate_bps) override;
|
| +
|
| // Implements CallStatsObserver.
|
| void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override;
|
|
|
| @@ -120,12 +130,12 @@ class CongestionController : public CallStatsObserver, public Module {
|
| const std::unique_ptr<PacedSender> pacer_;
|
| const std::unique_ptr<RemoteBitrateEstimator> remote_bitrate_estimator_;
|
| const std::unique_ptr<BitrateController> bitrate_controller_;
|
| + const std::unique_ptr<ProbeController> probe_controller_;
|
| const std::unique_ptr<RateLimiter> retransmission_rate_limiter_;
|
| RemoteEstimatorProxy remote_estimator_proxy_;
|
| TransportFeedbackAdapter transport_feedback_adapter_;
|
| int min_bitrate_bps_;
|
| int max_bitrate_bps_;
|
| - bool initial_probing_triggered_;
|
| rtc::CriticalSection critsect_;
|
| uint32_t last_reported_bitrate_bps_ GUARDED_BY(critsect_);
|
| uint8_t last_reported_fraction_loss_ GUARDED_BY(critsect_);
|
|
|