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

Unified Diff: webrtc/modules/audio_coding/codecs/opus/opus_unittest.cc

Issue 1230503003: Update a ton of audio code to use size_t more correctly and in general reduce (Closed) Base URL: https://chromium.googlesource.com/external/webrtc@master
Patch Set: Resync Created 5 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: webrtc/modules/audio_coding/codecs/opus/opus_unittest.cc
diff --git a/webrtc/modules/audio_coding/codecs/opus/opus_unittest.cc b/webrtc/modules/audio_coding/codecs/opus/opus_unittest.cc
index e218a6baa5dc1d8d5c79c5ed80ac917bcc875cf3..2208f741f2e18cb3ee2ee8f36613879af7dc6795 100644
--- a/webrtc/modules/audio_coding/codecs/opus/opus_unittest.cc
+++ b/webrtc/modules/audio_coding/codecs/opus/opus_unittest.cc
@@ -25,11 +25,11 @@ using ::testing::Combine;
// Maximum number of bytes in output bitstream.
const size_t kMaxBytes = 1000;
// Sample rate of Opus.
-const int kOpusRateKhz = 48;
+const size_t kOpusRateKhz = 48;
// Number of samples-per-channel in a 20 ms frame, sampled at 48 kHz.
-const int kOpus20msFrameSamples = kOpusRateKhz * 20;
+const size_t kOpus20msFrameSamples = kOpusRateKhz * 20;
// Number of samples-per-channel in a 10 ms frame, sampled at 48 kHz.
-const int kOpus10msFrameSamples = kOpusRateKhz * 10;
+const size_t kOpus10msFrameSamples = kOpusRateKhz * 10;
class OpusTest : public TestWithParam<::testing::tuple<int, int>> {
protected:
@@ -45,7 +45,7 @@ class OpusTest : public TestWithParam<::testing::tuple<int, int>> {
int EncodeDecode(WebRtcOpusEncInst* encoder,
const int16_t* input_audio,
- int input_samples,
+ size_t input_samples,
WebRtcOpusDecInst* decoder,
int16_t* output_audio,
int16_t* audio_type);
@@ -58,7 +58,7 @@ class OpusTest : public TestWithParam<::testing::tuple<int, int>> {
AudioLoop speech_data_;
uint8_t bitstream_[kMaxBytes];
- int encoded_bytes_;
+ size_t encoded_bytes_;
int channels_;
int application_;
};
@@ -97,15 +97,14 @@ void OpusTest::SetMaxPlaybackRate(WebRtcOpusEncInst* encoder,
int OpusTest::EncodeDecode(WebRtcOpusEncInst* encoder,
const int16_t* input_audio,
- int input_samples,
+ size_t input_samples,
WebRtcOpusDecInst* decoder,
int16_t* output_audio,
int16_t* audio_type) {
- encoded_bytes_ = WebRtcOpus_Encode(encoder,
- input_audio,
- input_samples, kMaxBytes,
- bitstream_);
- EXPECT_GE(encoded_bytes_, 0);
+ int encoded_bytes_int = WebRtcOpus_Encode(encoder, input_audio, input_samples,
+ kMaxBytes, bitstream_);
+ EXPECT_GE(encoded_bytes_int, 0);
+ encoded_bytes_ = static_cast<size_t>(encoded_bytes_int);
return WebRtcOpus_Decode(decoder, bitstream_,
encoded_bytes_, output_audio,
audio_type);
@@ -139,13 +138,14 @@ void OpusTest::TestDtxEffect(bool dtx) {
for (int i = 0; i < 100; ++i) {
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, speech_data_.GetNextBlock(),
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, speech_data_.GetNextBlock(),
+ kOpus20msFrameSamples, opus_decoder_, output_data_decode,
+ &audio_type)));
// If not DTX, it should never enter DTX mode. If DTX, we do not care since
// whether it enters DTX depends on the signal type.
if (!dtx) {
- EXPECT_GT(encoded_bytes_, 1);
+ EXPECT_GT(encoded_bytes_, 1U);
EXPECT_EQ(0, opus_encoder_->in_dtx_mode);
EXPECT_EQ(0, opus_decoder_->in_dtx_mode);
EXPECT_EQ(0, audio_type); // Speech.
@@ -156,11 +156,11 @@ void OpusTest::TestDtxEffect(bool dtx) {
// However, DTX may happen after a while.
for (int i = 0; i < 30; ++i) {
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, silence,
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, silence, kOpus20msFrameSamples, opus_decoder_,
+ output_data_decode, &audio_type)));
if (!dtx) {
- EXPECT_GT(encoded_bytes_, 1);
+ EXPECT_GT(encoded_bytes_, 1U);
EXPECT_EQ(0, opus_encoder_->in_dtx_mode);
EXPECT_EQ(0, opus_decoder_->in_dtx_mode);
EXPECT_EQ(0, audio_type); // Speech.
@@ -180,17 +180,17 @@ void OpusTest::TestDtxEffect(bool dtx) {
// DTX mode is maintained 19 frames.
for (int i = 0; i < 19; ++i) {
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, silence,
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, silence, kOpus20msFrameSamples,
+ opus_decoder_, output_data_decode, &audio_type)));
if (dtx) {
- EXPECT_EQ(0, encoded_bytes_) // Send 0 byte.
+ EXPECT_EQ(0U, encoded_bytes_) // Send 0 byte.
<< "Opus should have entered DTX mode.";
EXPECT_EQ(1, opus_encoder_->in_dtx_mode);
EXPECT_EQ(1, opus_decoder_->in_dtx_mode);
EXPECT_EQ(2, audio_type); // Comfort noise.
} else {
- EXPECT_GT(encoded_bytes_, 1);
+ EXPECT_GT(encoded_bytes_, 1U);
EXPECT_EQ(0, opus_encoder_->in_dtx_mode);
EXPECT_EQ(0, opus_decoder_->in_dtx_mode);
EXPECT_EQ(0, audio_type); // Speech.
@@ -199,27 +199,27 @@ void OpusTest::TestDtxEffect(bool dtx) {
// Quit DTX after 19 frames.
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, silence,
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, silence, kOpus20msFrameSamples, opus_decoder_,
+ output_data_decode, &audio_type)));
- EXPECT_GT(encoded_bytes_, 1);
+ EXPECT_GT(encoded_bytes_, 1U);
EXPECT_EQ(0, opus_encoder_->in_dtx_mode);
EXPECT_EQ(0, opus_decoder_->in_dtx_mode);
EXPECT_EQ(0, audio_type); // Speech.
// Enters DTX again immediately.
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, silence,
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, silence, kOpus20msFrameSamples, opus_decoder_,
+ output_data_decode, &audio_type)));
if (dtx) {
- EXPECT_EQ(1, encoded_bytes_); // Send 1 byte.
+ EXPECT_EQ(1U, encoded_bytes_); // Send 1 byte.
EXPECT_EQ(1, opus_encoder_->in_dtx_mode);
EXPECT_EQ(1, opus_decoder_->in_dtx_mode);
EXPECT_EQ(2, audio_type); // Comfort noise.
} else {
- EXPECT_GT(encoded_bytes_, 1);
+ EXPECT_GT(encoded_bytes_, 1U);
EXPECT_EQ(0, opus_encoder_->in_dtx_mode);
EXPECT_EQ(0, opus_decoder_->in_dtx_mode);
EXPECT_EQ(0, audio_type); // Speech.
@@ -230,10 +230,10 @@ void OpusTest::TestDtxEffect(bool dtx) {
if (dtx) {
// Verify that encoder/decoder can jump out from DTX mode.
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, silence,
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
- EXPECT_GT(encoded_bytes_, 1);
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, silence, kOpus20msFrameSamples, opus_decoder_,
+ output_data_decode, &audio_type)));
+ EXPECT_GT(encoded_bytes_, 1U);
EXPECT_EQ(0, opus_encoder_->in_dtx_mode);
EXPECT_EQ(0, opus_decoder_->in_dtx_mode);
EXPECT_EQ(0, audio_type); // Speech.
@@ -311,9 +311,10 @@ TEST_P(OpusTest, OpusEncodeDecode) {
int16_t audio_type;
int16_t* output_data_decode = new int16_t[kOpus20msFrameSamples * channels_];
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, speech_data_.GetNextBlock(),
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, speech_data_.GetNextBlock(),
+ kOpus20msFrameSamples, opus_decoder_, output_data_decode,
+ &audio_type)));
// Free memory.
delete[] output_data_decode;
@@ -370,16 +371,17 @@ TEST_P(OpusTest, OpusDecodeInit) {
int16_t audio_type;
int16_t* output_data_decode = new int16_t[kOpus20msFrameSamples * channels_];
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, speech_data_.GetNextBlock(),
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, speech_data_.GetNextBlock(),
+ kOpus20msFrameSamples, opus_decoder_, output_data_decode,
+ &audio_type)));
EXPECT_EQ(0, WebRtcOpus_DecoderInit(opus_decoder_));
EXPECT_EQ(kOpus20msFrameSamples,
- WebRtcOpus_Decode(opus_decoder_, bitstream_,
- encoded_bytes_, output_data_decode,
- &audio_type));
+ static_cast<size_t>(WebRtcOpus_Decode(
+ opus_decoder_, bitstream_, encoded_bytes_, output_data_decode,
+ &audio_type)));
// Free memory.
delete[] output_data_decode;
@@ -508,14 +510,16 @@ TEST_P(OpusTest, OpusDecodePlc) {
int16_t audio_type;
int16_t* output_data_decode = new int16_t[kOpus20msFrameSamples * channels_];
EXPECT_EQ(kOpus20msFrameSamples,
- EncodeDecode(opus_encoder_, speech_data_.GetNextBlock(),
- kOpus20msFrameSamples, opus_decoder_,
- output_data_decode, &audio_type));
+ static_cast<size_t>(EncodeDecode(
+ opus_encoder_, speech_data_.GetNextBlock(),
+ kOpus20msFrameSamples, opus_decoder_, output_data_decode,
+ &audio_type)));
// Call decoder PLC.
int16_t* plc_buffer = new int16_t[kOpus20msFrameSamples * channels_];
EXPECT_EQ(kOpus20msFrameSamples,
- WebRtcOpus_DecodePlc(opus_decoder_, plc_buffer, 1));
+ static_cast<size_t>(WebRtcOpus_DecodePlc(
+ opus_decoder_, plc_buffer, 1)));
// Free memory.
delete[] plc_buffer;
@@ -535,24 +539,26 @@ TEST_P(OpusTest, OpusDurationEstimation) {
EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_));
// 10 ms. We use only first 10 ms of a 20 ms block.
- encoded_bytes_ = WebRtcOpus_Encode(opus_encoder_,
- speech_data_.GetNextBlock(),
- kOpus10msFrameSamples, kMaxBytes,
- bitstream_);
- EXPECT_GE(encoded_bytes_, 0);
+ int encoded_bytes_int = WebRtcOpus_Encode(opus_encoder_,
+ speech_data_.GetNextBlock(),
+ kOpus10msFrameSamples,
+ kMaxBytes, bitstream_);
+ EXPECT_GE(encoded_bytes_int, 0);
EXPECT_EQ(kOpus10msFrameSamples,
- WebRtcOpus_DurationEst(opus_decoder_, bitstream_,
- encoded_bytes_));
+ static_cast<size_t>(WebRtcOpus_DurationEst(
+ opus_decoder_, bitstream_,
+ static_cast<size_t>(encoded_bytes_int))));
// 20 ms
- encoded_bytes_ = WebRtcOpus_Encode(opus_encoder_,
- speech_data_.GetNextBlock(),
- kOpus20msFrameSamples, kMaxBytes,
- bitstream_);
- EXPECT_GE(encoded_bytes_, 0);
+ encoded_bytes_int = WebRtcOpus_Encode(opus_encoder_,
+ speech_data_.GetNextBlock(),
+ kOpus20msFrameSamples,
+ kMaxBytes, bitstream_);
+ EXPECT_GE(encoded_bytes_int, 0);
EXPECT_EQ(kOpus20msFrameSamples,
- WebRtcOpus_DurationEst(opus_decoder_, bitstream_,
- encoded_bytes_));
+ static_cast<size_t>(WebRtcOpus_DurationEst(
+ opus_decoder_, bitstream_,
+ static_cast<size_t>(encoded_bytes_int))));
// Free memory.
EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
@@ -595,11 +601,13 @@ TEST_P(OpusTest, OpusDecodeRepacketized) {
encoded_bytes_ = opus_repacketizer_out(rp, bitstream_, kMaxBytes);
EXPECT_EQ(kOpus20msFrameSamples * kPackets,
- WebRtcOpus_DurationEst(opus_decoder_, bitstream_, encoded_bytes_));
+ static_cast<size_t>(WebRtcOpus_DurationEst(
+ opus_decoder_, bitstream_, encoded_bytes_)));
EXPECT_EQ(kOpus20msFrameSamples * kPackets,
- WebRtcOpus_Decode(opus_decoder_, bitstream_, encoded_bytes_,
- output_data_decode.get(), &audio_type));
+ static_cast<size_t>(WebRtcOpus_Decode(
+ opus_decoder_, bitstream_, encoded_bytes_,
+ output_data_decode.get(), &audio_type)));
// Free memory.
opus_repacketizer_destroy(rp);

Powered by Google App Engine
This is Rietveld 408576698