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

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: Fix UT 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 RegisterPacketFeedbackObserver(PacketFeedbackObserver* observer);
71 void DeRegisterPacketFeedbackObserver(PacketFeedbackObserver* observer);
72
70 virtual void SetBweBitrates(int min_bitrate_bps, 73 virtual void SetBweBitrates(int min_bitrate_bps,
71 int start_bitrate_bps, 74 int start_bitrate_bps,
72 int max_bitrate_bps); 75 int max_bitrate_bps);
73 // Resets the BWE state. Note the first argument is the bitrate_bps. 76 // Resets the BWE state. Note the first argument is the bitrate_bps.
74 virtual void OnNetworkRouteChanged(const rtc::NetworkRoute& network_route, 77 virtual void OnNetworkRouteChanged(const rtc::NetworkRoute& network_route,
75 int bitrate_bps, 78 int bitrate_bps,
76 int min_bitrate_bps, 79 int min_bitrate_bps,
77 int max_bitrate_bps); 80 int max_bitrate_bps);
78 virtual void SignalNetworkState(NetworkState state); 81 virtual void SignalNetworkState(NetworkState state);
79 virtual void SetTransportOverhead(size_t transport_overhead_bytes_per_packet); 82 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); 107 virtual void OnSentPacket(const rtc::SentPacket& sent_packet);
105 108
106 // Implements CallStatsObserver. 109 // Implements CallStatsObserver.
107 void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override; 110 void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override;
108 111
109 // Implements Module. 112 // Implements Module.
110 int64_t TimeUntilNextProcess() override; 113 int64_t TimeUntilNextProcess() override;
111 void Process() override; 114 void Process() override;
112 115
113 // Implements TransportFeedbackObserver. 116 // Implements TransportFeedbackObserver.
114 void AddPacket(uint16_t sequence_number, 117 void AddPacket(uint32_t ssrc,
118 uint16_t sequence_number,
115 size_t length, 119 size_t length,
116 const PacedPacketInfo& pacing_info) override; 120 const PacedPacketInfo& pacing_info) override;
117 void OnTransportFeedback(const rtcp::TransportFeedback& feedback) override; 121 void OnTransportFeedback(const rtcp::TransportFeedback& feedback) override;
118 std::vector<PacketFeedback> GetTransportFeedbackVector() const override; 122 std::vector<PacketFeedback> GetTransportFeedbackVector() const override;
119 123
120 private: 124 private:
121 void MaybeTriggerOnNetworkChanged(); 125 void MaybeTriggerOnNetworkChanged();
122 126
123 bool IsSendQueueFull() const; 127 bool IsSendQueueFull() const;
124 bool IsNetworkDown() const; 128 bool IsNetworkDown() const;
(...skipping 18 matching lines...) Expand all
143 std::unique_ptr<DelayBasedBwe> delay_based_bwe_ GUARDED_BY(bwe_lock_); 147 std::unique_ptr<DelayBasedBwe> delay_based_bwe_ GUARDED_BY(bwe_lock_);
144 148
145 rtc::ThreadChecker worker_thread_checker_; 149 rtc::ThreadChecker worker_thread_checker_;
146 150
147 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(SendSideCongestionController); 151 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(SendSideCongestionController);
148 }; 152 };
149 153
150 } // namespace webrtc 154 } // namespace webrtc
151 155
152 #endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_INCLUDE_SEND_SIDE_CONGESTION_CON TROLLER_H_ 156 #endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_INCLUDE_SEND_SIDE_CONGESTION_CON TROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698