Index: webrtc/modules/audio_coding/test/insert_packet_with_timing.cc |
diff --git a/webrtc/modules/audio_coding/test/insert_packet_with_timing.cc b/webrtc/modules/audio_coding/test/insert_packet_with_timing.cc |
index 4fa4e5276c943f30780abaca3ed41cdfc6baabe3..db58289b1652f5327854a59b2d1a3753154355a2 100644 |
--- a/webrtc/modules/audio_coding/test/insert_packet_with_timing.cc |
+++ b/webrtc/modules/audio_coding/test/insert_packet_with_timing.cc |
@@ -9,31 +9,32 @@ |
*/ |
#include <stdio.h> |
+#include <string.h> |
#include <memory> |
-#include "gflags/gflags.h" |
#include "webrtc/common_types.h" |
#include "webrtc/modules/audio_coding/codecs/audio_format_conversion.h" |
#include "webrtc/modules/audio_coding/include/audio_coding_module.h" |
#include "webrtc/modules/audio_coding/test/Channel.h" |
#include "webrtc/modules/audio_coding/test/PCMFile.h" |
#include "webrtc/modules/include/module_common_types.h" |
+#include "webrtc/rtc_base/flags.h" |
#include "webrtc/system_wrappers/include/clock.h" |
#include "webrtc/test/gtest.h" |
#include "webrtc/test/testsupport/fileutils.h" |
// Codec. |
DEFINE_string(codec, "opus", "Codec Name"); |
-DEFINE_int32(codec_sample_rate_hz, 48000, "Sampling rate in Hertz."); |
-DEFINE_int32(codec_channels, 1, "Number of channels of the codec."); |
+DEFINE_int(codec_sample_rate_hz, 48000, "Sampling rate in Hertz."); |
+DEFINE_int(codec_channels, 1, "Number of channels of the codec."); |
// PCM input/output. |
DEFINE_string(input, "", "Input PCM file at 16 kHz."); |
DEFINE_bool(input_stereo, false, "Input is stereo."); |
-DEFINE_int32(input_fs_hz, 32000, "Input sample rate Hz."); |
+DEFINE_int(input_fs_hz, 32000, "Input sample rate Hz."); |
DEFINE_string(output, "insert_rtp_with_timing_out.pcm", "OutputFile"); |
-DEFINE_int32(output_fs_hz, 32000, "Output sample rate Hz"); |
+DEFINE_int(output_fs_hz, 32000, "Output sample rate Hz"); |
// Timing files |
DEFINE_string(seq_num, "seq_num", "Sequence number file."); |
@@ -45,7 +46,9 @@ DEFINE_string(delay, "", "Log for delay."); |
// Other setups |
DEFINE_bool(verbose, false, "Verbosity."); |
-DEFINE_double(loss_rate, 0, "Rate of packet loss < 1"); |
+DEFINE_float(loss_rate, 0, "Rate of packet loss < 1"); |
+ |
+DEFINE_bool(help, false, "Prints this message."); |
const int32_t kAudioPlayedOut = 0x00000001; |
const int32_t kPacketPushedIn = 0x00000001 << 1; |
@@ -61,10 +64,10 @@ class InsertPacketWithTiming { |
send_acm_(AudioCodingModule::Create(0, sender_clock_)), |
receive_acm_(AudioCodingModule::Create(0, receiver_clock_)), |
channel_(new Channel), |
- seq_num_fid_(fopen(FLAGS_seq_num.c_str(), "rt")), |
- send_ts_fid_(fopen(FLAGS_send_ts.c_str(), "rt")), |
- receive_ts_fid_(fopen(FLAGS_receive_ts.c_str(), "rt")), |
- pcm_out_fid_(fopen(FLAGS_output.c_str(), "wb")), |
+ seq_num_fid_(fopen(FLAG_seq_num, "rt")), |
+ send_ts_fid_(fopen(FLAG_send_ts, "rt")), |
+ receive_ts_fid_(fopen(FLAG_receive_ts, "rt")), |
+ pcm_out_fid_(fopen(FLAG_output, "wb")), |
samples_in_1ms_(48), |
num_10ms_in_codec_frame_(2), // Typical 20 ms frames. |
time_to_insert_packet_ms_(3), // An arbitrary offset on pushing packet. |
@@ -90,9 +93,9 @@ class InsertPacketWithTiming { |
next_receive_ts_ = ReceiveTimestamp(); |
CodecInst codec; |
- ASSERT_EQ(0, AudioCodingModule::Codec(FLAGS_codec.c_str(), &codec, |
- FLAGS_codec_sample_rate_hz, |
- FLAGS_codec_channels)); |
+ ASSERT_EQ(0, AudioCodingModule::Codec(FLAG_codec, &codec, |
+ FLAG_codec_sample_rate_hz, |
+ FLAG_codec_channels)); |
ASSERT_EQ(0, receive_acm_->InitializeReceiver()); |
ASSERT_EQ(0, send_acm_->RegisterSendCodec(codec)); |
ASSERT_EQ(true, receive_acm_->RegisterReceiveCodec(codec.pltype, |
@@ -105,27 +108,27 @@ class InsertPacketWithTiming { |
channel_->RegisterReceiverACM(receive_acm_.get()); |
send_acm_->RegisterTransportCallback(channel_); |
- if (FLAGS_input.size() == 0) { |
+ if (strlen(FLAG_input) == 0) { |
std::string file_name = test::ResourcePath("audio_coding/testfile32kHz", |
"pcm"); |
pcm_in_fid_.Open(file_name, 32000, "r", true); // auto-rewind |
std::cout << "Input file " << file_name << " 32 kHz mono." << std::endl; |
} else { |
- pcm_in_fid_.Open(FLAGS_input, static_cast<uint16_t>(FLAGS_input_fs_hz), |
+ pcm_in_fid_.Open(FLAG_input, static_cast<uint16_t>(FLAG_input_fs_hz), |
"r", true); // auto-rewind |
- std::cout << "Input file " << FLAGS_input << "at " << FLAGS_input_fs_hz |
- << " Hz in " << ((FLAGS_input_stereo) ? "stereo." : "mono.") |
+ std::cout << "Input file " << FLAG_input << "at " << FLAG_input_fs_hz |
+ << " Hz in " << ((FLAG_input_stereo) ? "stereo." : "mono.") |
<< std::endl; |
- pcm_in_fid_.ReadStereo(FLAGS_input_stereo); |
+ pcm_in_fid_.ReadStereo(FLAG_input_stereo); |
} |
ASSERT_TRUE(pcm_out_fid_ != NULL); |
- std::cout << "Output file " << FLAGS_output << " at " << FLAGS_output_fs_hz |
+ std::cout << "Output file " << FLAG_output << " at " << FLAG_output_fs_hz |
<< " Hz." << std::endl; |
// Other setups |
- if (FLAGS_loss_rate > 0) |
- loss_threshold_ = RAND_MAX * FLAGS_loss_rate; |
+ if (FLAG_loss_rate > 0) |
+ loss_threshold_ = RAND_MAX * FLAG_loss_rate; |
else |
loss_threshold_ = 0; |
} |
@@ -144,7 +147,7 @@ class InsertPacketWithTiming { |
if (time_to_playout_audio_ms_ == 0) { |
time_to_playout_audio_ms_ = kPlayoutPeriodMs; |
bool muted; |
- receive_acm_->PlayoutData10Ms(static_cast<int>(FLAGS_output_fs_hz), |
+ receive_acm_->PlayoutData10Ms(static_cast<int>(FLAG_output_fs_hz), |
&frame_, &muted); |
ASSERT_FALSE(muted); |
fwrite(frame_.data(), sizeof(*frame_.data()), |
@@ -180,7 +183,7 @@ class InsertPacketWithTiming { |
lost = true; |
} |
- if (FLAGS_verbose) { |
+ if (FLAG_verbose) { |
if (!lost) { |
std::cout << "\nInserting packet number " << seq_num |
<< " timestamp " << ts << std::endl; |
@@ -279,13 +282,20 @@ class InsertPacketWithTiming { |
} // webrtc |
int main(int argc, char* argv[]) { |
- google::ParseCommandLineFlags(&argc, &argv, true); |
+ if (rtc::FlagList::SetFlagsFromCommandLine(&argc, argv, true)) { |
+ return 1; |
+ } |
+ if (FLAG_help) { |
+ rtc::FlagList::Print(nullptr, false); |
+ return 0; |
+ } |
+ |
webrtc::InsertPacketWithTiming test; |
test.SetUp(); |
FILE* delay_log = NULL; |
- if (FLAGS_delay.size() > 0) { |
- delay_log = fopen(FLAGS_delay.c_str(), "wt"); |
+ if (strlen(FLAG_delay) > 0) { |
+ delay_log = fopen(FLAG_delay, "wt"); |
if (delay_log == NULL) { |
std::cout << "Cannot open the file to log delay values." << std::endl; |
exit(1); |