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 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
78 false, | 78 false, |
79 "Plot the audio encoder number of channels."); | 79 "Plot the audio encoder number of channels."); |
80 DEFINE_string( | 80 DEFINE_string( |
81 force_fieldtrials, | 81 force_fieldtrials, |
82 "", | 82 "", |
83 "Field trials control experimental feature code which can be forced. " | 83 "Field trials control experimental feature code which can be forced. " |
84 "E.g. running with --force_fieldtrials=WebRTC-FooFeature/Enabled/" | 84 "E.g. running with --force_fieldtrials=WebRTC-FooFeature/Enabled/" |
85 " will assign the group Enabled to field trial WebRTC-FooFeature. Multiple " | 85 " will assign the group Enabled to field trial WebRTC-FooFeature. Multiple " |
86 "trials are separated by \"/\""); | 86 "trials are separated by \"/\""); |
87 | 87 |
| 88 DEFINE_bool( |
| 89 show_detector_state, |
| 90 false, |
| 91 "Mark the delay based bwe detector state on the total bitrate graph"); |
| 92 |
88 int main(int argc, char* argv[]) { | 93 int main(int argc, char* argv[]) { |
89 std::string program_name = argv[0]; | 94 std::string program_name = argv[0]; |
90 std::string usage = | 95 std::string usage = |
91 "A tool for visualizing WebRTC event logs.\n" | 96 "A tool for visualizing WebRTC event logs.\n" |
92 "Example usage:\n" + | 97 "Example usage:\n" + |
93 program_name + " <logfile> | python\n" + "Run " + program_name + | 98 program_name + " <logfile> | python\n" + "Run " + program_name + |
94 " --help for a list of command line options\n"; | 99 " --help for a list of command line options\n"; |
95 google::SetUsageMessage(usage); | 100 google::SetUsageMessage(usage); |
96 google::ParseCommandLineFlags(&argc, &argv, true); | 101 google::ParseCommandLineFlags(&argc, &argv, true); |
97 | 102 |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
162 } | 167 } |
163 | 168 |
164 if (FLAGS_plot_all || FLAGS_plot_fraction_loss) { | 169 if (FLAGS_plot_all || FLAGS_plot_fraction_loss) { |
165 analyzer.CreateFractionLossGraph(collection->AppendNewPlot()); | 170 analyzer.CreateFractionLossGraph(collection->AppendNewPlot()); |
166 analyzer.CreateIncomingPacketLossGraph(collection->AppendNewPlot()); | 171 analyzer.CreateIncomingPacketLossGraph(collection->AppendNewPlot()); |
167 } | 172 } |
168 | 173 |
169 if (FLAGS_plot_all || FLAGS_plot_total_bitrate) { | 174 if (FLAGS_plot_all || FLAGS_plot_total_bitrate) { |
170 if (FLAGS_incoming) { | 175 if (FLAGS_incoming) { |
171 analyzer.CreateTotalBitrateGraph(webrtc::PacketDirection::kIncomingPacket, | 176 analyzer.CreateTotalBitrateGraph(webrtc::PacketDirection::kIncomingPacket, |
172 collection->AppendNewPlot()); | 177 collection->AppendNewPlot(), |
| 178 FLAGS_show_detector_state); |
173 } | 179 } |
174 if (FLAGS_outgoing) { | 180 if (FLAGS_outgoing) { |
175 analyzer.CreateTotalBitrateGraph(webrtc::PacketDirection::kOutgoingPacket, | 181 analyzer.CreateTotalBitrateGraph(webrtc::PacketDirection::kOutgoingPacket, |
176 collection->AppendNewPlot()); | 182 collection->AppendNewPlot(), |
| 183 FLAGS_show_detector_state); |
177 } | 184 } |
178 } | 185 } |
179 | 186 |
180 if (FLAGS_plot_all || FLAGS_plot_stream_bitrate) { | 187 if (FLAGS_plot_all || FLAGS_plot_stream_bitrate) { |
181 if (FLAGS_incoming) { | 188 if (FLAGS_incoming) { |
182 analyzer.CreateStreamBitrateGraph( | 189 analyzer.CreateStreamBitrateGraph( |
183 webrtc::PacketDirection::kIncomingPacket, | 190 webrtc::PacketDirection::kIncomingPacket, |
184 collection->AppendNewPlot()); | 191 collection->AppendNewPlot()); |
185 } | 192 } |
186 if (FLAGS_outgoing) { | 193 if (FLAGS_outgoing) { |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
224 } | 231 } |
225 | 232 |
226 if (FLAGS_plot_all || FLAGS_audio_encoder_num_channels) { | 233 if (FLAGS_plot_all || FLAGS_audio_encoder_num_channels) { |
227 analyzer.CreateAudioEncoderNumChannelsGraph(collection->AppendNewPlot()); | 234 analyzer.CreateAudioEncoderNumChannelsGraph(collection->AppendNewPlot()); |
228 } | 235 } |
229 | 236 |
230 collection->Draw(); | 237 collection->Draw(); |
231 | 238 |
232 return 0; | 239 return 0; |
233 } | 240 } |
OLD | NEW |