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

Unified Diff: webrtc/modules/congestion_controller/include/congestion_controller.h

Issue 2235373004: Probing: Add support for exponential startup probing (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@fix_probing2
Patch Set: Refactored probe_controller Created 4 years, 3 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/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..e224c38a2b87e3cb734509022bc58e7a82650a92 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;
@@ -98,6 +99,11 @@ class CongestionController : public CallStatsObserver, public Module {
virtual void OnSentPacket(const rtc::SentPacket& sent_packet);
+ // Called by delay based estimator to report estimated bandwidth.
+ void OnDelayBasedBweChanged(int bitrate_bps);
+ // Called by delay based estimator to report measured probing bitrate.
+ void OnProbeBitrate(int bitrate_bps);
+
// Implements CallStatsObserver.
void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override;
@@ -120,12 +126,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_);

Powered by Google App Engine
This is Rietveld 408576698