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 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
93 | 93 |
94 void CreateNetworkDelayFeedbackGraph(Plot* plot); | 94 void CreateNetworkDelayFeedbackGraph(Plot* plot); |
95 void CreateTimestampGraph(Plot* plot); | 95 void CreateTimestampGraph(Plot* plot); |
96 | 96 |
97 void CreateAudioEncoderTargetBitrateGraph(Plot* plot); | 97 void CreateAudioEncoderTargetBitrateGraph(Plot* plot); |
98 void CreateAudioEncoderFrameLengthGraph(Plot* plot); | 98 void CreateAudioEncoderFrameLengthGraph(Plot* plot); |
99 void CreateAudioEncoderUplinkPacketLossFractionGraph(Plot* plot); | 99 void CreateAudioEncoderUplinkPacketLossFractionGraph(Plot* plot); |
100 void CreateAudioEncoderEnableFecGraph(Plot* plot); | 100 void CreateAudioEncoderEnableFecGraph(Plot* plot); |
101 void CreateAudioEncoderEnableDtxGraph(Plot* plot); | 101 void CreateAudioEncoderEnableDtxGraph(Plot* plot); |
102 void CreateAudioEncoderNumChannelsGraph(Plot* plot); | 102 void CreateAudioEncoderNumChannelsGraph(Plot* plot); |
103 void CreateAudioJitterBufferGraph(const std::string& replacement_file_name, | |
104 int file_sample_rate_hz, | |
105 Plot* plot); | |
103 | 106 |
104 // Returns a vector of capture and arrival timestamps for the video frames | 107 // Returns a vector of capture and arrival timestamps for the video frames |
105 // of the stream with the most number of frames. | 108 // of the stream with the most number of frames. |
106 std::vector<std::pair<int64_t, int64_t>> GetFrameTimestamps() const; | 109 std::vector<std::pair<int64_t, int64_t>> GetFrameTimestamps() const; |
107 | 110 |
108 private: | 111 private: |
109 class StreamId { | 112 class StreamId { |
110 public: | 113 public: |
111 StreamId(uint32_t ssrc, webrtc::PacketDirection direction) | 114 StreamId(uint32_t ssrc, webrtc::PacketDirection direction) |
112 : ssrc_(ssrc), direction_(direction) {} | 115 : ssrc_(ssrc), direction_(direction) {} |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
156 std::set<StreamId> video_ssrcs_; | 159 std::set<StreamId> video_ssrcs_; |
157 std::set<StreamId> audio_ssrcs_; | 160 std::set<StreamId> audio_ssrcs_; |
158 | 161 |
159 // Maps a stream identifier consisting of ssrc and direction to the parsed | 162 // Maps a stream identifier consisting of ssrc and direction to the parsed |
160 // RTP headers in that stream. Header extensions are parsed if the stream | 163 // RTP headers in that stream. Header extensions are parsed if the stream |
161 // has been configured. | 164 // has been configured. |
162 std::map<StreamId, std::vector<LoggedRtpPacket>> rtp_packets_; | 165 std::map<StreamId, std::vector<LoggedRtpPacket>> rtp_packets_; |
163 | 166 |
164 std::map<StreamId, std::vector<LoggedRtcpPacket>> rtcp_packets_; | 167 std::map<StreamId, std::vector<LoggedRtcpPacket>> rtcp_packets_; |
165 | 168 |
169 // Maps an SSRC to the timestamps of parsed audio playout events. | |
170 std::map<uint32_t, std::vector<uint64_t>> audio_playout_events_; | |
171 | |
172 // Stores the timestamps for all log end events found. | |
173 std::vector<uint64_t> log_end_events_; | |
terelius
2017/06/09 14:48:36
std::vector<std::pair<uint64_t, uint64_t>> log_seg
hlundin-webrtc
2017/06/12 07:15:08
I did something, but I'm not sure what assumptions
terelius
2017/06/13 15:16:26
Yes, we write a LOG_START event whenever we start
hlundin-webrtc
2017/06/14 12:09:12
Done. That seems like a good solution.
| |
174 | |
166 // A list of all updates from the send-side loss-based bandwidth estimator. | 175 // A list of all updates from the send-side loss-based bandwidth estimator. |
167 std::vector<LossBasedBweUpdate> bwe_loss_updates_; | 176 std::vector<LossBasedBweUpdate> bwe_loss_updates_; |
168 | 177 |
169 std::vector<AudioNetworkAdaptationEvent> audio_network_adaptation_events_; | 178 std::vector<AudioNetworkAdaptationEvent> audio_network_adaptation_events_; |
170 | 179 |
171 std::vector<ParsedRtcEventLog::BweProbeClusterCreatedEvent> | 180 std::vector<ParsedRtcEventLog::BweProbeClusterCreatedEvent> |
172 bwe_probe_cluster_created_events_; | 181 bwe_probe_cluster_created_events_; |
173 | 182 |
174 std::vector<ParsedRtcEventLog::BweProbeResultEvent> bwe_probe_result_events_; | 183 std::vector<ParsedRtcEventLog::BweProbeResultEvent> bwe_probe_result_events_; |
175 | 184 |
(...skipping 11 matching lines...) Expand all Loading... | |
187 uint64_t end_time_; | 196 uint64_t end_time_; |
188 | 197 |
189 // Duration (in seconds) of log file. | 198 // Duration (in seconds) of log file. |
190 float call_duration_s_; | 199 float call_duration_s_; |
191 }; | 200 }; |
192 | 201 |
193 } // namespace plotting | 202 } // namespace plotting |
194 } // namespace webrtc | 203 } // namespace webrtc |
195 | 204 |
196 #endif // WEBRTC_TOOLS_EVENT_LOG_VISUALIZER_ANALYZER_H_ | 205 #endif // WEBRTC_TOOLS_EVENT_LOG_VISUALIZER_ANALYZER_H_ |
OLD | NEW |