OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 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 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 int Fraction(int min_required_samples, float multiplier) const; | 131 int Fraction(int min_required_samples, float multiplier) const; |
132 int sum; | 132 int sum; |
133 int num_samples; | 133 int num_samples; |
134 }; | 134 }; |
135 struct StatsUpdateTimes { | 135 struct StatsUpdateTimes { |
136 StatsUpdateTimes() : resolution_update_ms(0), bitrate_update_ms(0) {} | 136 StatsUpdateTimes() : resolution_update_ms(0), bitrate_update_ms(0) {} |
137 int64_t resolution_update_ms; | 137 int64_t resolution_update_ms; |
138 int64_t bitrate_update_ms; | 138 int64_t bitrate_update_ms; |
139 }; | 139 }; |
140 struct QpCounters { | 140 struct QpCounters { |
141 SampleCounter vp8; // QP range: 0-127 | 141 SampleCounter vp8; // QP range: 0-127 |
142 SampleCounter vp9; // QP range: 0-255 | 142 SampleCounter vp9; // QP range: 0-255 |
| 143 SampleCounter h264; // QP range: 0-51 |
143 }; | 144 }; |
144 void PurgeOldStats() EXCLUSIVE_LOCKS_REQUIRED(crit_); | 145 void PurgeOldStats() EXCLUSIVE_LOCKS_REQUIRED(crit_); |
145 VideoSendStream::StreamStats* GetStatsEntry(uint32_t ssrc) | 146 VideoSendStream::StreamStats* GetStatsEntry(uint32_t ssrc) |
146 EXCLUSIVE_LOCKS_REQUIRED(crit_); | 147 EXCLUSIVE_LOCKS_REQUIRED(crit_); |
147 | 148 |
148 Clock* const clock_; | 149 Clock* const clock_; |
149 const std::string payload_name_; | 150 const std::string payload_name_; |
150 const VideoSendStream::Config::Rtp rtp_config_; | 151 const VideoSendStream::Config::Rtp rtp_config_; |
151 rtc::CriticalSection crit_; | 152 rtc::CriticalSection crit_; |
152 VideoEncoderConfig::ContentType content_type_ GUARDED_BY(crit_); | 153 VideoEncoderConfig::ContentType content_type_ GUARDED_BY(crit_); |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
193 const VideoSendStream::Stats start_stats_; | 194 const VideoSendStream::Stats start_stats_; |
194 std::map<int, QpCounters> | 195 std::map<int, QpCounters> |
195 qp_counters_; // QP counters mapped by spatial idx. | 196 qp_counters_; // QP counters mapped by spatial idx. |
196 }; | 197 }; |
197 | 198 |
198 std::unique_ptr<UmaSamplesContainer> uma_container_ GUARDED_BY(crit_); | 199 std::unique_ptr<UmaSamplesContainer> uma_container_ GUARDED_BY(crit_); |
199 }; | 200 }; |
200 | 201 |
201 } // namespace webrtc | 202 } // namespace webrtc |
202 #endif // WEBRTC_VIDEO_SEND_STATISTICS_PROXY_H_ | 203 #endif // WEBRTC_VIDEO_SEND_STATISTICS_PROXY_H_ |
OLD | NEW |