OLD | NEW |
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 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 | 205 |
206 // Returns a list of the sequence numbers currently missing. | 206 // Returns a list of the sequence numbers currently missing. |
207 std::vector<uint16_t> GetNackList(bool* request_key_frame); | 207 std::vector<uint16_t> GetNackList(bool* request_key_frame); |
208 | 208 |
209 // Set decode error mode - Should not be changed in the middle of the | 209 // Set decode error mode - Should not be changed in the middle of the |
210 // session. Changes will not influence frames already in the buffer. | 210 // session. Changes will not influence frames already in the buffer. |
211 void SetDecodeErrorMode(VCMDecodeErrorMode error_mode); | 211 void SetDecodeErrorMode(VCMDecodeErrorMode error_mode); |
212 int64_t LastDecodedTimestamp() const; | 212 int64_t LastDecodedTimestamp() const; |
213 VCMDecodeErrorMode decode_error_mode() const { return decode_error_mode_; } | 213 VCMDecodeErrorMode decode_error_mode() const { return decode_error_mode_; } |
214 | 214 |
215 // Used to compute time of complete continuous frames. Returns the timestamps | |
216 // corresponding to the start and end of the continuous complete buffer. | |
217 void RenderBufferSize(uint32_t* timestamp_start, uint32_t* timestamp_end); | |
218 | |
219 void RegisterStatsCallback(VCMReceiveStatisticsCallback* callback); | 215 void RegisterStatsCallback(VCMReceiveStatisticsCallback* callback); |
220 | 216 |
221 int64_t TimeUntilNextProcess(); | 217 int64_t TimeUntilNextProcess(); |
222 void Process(); | 218 void Process(); |
223 | 219 |
224 private: | 220 private: |
225 class SequenceNumberLessThan { | 221 class SequenceNumberLessThan { |
226 public: | 222 public: |
227 bool operator()(const uint16_t& sequence_number1, | 223 bool operator()(const uint16_t& sequence_number1, |
228 const uint16_t& sequence_number2) const { | 224 const uint16_t& sequence_number2) const { |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
392 // frames. | 388 // frames. |
393 int frame_counter_; | 389 int frame_counter_; |
394 | 390 |
395 std::unique_ptr<NackModule> nack_module_; | 391 std::unique_ptr<NackModule> nack_module_; |
396 | 392 |
397 RTC_DISALLOW_COPY_AND_ASSIGN(VCMJitterBuffer); | 393 RTC_DISALLOW_COPY_AND_ASSIGN(VCMJitterBuffer); |
398 }; | 394 }; |
399 } // namespace webrtc | 395 } // namespace webrtc |
400 | 396 |
401 #endif // WEBRTC_MODULES_VIDEO_CODING_JITTER_BUFFER_H_ | 397 #endif // WEBRTC_MODULES_VIDEO_CODING_JITTER_BUFFER_H_ |
OLD | NEW |