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

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

Issue 2638083002: Attach TransportFeedbackPacketLossTracker to ANA (PLR only) (Closed)
Patch Set: DeathTest fix. Created 3 years, 9 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 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 SendSideCongestionController(const Clock* clock, 60 SendSideCongestionController(const Clock* clock,
61 Observer* observer, 61 Observer* observer,
62 RtcEventLog* event_log, 62 RtcEventLog* event_log,
63 PacketRouter* packet_router); 63 PacketRouter* packet_router);
64 SendSideCongestionController(const Clock* clock, 64 SendSideCongestionController(const Clock* clock,
65 Observer* observer, 65 Observer* observer,
66 RtcEventLog* event_log, 66 RtcEventLog* event_log,
67 std::unique_ptr<PacedSender> pacer); 67 std::unique_ptr<PacedSender> pacer);
68 virtual ~SendSideCongestionController(); 68 virtual ~SendSideCongestionController();
69 69
70 void RegisterTransportFeedbackAdapterObserver(
71 TransportFeedbackAdapterObserver* observer);
72 void DeRegisterTransportFeedbackAdapterObserver(
73 TransportFeedbackAdapterObserver* observer);
74
70 virtual void SetBweBitrates(int min_bitrate_bps, 75 virtual void SetBweBitrates(int min_bitrate_bps,
71 int start_bitrate_bps, 76 int start_bitrate_bps,
72 int max_bitrate_bps); 77 int max_bitrate_bps);
73 // Resets the BWE state. Note the first argument is the bitrate_bps. 78 // Resets the BWE state. Note the first argument is the bitrate_bps.
74 virtual void OnNetworkRouteChanged(const rtc::NetworkRoute& network_route, 79 virtual void OnNetworkRouteChanged(const rtc::NetworkRoute& network_route,
75 int bitrate_bps, 80 int bitrate_bps,
76 int min_bitrate_bps, 81 int min_bitrate_bps,
77 int max_bitrate_bps); 82 int max_bitrate_bps);
78 virtual void SignalNetworkState(NetworkState state); 83 virtual void SignalNetworkState(NetworkState state);
79 virtual void SetTransportOverhead(size_t transport_overhead_bytes_per_packet); 84 virtual void SetTransportOverhead(size_t transport_overhead_bytes_per_packet);
(...skipping 24 matching lines...) Expand all
104 virtual void OnSentPacket(const rtc::SentPacket& sent_packet); 109 virtual void OnSentPacket(const rtc::SentPacket& sent_packet);
105 110
106 // Implements CallStatsObserver. 111 // Implements CallStatsObserver.
107 void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override; 112 void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override;
108 113
109 // Implements Module. 114 // Implements Module.
110 int64_t TimeUntilNextProcess() override; 115 int64_t TimeUntilNextProcess() override;
111 void Process() override; 116 void Process() override;
112 117
113 // Implements TransportFeedbackObserver. 118 // Implements TransportFeedbackObserver.
114 void AddPacket(uint16_t sequence_number, 119 void AddPacket(uint32_t ssrc,
120 uint16_t sequence_number,
115 size_t length, 121 size_t length,
116 const PacedPacketInfo& pacing_info) override; 122 const PacedPacketInfo& pacing_info) override;
117 void OnTransportFeedback(const rtcp::TransportFeedback& feedback) override; 123 void OnTransportFeedback(const rtcp::TransportFeedback& feedback) override;
118 std::vector<PacketFeedback> GetTransportFeedbackVector() const override; 124 std::vector<PacketFeedback> GetTransportFeedbackVector() const override;
119 125
120 private: 126 private:
121 void MaybeTriggerOnNetworkChanged(); 127 void MaybeTriggerOnNetworkChanged();
122 128
123 bool IsSendQueueFull() const; 129 bool IsSendQueueFull() const;
124 bool IsNetworkDown() const; 130 bool IsNetworkDown() const;
(...skipping 18 matching lines...) Expand all
143 std::unique_ptr<DelayBasedBwe> delay_based_bwe_ GUARDED_BY(bwe_lock_); 149 std::unique_ptr<DelayBasedBwe> delay_based_bwe_ GUARDED_BY(bwe_lock_);
144 150
145 rtc::ThreadChecker worker_thread_checker_; 151 rtc::ThreadChecker worker_thread_checker_;
146 152
147 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(SendSideCongestionController); 153 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(SendSideCongestionController);
148 }; 154 };
149 155
150 } // namespace webrtc 156 } // namespace webrtc
151 157
152 #endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_INCLUDE_SEND_SIDE_CONGESTION_CON TROLLER_H_ 158 #endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_INCLUDE_SEND_SIDE_CONGESTION_CON TROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698