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

Side by Side Diff: webrtc/modules/audio_coding/neteq/neteq_stereo_unittest.cc

Issue 2750783004: Add mute state field to AudioFrame. (Closed)
Patch Set: Fix num_channels check in UpMix() Created 3 years, 9 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
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 encoded_multi_channel_); 157 encoded_multi_channel_);
158 if (frame_size_samples_ * 2 * num_channels_ != multi_payload_size_bytes_) { 158 if (frame_size_samples_ * 2 * num_channels_ != multi_payload_size_bytes_) {
159 return -1; 159 return -1;
160 } 160 }
161 rtp_generator_.GetRtpHeader(kPayloadTypeMulti, frame_size_samples_, 161 rtp_generator_.GetRtpHeader(kPayloadTypeMulti, frame_size_samples_,
162 &rtp_header_); 162 &rtp_header_);
163 return next_send_time; 163 return next_send_time;
164 } 164 }
165 165
166 virtual void VerifyOutput(size_t num_samples) { 166 virtual void VerifyOutput(size_t num_samples) {
167 const int16_t* output_data = output_.data();
168 const int16_t* output_multi_channel_data = output_multi_channel_.data();
167 for (size_t i = 0; i < num_samples; ++i) { 169 for (size_t i = 0; i < num_samples; ++i) {
168 for (size_t j = 0; j < num_channels_; ++j) { 170 for (size_t j = 0; j < num_channels_; ++j) {
169 ASSERT_EQ(output_.data_[i], 171 ASSERT_EQ(output_data[i],
170 output_multi_channel_.data_[i * num_channels_ + j]) 172 output_multi_channel_data[i * num_channels_ + j])
171 << "Diff in sample " << i << ", channel " << j << "."; 173 << "Diff in sample " << i << ", channel " << j << ".";
172 } 174 }
173 } 175 }
174 } 176 }
175 177
176 virtual int GetArrivalTime(int send_time) { 178 virtual int GetArrivalTime(int send_time) {
177 int arrival_time = last_arrival_time_ + (send_time - last_send_time_); 179 int arrival_time = last_arrival_time_ + (send_time - last_send_time_);
178 last_send_time_ = send_time; 180 last_send_time_ = send_time;
179 last_arrival_time_ = arrival_time; 181 last_arrival_time_ = arrival_time;
180 return arrival_time; 182 return arrival_time;
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
350 frame_index_(0) { 352 frame_index_(0) {
351 } 353 }
352 354
353 virtual bool Lost() { 355 virtual bool Lost() {
354 return (++frame_index_) % kLossInterval == 0; 356 return (++frame_index_) % kLossInterval == 0;
355 } 357 }
356 358
357 // TODO(hlundin): NetEq is not giving bitexact results for these cases. 359 // TODO(hlundin): NetEq is not giving bitexact results for these cases.
358 virtual void VerifyOutput(size_t num_samples) { 360 virtual void VerifyOutput(size_t num_samples) {
359 for (size_t i = 0; i < num_samples; ++i) { 361 for (size_t i = 0; i < num_samples; ++i) {
362 const int16_t* output_data = output_.data();
363 const int16_t* output_multi_channel_data = output_multi_channel_.data();
360 auto first_channel_sample = 364 auto first_channel_sample =
361 output_multi_channel_.data_[i * num_channels_]; 365 output_multi_channel_data[i * num_channels_];
362 for (size_t j = 0; j < num_channels_; ++j) { 366 for (size_t j = 0; j < num_channels_; ++j) {
363 const int kErrorMargin = 200; 367 const int kErrorMargin = 200;
364 EXPECT_NEAR(output_.data_[i], 368 EXPECT_NEAR(output_data[i],
365 output_multi_channel_.data_[i * num_channels_ + j], 369 output_multi_channel_data[i * num_channels_ + j],
366 kErrorMargin) 370 kErrorMargin)
367 << "Diff in sample " << i << ", channel " << j << "."; 371 << "Diff in sample " << i << ", channel " << j << ".";
368 EXPECT_EQ(first_channel_sample, 372 EXPECT_EQ(first_channel_sample,
369 output_multi_channel_.data_[i * num_channels_ + j]); 373 output_multi_channel_data[i * num_channels_ + j]);
370 } 374 }
371 } 375 }
372 } 376 }
373 377
374 int frame_index_; 378 int frame_index_;
375 }; 379 };
376 380
377 TEST_P(NetEqStereoTestLosses, RunTest) { 381 TEST_P(NetEqStereoTestLosses, RunTest) {
378 RunTest(100); 382 RunTest(100);
379 } 383 }
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
427 431
428 INSTANTIATE_TEST_CASE_P(MultiChannel, 432 INSTANTIATE_TEST_CASE_P(MultiChannel,
429 NetEqStereoTestDelays, 433 NetEqStereoTestDelays,
430 ::testing::ValuesIn(GetTestParameters())); 434 ::testing::ValuesIn(GetTestParameters()));
431 435
432 INSTANTIATE_TEST_CASE_P(MultiChannel, 436 INSTANTIATE_TEST_CASE_P(MultiChannel,
433 NetEqStereoTestLosses, 437 NetEqStereoTestLosses,
434 ::testing::ValuesIn(GetTestParameters())); 438 ::testing::ValuesIn(GetTestParameters()));
435 439
436 } // namespace webrtc 440 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698