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

Side by Side Diff: webrtc/modules/pacing/paced_sender.h

Issue 2432633002: Handle BW drop in ALR region and initiate probing (Closed)
Patch Set: Created 4 years, 2 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 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 113
114 // Returns the time since the oldest queued packet was enqueued. 114 // Returns the time since the oldest queued packet was enqueued.
115 virtual int64_t QueueInMs() const; 115 virtual int64_t QueueInMs() const;
116 116
117 virtual size_t QueueSizePackets() const; 117 virtual size_t QueueSizePackets() const;
118 118
119 // Returns the number of milliseconds it will take to send the current 119 // Returns the number of milliseconds it will take to send the current
120 // packets in the queue, given the current size and bitrate, ignoring prio. 120 // packets in the queue, given the current size and bitrate, ignoring prio.
121 virtual int64_t ExpectedQueueTimeMs() const; 121 virtual int64_t ExpectedQueueTimeMs() const;
122 122
123 // Application Limited Region refers to operating in a state where the
124 // traffic on network is limited due to application not having enough
125 // traffic to meet the current channel capacity.
126 //
127 // Returns true if network is currently application-limited.
128 bool InApplicationLimitedRegion() const;
129
123 // Returns the average time since being enqueued, in milliseconds, for all 130 // Returns the average time since being enqueued, in milliseconds, for all
124 // packets currently in the pacer queue, or 0 if queue is empty. 131 // packets currently in the pacer queue, or 0 if queue is empty.
125 virtual int64_t AverageQueueTimeMs(); 132 virtual int64_t AverageQueueTimeMs();
126 133
127 // Returns the number of milliseconds until the module want a worker thread 134 // Returns the number of milliseconds until the module want a worker thread
128 // to call Process. 135 // to call Process.
129 int64_t TimeUntilNextProcess() override; 136 int64_t TimeUntilNextProcess() override;
130 137
131 // Process any pending packets in the queue(s). 138 // Process any pending packets in the queue(s).
132 void Process() override; 139 void Process() override;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 uint32_t max_padding_bitrate_kbps_ GUARDED_BY(critsect_); 174 uint32_t max_padding_bitrate_kbps_ GUARDED_BY(critsect_);
168 uint32_t pacing_bitrate_kbps_ GUARDED_BY(critsect_); 175 uint32_t pacing_bitrate_kbps_ GUARDED_BY(critsect_);
169 176
170 int64_t time_last_update_us_ GUARDED_BY(critsect_); 177 int64_t time_last_update_us_ GUARDED_BY(critsect_);
171 178
172 std::unique_ptr<paced_sender::PacketQueue> packets_ GUARDED_BY(critsect_); 179 std::unique_ptr<paced_sender::PacketQueue> packets_ GUARDED_BY(critsect_);
173 uint64_t packet_counter_; 180 uint64_t packet_counter_;
174 }; 181 };
175 } // namespace webrtc 182 } // namespace webrtc
176 #endif // WEBRTC_MODULES_PACING_PACED_SENDER_H_ 183 #endif // WEBRTC_MODULES_PACING_PACED_SENDER_H_
OLDNEW
« no previous file with comments | « webrtc/modules/congestion_controller/probe_controller.cc ('k') | webrtc/modules/pacing/paced_sender.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698