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

Side by Side Diff: webrtc/modules/congestion_controller/include/send_side_congestion_controller.h

Issue 2924243002: Revert of Refactored incoming bitrate estimator. (Closed)
Patch Set: Created 3 years, 6 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 16 matching lines...) Expand all
27 #include "webrtc/modules/pacing/packet_router.h" 27 #include "webrtc/modules/pacing/packet_router.h"
28 28
29 namespace rtc { 29 namespace rtc {
30 struct SentPacket; 30 struct SentPacket;
31 } 31 }
32 32
33 namespace webrtc { 33 namespace webrtc {
34 34
35 class BitrateController; 35 class BitrateController;
36 class Clock; 36 class Clock;
37 class AcknowledgedBitrateEstimator;
38 class ProbeController; 37 class ProbeController;
39 class RateLimiter; 38 class RateLimiter;
40 class RtcEventLog; 39 class RtcEventLog;
41 40
42 class SendSideCongestionController : public CallStatsObserver, 41 class SendSideCongestionController : public CallStatsObserver,
43 public Module, 42 public Module,
44 public TransportFeedbackObserver { 43 public TransportFeedbackObserver {
45 public: 44 public:
46 // Observer class for bitrate changes announced due to change in bandwidth 45 // Observer class for bitrate changes announced due to change in bandwidth
47 // estimate or due to that the send pacer is full. Fraction loss and rtt is 46 // estimate or due to that the send pacer is full. Fraction loss and rtt is
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 bool IsNetworkDown() const; 134 bool IsNetworkDown() const;
136 bool HasNetworkParametersToReportChanged(uint32_t bitrate_bps, 135 bool HasNetworkParametersToReportChanged(uint32_t bitrate_bps,
137 uint8_t fraction_loss, 136 uint8_t fraction_loss,
138 int64_t rtt); 137 int64_t rtt);
139 const Clock* const clock_; 138 const Clock* const clock_;
140 rtc::CriticalSection observer_lock_; 139 rtc::CriticalSection observer_lock_;
141 Observer* observer_ GUARDED_BY(observer_lock_); 140 Observer* observer_ GUARDED_BY(observer_lock_);
142 RtcEventLog* const event_log_; 141 RtcEventLog* const event_log_;
143 const std::unique_ptr<PacedSender> pacer_; 142 const std::unique_ptr<PacedSender> pacer_;
144 const std::unique_ptr<BitrateController> bitrate_controller_; 143 const std::unique_ptr<BitrateController> bitrate_controller_;
145 std::unique_ptr<AcknowledgedBitrateEstimator> acknowledged_bitrate_estimator_;
146 const std::unique_ptr<ProbeController> probe_controller_; 144 const std::unique_ptr<ProbeController> probe_controller_;
147 const std::unique_ptr<RateLimiter> retransmission_rate_limiter_; 145 const std::unique_ptr<RateLimiter> retransmission_rate_limiter_;
148 TransportFeedbackAdapter transport_feedback_adapter_; 146 TransportFeedbackAdapter transport_feedback_adapter_;
149 rtc::CriticalSection network_state_lock_; 147 rtc::CriticalSection network_state_lock_;
150 uint32_t last_reported_bitrate_bps_ GUARDED_BY(network_state_lock_); 148 uint32_t last_reported_bitrate_bps_ GUARDED_BY(network_state_lock_);
151 uint8_t last_reported_fraction_loss_ GUARDED_BY(network_state_lock_); 149 uint8_t last_reported_fraction_loss_ GUARDED_BY(network_state_lock_);
152 int64_t last_reported_rtt_ GUARDED_BY(network_state_lock_); 150 int64_t last_reported_rtt_ GUARDED_BY(network_state_lock_);
153 NetworkState network_state_ GUARDED_BY(network_state_lock_); 151 NetworkState network_state_ GUARDED_BY(network_state_lock_);
154 rtc::CriticalSection bwe_lock_; 152 rtc::CriticalSection bwe_lock_;
155 int min_bitrate_bps_ GUARDED_BY(bwe_lock_); 153 int min_bitrate_bps_ GUARDED_BY(bwe_lock_);
156 std::unique_ptr<DelayBasedBwe> delay_based_bwe_ GUARDED_BY(bwe_lock_); 154 std::unique_ptr<DelayBasedBwe> delay_based_bwe_ GUARDED_BY(bwe_lock_);
157 155
158 rtc::ThreadChecker worker_thread_checker_; 156 rtc::ThreadChecker worker_thread_checker_;
159 157
160 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(SendSideCongestionController); 158 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(SendSideCongestionController);
161 }; 159 };
162 160
163 } // namespace webrtc 161 } // namespace webrtc
164 162
165 #endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_INCLUDE_SEND_SIDE_CONGESTION_CON TROLLER_H_ 163 #endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_INCLUDE_SEND_SIDE_CONGESTION_CON TROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698