OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2016 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 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 void SetProtectionMode(VCMVideoProtection mode); | 67 void SetProtectionMode(VCMVideoProtection mode); |
68 | 68 |
69 // Start the frame buffer, has no effect if the frame buffer is started. | 69 // Start the frame buffer, has no effect if the frame buffer is started. |
70 // The frame buffer is started upon construction. | 70 // The frame buffer is started upon construction. |
71 void Start(); | 71 void Start(); |
72 | 72 |
73 // Stop the frame buffer, causing any sleeping thread in NextFrame to | 73 // Stop the frame buffer, causing any sleeping thread in NextFrame to |
74 // return immediately. | 74 // return immediately. |
75 void Stop(); | 75 void Stop(); |
76 | 76 |
| 77 // Updates the RTT for jitter buffer estimation. |
| 78 void UpdateRtt(int64_t rtt_ms); |
| 79 |
77 private: | 80 private: |
78 struct FrameKey { | 81 struct FrameKey { |
79 FrameKey() : picture_id(-1), spatial_layer(0) {} | 82 FrameKey() : picture_id(-1), spatial_layer(0) {} |
80 FrameKey(int64_t picture_id, uint8_t spatial_layer) | 83 FrameKey(int64_t picture_id, uint8_t spatial_layer) |
81 : picture_id(picture_id), spatial_layer(spatial_layer) {} | 84 : picture_id(picture_id), spatial_layer(spatial_layer) {} |
82 | 85 |
83 bool operator<(const FrameKey& rhs) const { | 86 bool operator<(const FrameKey& rhs) const { |
84 if (picture_id == rhs.picture_id) | 87 if (picture_id == rhs.picture_id) |
85 return spatial_layer < rhs.spatial_layer; | 88 return spatial_layer < rhs.spatial_layer; |
86 return picture_id < rhs.picture_id; | 89 return picture_id < rhs.picture_id; |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
180 VCMReceiveStatisticsCallback* const stats_callback_; | 183 VCMReceiveStatisticsCallback* const stats_callback_; |
181 int64_t last_log_non_decoded_ms_ RTC_GUARDED_BY(crit_); | 184 int64_t last_log_non_decoded_ms_ RTC_GUARDED_BY(crit_); |
182 | 185 |
183 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(FrameBuffer); | 186 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(FrameBuffer); |
184 }; | 187 }; |
185 | 188 |
186 } // namespace video_coding | 189 } // namespace video_coding |
187 } // namespace webrtc | 190 } // namespace webrtc |
188 | 191 |
189 #endif // MODULES_VIDEO_CODING_FRAME_BUFFER2_H_ | 192 #endif // MODULES_VIDEO_CODING_FRAME_BUFFER2_H_ |
OLD | NEW |