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 | |
80 private: | 77 private: |
81 struct FrameKey { | 78 struct FrameKey { |
82 FrameKey() : picture_id(0), spatial_layer(0) {} | 79 FrameKey() : picture_id(0), spatial_layer(0) {} |
83 FrameKey(uint16_t picture_id, uint8_t spatial_layer) | 80 FrameKey(uint16_t picture_id, uint8_t spatial_layer) |
84 : picture_id(picture_id), spatial_layer(spatial_layer) {} | 81 : picture_id(picture_id), spatial_layer(spatial_layer) {} |
85 | 82 |
86 bool operator<(const FrameKey& rhs) const { | 83 bool operator<(const FrameKey& rhs) const { |
87 if (picture_id == rhs.picture_id) | 84 if (picture_id == rhs.picture_id) |
88 return spatial_layer < rhs.spatial_layer; | 85 return spatial_layer < rhs.spatial_layer; |
89 return AheadOf(rhs.picture_id, picture_id); | 86 return AheadOf(rhs.picture_id, picture_id); |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
183 VCMReceiveStatisticsCallback* const stats_callback_; | 180 VCMReceiveStatisticsCallback* const stats_callback_; |
184 int64_t last_log_non_decoded_ms_ GUARDED_BY(crit_); | 181 int64_t last_log_non_decoded_ms_ GUARDED_BY(crit_); |
185 | 182 |
186 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(FrameBuffer); | 183 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(FrameBuffer); |
187 }; | 184 }; |
188 | 185 |
189 } // namespace video_coding | 186 } // namespace video_coding |
190 } // namespace webrtc | 187 } // namespace webrtc |
191 | 188 |
192 #endif // WEBRTC_MODULES_VIDEO_CODING_FRAME_BUFFER2_H_ | 189 #endif // WEBRTC_MODULES_VIDEO_CODING_FRAME_BUFFER2_H_ |
OLD | NEW |