Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: webrtc/modules/audio_coding/neteq/test/neteq_speed_test.cc

Issue 3005483002: Replace remaining gflags usages with rtc_base/flags (Closed)
Patch Set: Rebase Created 3 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
11 #include <stdio.h> 11 #include <stdio.h>
12 12
13 #include <iostream> 13 #include <iostream>
14 14
15 #include "gflags/gflags.h"
16 #include "webrtc/modules/audio_coding/neteq/tools/neteq_performance_test.h" 15 #include "webrtc/modules/audio_coding/neteq/tools/neteq_performance_test.h"
16 #include "webrtc/rtc_base/flags.h"
17 #include "webrtc/test/testsupport/fileutils.h" 17 #include "webrtc/test/testsupport/fileutils.h"
18 #include "webrtc/typedefs.h" 18 #include "webrtc/typedefs.h"
19 19
20 // Flag validators.
21 static bool ValidateRuntime(const char* flagname, int value) {
22 if (value > 0) // Value is ok.
23 return true;
24 printf("Invalid value for --%s: %d\n", flagname, static_cast<int>(value));
25 return false;
26 }
27 static bool ValidateLossrate(const char* flagname, int value) {
28 if (value >= 0) // Value is ok.
29 return true;
30 printf("Invalid value for --%s: %d\n", flagname, static_cast<int>(value));
31 return false;
32 }
33 static bool ValidateDriftfactor(const char* flagname, double value) {
34 if (value >= 0.0 && value < 1.0) // Value is ok.
35 return true;
36 printf("Invalid value for --%s: %f\n", flagname, value);
37 return false;
38 }
39
40 // Define command line flags. 20 // Define command line flags.
41 DEFINE_int32(runtime_ms, 10000, "Simulated runtime in ms."); 21 DEFINE_int(runtime_ms, 10000, "Simulated runtime in ms.");
42 static const bool runtime_ms_dummy = 22 DEFINE_int(lossrate, 10,
43 google::RegisterFlagValidator(&FLAGS_runtime_ms, &ValidateRuntime); 23 "Packet lossrate; drop every N packets.");
44 DEFINE_int32(lossrate, 10, 24 DEFINE_float(drift, 0.1f,
45 "Packet lossrate; drop every N packets.");
46 static const bool lossrate_dummy =
47 google::RegisterFlagValidator(&FLAGS_lossrate, &ValidateLossrate);
48 DEFINE_double(drift, 0.1,
49 "Clockdrift factor."); 25 "Clockdrift factor.");
50 static const bool drift_dummy = 26 DEFINE_bool(help, false, "Print this message.");
51 google::RegisterFlagValidator(&FLAGS_drift, &ValidateDriftfactor);
52 27
53 int main(int argc, char* argv[]) { 28 int main(int argc, char* argv[]) {
54 std::string program_name = argv[0]; 29 std::string program_name = argv[0];
55 std::string usage = "Tool for measuring the speed of NetEq.\n" 30 std::string usage = "Tool for measuring the speed of NetEq.\n"
56 "Usage: " + program_name + " [options]\n\n" 31 "Usage: " + program_name + " [options]\n\n"
57 " --runtime_ms=N runtime in ms; default is 10000 ms\n" 32 " --runtime_ms=N runtime in ms; default is 10000 ms\n"
58 " --lossrate=N drop every N packets; default is 10\n" 33 " --lossrate=N drop every N packets; default is 10\n"
59 " --drift=F clockdrift factor between 0.0 and 1.0; " 34 " --drift=F clockdrift factor between 0.0 and 1.0; "
60 "default is 0.1\n"; 35 "default is 0.1\n";
61 google::SetUsageMessage(usage);
62 google::ParseCommandLineFlags(&argc, &argv, true);
63 webrtc::test::SetExecutablePath(argv[0]); 36 webrtc::test::SetExecutablePath(argv[0]);
64 37 if (rtc::FlagList::SetFlagsFromCommandLine(&argc, argv, true) ||
65 if (argc != 1) { 38 FLAG_help || argc != 1) {
66 // Print usage information. 39 printf("%s", usage.c_str());
67 std::cout << google::ProgramUsage(); 40 if (FLAG_help) {
68 return 0; 41 rtc::FlagList::Print(nullptr, false);
42 return 0;
43 }
44 return 1;
69 } 45 }
46 RTC_CHECK_GT(FLAG_runtime_ms, 0);
47 RTC_CHECK_GE(FLAG_lossrate, 0);
48 RTC_CHECK(FLAG_drift >= 0.0 && FLAG_drift < 1.0);
70 49
71 int64_t result = 50 int64_t result =
72 webrtc::test::NetEqPerformanceTest::Run(FLAGS_runtime_ms, FLAGS_lossrate, 51 webrtc::test::NetEqPerformanceTest::Run(FLAG_runtime_ms, FLAG_lossrate,
73 FLAGS_drift); 52 FLAG_drift);
74 if (result <= 0) { 53 if (result <= 0) {
75 std::cout << "There was an error" << std::endl; 54 std::cout << "There was an error" << std::endl;
76 return -1; 55 return -1;
77 } 56 }
78 57
79 std::cout << "Simulation done" << std::endl; 58 std::cout << "Simulation done" << std::endl;
80 std::cout << "Runtime = " << result << " ms" << std::endl; 59 std::cout << "Runtime = " << result << " ms" << std::endl;
81 return 0; 60 return 0;
82 } 61 }
OLDNEW
« no previous file with comments | « webrtc/modules/audio_coding/BUILD.gn ('k') | webrtc/modules/audio_coding/neteq/tools/neteq_rtpplay.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698