OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2014 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 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 &num_lost_sequence_numbers); | 63 &num_lost_sequence_numbers); |
64 } | 64 } |
65 | 65 |
66 if (report_blocks.size() == 1) { | 66 if (report_blocks.size() == 1) { |
67 // No aggregation needed. | 67 // No aggregation needed. |
68 return report_blocks[0]; | 68 return report_blocks[0]; |
69 } | 69 } |
70 // Fraction lost since previous report block. | 70 // Fraction lost since previous report block. |
71 aggregate.fractionLost = | 71 aggregate.fractionLost = |
72 FractionLost(num_lost_sequence_numbers, num_sequence_numbers); | 72 FractionLost(num_lost_sequence_numbers, num_sequence_numbers); |
73 aggregate.jitter = | 73 aggregate.jitter = static_cast<uint32_t>( |
74 (aggregate.jitter + report_blocks.size() / 2) / report_blocks.size(); | 74 (aggregate.jitter + report_blocks.size() / 2) / report_blocks.size()); |
75 return aggregate; | 75 return aggregate; |
76 } | 76 } |
77 | 77 |
78 void ReportBlockStats::StoreAndAddPacketIncrement( | 78 void ReportBlockStats::StoreAndAddPacketIncrement( |
79 const RTCPReportBlock& report_block, | 79 const RTCPReportBlock& report_block, |
80 uint32_t* num_sequence_numbers, | 80 uint32_t* num_sequence_numbers, |
81 uint32_t* num_lost_sequence_numbers) { | 81 uint32_t* num_lost_sequence_numbers) { |
82 // Get diff with previous report block. | 82 // Get diff with previous report block. |
83 ReportBlockMap::iterator prev_report_block = prev_report_blocks_.find( | 83 ReportBlockMap::iterator prev_report_block = prev_report_blocks_.find( |
84 report_block.sourceSSRC); | 84 report_block.sourceSSRC); |
(...skipping 17 matching lines...) Expand all Loading... |
102 int ReportBlockStats::FractionLostInPercent() const { | 102 int ReportBlockStats::FractionLostInPercent() const { |
103 if (num_sequence_numbers_ == 0) { | 103 if (num_sequence_numbers_ == 0) { |
104 return -1; | 104 return -1; |
105 } | 105 } |
106 return FractionLost( | 106 return FractionLost( |
107 num_lost_sequence_numbers_, num_sequence_numbers_) * 100 / 255; | 107 num_lost_sequence_numbers_, num_sequence_numbers_) * 100 / 255; |
108 } | 108 } |
109 | 109 |
110 } // namespace webrtc | 110 } // namespace webrtc |
111 | 111 |
OLD | NEW |