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

Side by Side Diff: webrtc/modules/video_coding/jitter_buffer.h

Issue 2007743003: Add sender controlled playout delay limits (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@cleanup_rtp_hdr_extensions
Patch Set: Rename OnReceivedRtcpReport to OnReceivedRtcpReportBlocks Created 4 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 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 // Statistics, Calculate frame and bit rates. 145 // Statistics, Calculate frame and bit rates.
146 void IncomingRateStatistics(unsigned int* framerate, unsigned int* bitrate); 146 void IncomingRateStatistics(unsigned int* framerate, unsigned int* bitrate);
147 147
148 // Checks if the packet sequence will be complete if the next frame would be 148 // Checks if the packet sequence will be complete if the next frame would be
149 // grabbed for decoding. That is, if a frame has been lost between the 149 // grabbed for decoding. That is, if a frame has been lost between the
150 // last decoded frame and the next, or if the next frame is missing one 150 // last decoded frame and the next, or if the next frame is missing one
151 // or more packets. 151 // or more packets.
152 bool CompleteSequenceWithNextFrame(); 152 bool CompleteSequenceWithNextFrame();
153 153
154 // Wait |max_wait_time_ms| for a complete frame to arrive. 154 // Wait |max_wait_time_ms| for a complete frame to arrive.
155 // The function returns true once such a frame is found, its corresponding 155 // If found, a pointer to the frame is returned. Returns nullptr otherwise.
156 // timestamp is returned. Otherwise, returns false. 156 VCMEncodedFrame* NextCompleteFrame(uint32_t max_wait_time_ms);
157 bool NextCompleteTimestamp(uint32_t max_wait_time_ms, uint32_t* timestamp);
158 157
159 // Locates a frame for decoding (even an incomplete) without delay. 158 // Locates a frame for decoding (even an incomplete) without delay.
160 // The function returns true once such a frame is found, its corresponding 159 // The function returns true once such a frame is found, its corresponding
161 // timestamp is returned. Otherwise, returns false. 160 // timestamp is returned. Otherwise, returns false.
162 bool NextMaybeIncompleteTimestamp(uint32_t* timestamp); 161 bool NextMaybeIncompleteTimestamp(uint32_t* timestamp);
163 162
164 // Extract frame corresponding to input timestamp. 163 // Extract frame corresponding to input timestamp.
165 // Frame will be set to a decoding state. 164 // Frame will be set to a decoding state.
166 VCMEncodedFrame* ExtractAndSetDecode(uint32_t timestamp); 165 VCMEncodedFrame* ExtractAndSetDecode(uint32_t timestamp);
167 166
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after
388 // frames. 387 // frames.
389 int frame_counter_; 388 int frame_counter_;
390 389
391 std::unique_ptr<NackModule> nack_module_; 390 std::unique_ptr<NackModule> nack_module_;
392 391
393 RTC_DISALLOW_COPY_AND_ASSIGN(VCMJitterBuffer); 392 RTC_DISALLOW_COPY_AND_ASSIGN(VCMJitterBuffer);
394 }; 393 };
395 } // namespace webrtc 394 } // namespace webrtc
396 395
397 #endif // WEBRTC_MODULES_VIDEO_CODING_JITTER_BUFFER_H_ 396 #endif // WEBRTC_MODULES_VIDEO_CODING_JITTER_BUFFER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698