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

Side by Side Diff: webrtc/modules/audio_coding/codecs/opus/opus_unittest.cc

Issue 1178843002: Adds support for webrtc::test::ResourcePath on iOS (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: nits Created 5 years, 6 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 #include <string> 10 #include <string>
11 11
12 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
13 #include "webrtc/modules/audio_coding/codecs/opus/interface/opus_interface.h" 13 #include "webrtc/modules/audio_coding/codecs/opus/interface/opus_interface.h"
14 #include "webrtc/modules/audio_coding/codecs/opus/opus_inst.h" 14 #include "webrtc/modules/audio_coding/codecs/opus/opus_inst.h"
15 #include "webrtc/modules/audio_coding/neteq/tools/audio_loop.h" 15 #include "webrtc/modules/audio_coding/neteq/tools/audio_loop.h"
16 #include "webrtc/test/testsupport/fileutils.h" 16 #include "webrtc/test/testsupport/fileutils.h"
17 #include "webrtc/test/testsupport/gtest_disable.h"
18 17
19 namespace webrtc { 18 namespace webrtc {
20 19
21 using test::AudioLoop; 20 using test::AudioLoop;
22 using ::testing::TestWithParam; 21 using ::testing::TestWithParam;
23 using ::testing::Values; 22 using ::testing::Values;
24 using ::testing::Combine; 23 using ::testing::Combine;
25 24
26 // Maximum number of bytes in output bitstream. 25 // Maximum number of bytes in output bitstream.
27 const size_t kMaxBytes = 1000; 26 const size_t kMaxBytes = 1000;
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
241 } 240 }
242 241
243 // Free memory. 242 // Free memory.
244 delete[] output_data_decode; 243 delete[] output_data_decode;
245 delete[] silence; 244 delete[] silence;
246 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 245 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
247 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_)); 246 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_));
248 } 247 }
249 248
250 // Test failing Create. 249 // Test failing Create.
251 TEST(OpusTest, DISABLED_ON_IOS(OpusCreateFail)) { 250 TEST(OpusTest, OpusCreateFail) {
252 WebRtcOpusEncInst* opus_encoder; 251 WebRtcOpusEncInst* opus_encoder;
253 WebRtcOpusDecInst* opus_decoder; 252 WebRtcOpusDecInst* opus_decoder;
254 253
255 // Test to see that an invalid pointer is caught. 254 // Test to see that an invalid pointer is caught.
256 EXPECT_EQ(-1, WebRtcOpus_EncoderCreate(NULL, 1, 0)); 255 EXPECT_EQ(-1, WebRtcOpus_EncoderCreate(NULL, 1, 0));
257 // Invalid channel number. 256 // Invalid channel number.
258 EXPECT_EQ(-1, WebRtcOpus_EncoderCreate(&opus_encoder, 3, 0)); 257 EXPECT_EQ(-1, WebRtcOpus_EncoderCreate(&opus_encoder, 3, 0));
259 // Invalid applciation mode. 258 // Invalid applciation mode.
260 EXPECT_EQ(-1, WebRtcOpus_EncoderCreate(&opus_encoder, 1, 2)); 259 EXPECT_EQ(-1, WebRtcOpus_EncoderCreate(&opus_encoder, 1, 2));
261 260
262 EXPECT_EQ(-1, WebRtcOpus_DecoderCreate(NULL, 1)); 261 EXPECT_EQ(-1, WebRtcOpus_DecoderCreate(NULL, 1));
263 // Invalid channel number. 262 // Invalid channel number.
264 EXPECT_EQ(-1, WebRtcOpus_DecoderCreate(&opus_decoder, 3)); 263 EXPECT_EQ(-1, WebRtcOpus_DecoderCreate(&opus_decoder, 3));
265 } 264 }
266 265
267 // Test failing Free. 266 // Test failing Free.
268 TEST(OpusTest, DISABLED_ON_IOS(OpusFreeFail)) { 267 TEST(OpusTest, OpusFreeFail) {
269 // Test to see that an invalid pointer is caught. 268 // Test to see that an invalid pointer is caught.
270 EXPECT_EQ(-1, WebRtcOpus_EncoderFree(NULL)); 269 EXPECT_EQ(-1, WebRtcOpus_EncoderFree(NULL));
271 EXPECT_EQ(-1, WebRtcOpus_DecoderFree(NULL)); 270 EXPECT_EQ(-1, WebRtcOpus_DecoderFree(NULL));
272 } 271 }
273 272
274 // Test normal Create and Free. 273 // Test normal Create and Free.
275 TEST_P(OpusTest, DISABLED_ON_IOS(OpusCreateFree)) { 274 TEST_P(OpusTest, OpusCreateFree) {
276 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 275 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
277 channels_, 276 channels_,
278 application_)); 277 application_));
279 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_)); 278 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_));
280 EXPECT_TRUE(opus_encoder_ != NULL); 279 EXPECT_TRUE(opus_encoder_ != NULL);
281 EXPECT_TRUE(opus_decoder_ != NULL); 280 EXPECT_TRUE(opus_decoder_ != NULL);
282 // Free encoder and decoder memory. 281 // Free encoder and decoder memory.
283 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 282 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
284 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_)); 283 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_));
285 } 284 }
286 285
287 TEST_P(OpusTest, DISABLED_ON_IOS(OpusEncodeDecode)) { 286 TEST_P(OpusTest, OpusEncodeDecode) {
288 PrepareSpeechData(channels_, 20, 20); 287 PrepareSpeechData(channels_, 20, 20);
289 288
290 // Create encoder memory. 289 // Create encoder memory.
291 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 290 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
292 channels_, 291 channels_,
293 application_)); 292 application_));
294 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, 293 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_,
295 channels_)); 294 channels_));
296 295
297 // Set bitrate. 296 // Set bitrate.
(...skipping 17 matching lines...) Expand all
315 EncodeDecode(opus_encoder_, speech_data_.GetNextBlock(), 314 EncodeDecode(opus_encoder_, speech_data_.GetNextBlock(),
316 kOpus20msFrameSamples, opus_decoder_, 315 kOpus20msFrameSamples, opus_decoder_,
317 output_data_decode, &audio_type)); 316 output_data_decode, &audio_type));
318 317
319 // Free memory. 318 // Free memory.
320 delete[] output_data_decode; 319 delete[] output_data_decode;
321 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 320 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
322 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_)); 321 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_));
323 } 322 }
324 323
325 TEST_P(OpusTest, DISABLED_ON_IOS(OpusSetBitRate)) { 324 TEST_P(OpusTest, OpusSetBitRate) {
326 // Test without creating encoder memory. 325 // Test without creating encoder memory.
327 EXPECT_EQ(-1, WebRtcOpus_SetBitRate(opus_encoder_, 60000)); 326 EXPECT_EQ(-1, WebRtcOpus_SetBitRate(opus_encoder_, 60000));
328 327
329 // Create encoder memory, try with different bitrates. 328 // Create encoder memory, try with different bitrates.
330 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 329 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
331 channels_, 330 channels_,
332 application_)); 331 application_));
333 EXPECT_EQ(0, WebRtcOpus_SetBitRate(opus_encoder_, 30000)); 332 EXPECT_EQ(0, WebRtcOpus_SetBitRate(opus_encoder_, 30000));
334 EXPECT_EQ(0, WebRtcOpus_SetBitRate(opus_encoder_, 60000)); 333 EXPECT_EQ(0, WebRtcOpus_SetBitRate(opus_encoder_, 60000));
335 EXPECT_EQ(0, WebRtcOpus_SetBitRate(opus_encoder_, 300000)); 334 EXPECT_EQ(0, WebRtcOpus_SetBitRate(opus_encoder_, 300000));
(...skipping 15 matching lines...) Expand all
351 EXPECT_EQ(0, WebRtcOpus_SetComplexity(opus_encoder_, 0)); 350 EXPECT_EQ(0, WebRtcOpus_SetComplexity(opus_encoder_, 0));
352 EXPECT_EQ(0, WebRtcOpus_SetComplexity(opus_encoder_, 10)); 351 EXPECT_EQ(0, WebRtcOpus_SetComplexity(opus_encoder_, 10));
353 EXPECT_EQ(-1, WebRtcOpus_SetComplexity(opus_encoder_, 11)); 352 EXPECT_EQ(-1, WebRtcOpus_SetComplexity(opus_encoder_, 11));
354 353
355 // Free memory. 354 // Free memory.
356 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 355 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
357 } 356 }
358 357
359 // Encode and decode one frame, initialize the decoder and 358 // Encode and decode one frame, initialize the decoder and
360 // decode once more. 359 // decode once more.
361 TEST_P(OpusTest, DISABLED_ON_IOS(OpusDecodeInit)) { 360 TEST_P(OpusTest, OpusDecodeInit) {
362 PrepareSpeechData(channels_, 20, 20); 361 PrepareSpeechData(channels_, 20, 20);
363 362
364 // Create encoder memory. 363 // Create encoder memory.
365 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 364 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
366 channels_, 365 channels_,
367 application_)); 366 application_));
368 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_)); 367 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_));
369 368
370 // Encode & decode. 369 // Encode & decode.
371 int16_t audio_type; 370 int16_t audio_type;
372 int16_t* output_data_decode = new int16_t[kOpus20msFrameSamples * channels_]; 371 int16_t* output_data_decode = new int16_t[kOpus20msFrameSamples * channels_];
373 EXPECT_EQ(kOpus20msFrameSamples, 372 EXPECT_EQ(kOpus20msFrameSamples,
374 EncodeDecode(opus_encoder_, speech_data_.GetNextBlock(), 373 EncodeDecode(opus_encoder_, speech_data_.GetNextBlock(),
375 kOpus20msFrameSamples, opus_decoder_, 374 kOpus20msFrameSamples, opus_decoder_,
376 output_data_decode, &audio_type)); 375 output_data_decode, &audio_type));
377 376
378 EXPECT_EQ(0, WebRtcOpus_DecoderInit(opus_decoder_)); 377 EXPECT_EQ(0, WebRtcOpus_DecoderInit(opus_decoder_));
379 378
380 EXPECT_EQ(kOpus20msFrameSamples, 379 EXPECT_EQ(kOpus20msFrameSamples,
381 WebRtcOpus_Decode(opus_decoder_, bitstream_, 380 WebRtcOpus_Decode(opus_decoder_, bitstream_,
382 encoded_bytes_, output_data_decode, 381 encoded_bytes_, output_data_decode,
383 &audio_type)); 382 &audio_type));
384 383
385 // Free memory. 384 // Free memory.
386 delete[] output_data_decode; 385 delete[] output_data_decode;
387 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 386 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
388 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_)); 387 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_));
389 } 388 }
390 389
391 TEST_P(OpusTest, DISABLED_ON_IOS(OpusEnableDisableFec)) { 390 TEST_P(OpusTest, OpusEnableDisableFec) {
392 // Test without creating encoder memory. 391 // Test without creating encoder memory.
393 EXPECT_EQ(-1, WebRtcOpus_EnableFec(opus_encoder_)); 392 EXPECT_EQ(-1, WebRtcOpus_EnableFec(opus_encoder_));
394 EXPECT_EQ(-1, WebRtcOpus_DisableFec(opus_encoder_)); 393 EXPECT_EQ(-1, WebRtcOpus_DisableFec(opus_encoder_));
395 394
396 // Create encoder memory. 395 // Create encoder memory.
397 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 396 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
398 channels_, 397 channels_,
399 application_)); 398 application_));
400 399
401 EXPECT_EQ(0, WebRtcOpus_EnableFec(opus_encoder_)); 400 EXPECT_EQ(0, WebRtcOpus_EnableFec(opus_encoder_));
402 EXPECT_EQ(0, WebRtcOpus_DisableFec(opus_encoder_)); 401 EXPECT_EQ(0, WebRtcOpus_DisableFec(opus_encoder_));
403 402
404 // Free memory. 403 // Free memory.
405 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 404 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
406 } 405 }
407 406
408 TEST_P(OpusTest, DISABLED_ON_IOS(OpusEnableDisableDtx)) { 407 TEST_P(OpusTest, OpusEnableDisableDtx) {
409 // Test without creating encoder memory. 408 // Test without creating encoder memory.
410 EXPECT_EQ(-1, WebRtcOpus_EnableDtx(opus_encoder_)); 409 EXPECT_EQ(-1, WebRtcOpus_EnableDtx(opus_encoder_));
411 EXPECT_EQ(-1, WebRtcOpus_DisableDtx(opus_encoder_)); 410 EXPECT_EQ(-1, WebRtcOpus_DisableDtx(opus_encoder_));
412 411
413 // Create encoder memory. 412 // Create encoder memory.
414 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 413 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
415 channels_, 414 channels_,
416 application_)); 415 application_));
417 416
418 opus_int32 dtx; 417 opus_int32 dtx;
(...skipping 13 matching lines...) Expand all
432 EXPECT_EQ(0, WebRtcOpus_DisableDtx(opus_encoder_)); 431 EXPECT_EQ(0, WebRtcOpus_DisableDtx(opus_encoder_));
433 opus_encoder_ctl(opus_encoder_->encoder, 432 opus_encoder_ctl(opus_encoder_->encoder,
434 OPUS_GET_DTX(&dtx)); 433 OPUS_GET_DTX(&dtx));
435 EXPECT_EQ(0, dtx); 434 EXPECT_EQ(0, dtx);
436 435
437 436
438 // Free memory. 437 // Free memory.
439 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 438 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
440 } 439 }
441 440
442 TEST_P(OpusTest, DISABLED_ON_IOS(OpusDtxOff)) { 441 TEST_P(OpusTest, OpusDtxOff) {
443 TestDtxEffect(false); 442 TestDtxEffect(false);
444 } 443 }
445 444
446 TEST_P(OpusTest, DISABLED_ON_IOS(OpusDtxOn)) { 445 TEST_P(OpusTest, OpusDtxOn) {
447 TestDtxEffect(true); 446 TestDtxEffect(true);
448 } 447 }
449 448
450 TEST_P(OpusTest, DISABLED_ON_IOS(OpusSetPacketLossRate)) { 449 TEST_P(OpusTest, OpusSetPacketLossRate) {
451 // Test without creating encoder memory. 450 // Test without creating encoder memory.
452 EXPECT_EQ(-1, WebRtcOpus_SetPacketLossRate(opus_encoder_, 50)); 451 EXPECT_EQ(-1, WebRtcOpus_SetPacketLossRate(opus_encoder_, 50));
453 452
454 // Create encoder memory. 453 // Create encoder memory.
455 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 454 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
456 channels_, 455 channels_,
457 application_)); 456 application_));
458 457
459 EXPECT_EQ(0, WebRtcOpus_SetPacketLossRate(opus_encoder_, 50)); 458 EXPECT_EQ(0, WebRtcOpus_SetPacketLossRate(opus_encoder_, 50));
460 EXPECT_EQ(-1, WebRtcOpus_SetPacketLossRate(opus_encoder_, -1)); 459 EXPECT_EQ(-1, WebRtcOpus_SetPacketLossRate(opus_encoder_, -1));
461 EXPECT_EQ(-1, WebRtcOpus_SetPacketLossRate(opus_encoder_, 101)); 460 EXPECT_EQ(-1, WebRtcOpus_SetPacketLossRate(opus_encoder_, 101));
462 461
463 // Free memory. 462 // Free memory.
464 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 463 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
465 } 464 }
466 465
467 TEST_P(OpusTest, DISABLED_ON_IOS(OpusSetMaxPlaybackRate)) { 466 TEST_P(OpusTest, OpusSetMaxPlaybackRate) {
468 // Test without creating encoder memory. 467 // Test without creating encoder memory.
469 EXPECT_EQ(-1, WebRtcOpus_SetMaxPlaybackRate(opus_encoder_, 20000)); 468 EXPECT_EQ(-1, WebRtcOpus_SetMaxPlaybackRate(opus_encoder_, 20000));
470 469
471 // Create encoder memory. 470 // Create encoder memory.
472 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 471 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
473 channels_, 472 channels_,
474 application_)); 473 application_));
475 474
476 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_FULLBAND, 48000); 475 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_FULLBAND, 48000);
477 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_FULLBAND, 24001); 476 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_FULLBAND, 24001);
478 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_SUPERWIDEBAND, 24000); 477 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_SUPERWIDEBAND, 24000);
479 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_SUPERWIDEBAND, 16001); 478 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_SUPERWIDEBAND, 16001);
480 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_WIDEBAND, 16000); 479 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_WIDEBAND, 16000);
481 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_WIDEBAND, 12001); 480 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_WIDEBAND, 12001);
482 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_MEDIUMBAND, 12000); 481 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_MEDIUMBAND, 12000);
483 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_MEDIUMBAND, 8001); 482 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_MEDIUMBAND, 8001);
484 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_NARROWBAND, 8000); 483 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_NARROWBAND, 8000);
485 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_NARROWBAND, 4000); 484 SetMaxPlaybackRate(opus_encoder_, OPUS_BANDWIDTH_NARROWBAND, 4000);
486 485
487 // Free memory. 486 // Free memory.
488 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 487 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
489 } 488 }
490 489
491 // Test PLC. 490 // Test PLC.
492 TEST_P(OpusTest, DISABLED_ON_IOS(OpusDecodePlc)) { 491 TEST_P(OpusTest, OpusDecodePlc) {
493 PrepareSpeechData(channels_, 20, 20); 492 PrepareSpeechData(channels_, 20, 20);
494 493
495 // Create encoder memory. 494 // Create encoder memory.
496 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 495 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
497 channels_, 496 channels_,
498 application_)); 497 application_));
499 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_)); 498 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_));
500 499
501 // Set bitrate. 500 // Set bitrate.
502 EXPECT_EQ(0, WebRtcOpus_SetBitRate(opus_encoder_, 501 EXPECT_EQ(0, WebRtcOpus_SetBitRate(opus_encoder_,
(...skipping 16 matching lines...) Expand all
519 WebRtcOpus_DecodePlc(opus_decoder_, plc_buffer, 1)); 518 WebRtcOpus_DecodePlc(opus_decoder_, plc_buffer, 1));
520 519
521 // Free memory. 520 // Free memory.
522 delete[] plc_buffer; 521 delete[] plc_buffer;
523 delete[] output_data_decode; 522 delete[] output_data_decode;
524 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 523 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
525 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_)); 524 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_));
526 } 525 }
527 526
528 // Duration estimation. 527 // Duration estimation.
529 TEST_P(OpusTest, DISABLED_ON_IOS(OpusDurationEstimation)) { 528 TEST_P(OpusTest, OpusDurationEstimation) {
530 PrepareSpeechData(channels_, 20, 20); 529 PrepareSpeechData(channels_, 20, 20);
531 530
532 // Create. 531 // Create.
533 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 532 EXPECT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
534 channels_, 533 channels_,
535 application_)); 534 application_));
536 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_)); 535 EXPECT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, channels_));
537 536
538 // 10 ms. We use only first 10 ms of a 20 ms block. 537 // 10 ms. We use only first 10 ms of a 20 ms block.
539 encoded_bytes_ = WebRtcOpus_Encode(opus_encoder_, 538 encoded_bytes_ = WebRtcOpus_Encode(opus_encoder_,
(...skipping 13 matching lines...) Expand all
553 EXPECT_GE(encoded_bytes_, 0); 552 EXPECT_GE(encoded_bytes_, 0);
554 EXPECT_EQ(kOpus20msFrameSamples, 553 EXPECT_EQ(kOpus20msFrameSamples,
555 WebRtcOpus_DurationEst(opus_decoder_, bitstream_, 554 WebRtcOpus_DurationEst(opus_decoder_, bitstream_,
556 encoded_bytes_)); 555 encoded_bytes_));
557 556
558 // Free memory. 557 // Free memory.
559 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 558 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
560 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_)); 559 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_));
561 } 560 }
562 561
563 TEST_P(OpusTest, DISABLED_ON_IOS(OpusDecodeRepacketized)) { 562 TEST_P(OpusTest, OpusDecodeRepacketized) {
564 const int kPackets = 6; 563 const int kPackets = 6;
565 564
566 PrepareSpeechData(channels_, 20, 20 * kPackets); 565 PrepareSpeechData(channels_, 20, 20 * kPackets);
567 566
568 // Create encoder memory. 567 // Create encoder memory.
569 ASSERT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_, 568 ASSERT_EQ(0, WebRtcOpus_EncoderCreate(&opus_encoder_,
570 channels_, 569 channels_,
571 application_)); 570 application_));
572 ASSERT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_, 571 ASSERT_EQ(0, WebRtcOpus_DecoderCreate(&opus_decoder_,
573 channels_)); 572 channels_));
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
607 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_)); 606 EXPECT_EQ(0, WebRtcOpus_EncoderFree(opus_encoder_));
608 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_)); 607 EXPECT_EQ(0, WebRtcOpus_DecoderFree(opus_decoder_));
609 } 608 }
610 609
611 INSTANTIATE_TEST_CASE_P(VariousMode, 610 INSTANTIATE_TEST_CASE_P(VariousMode,
612 OpusTest, 611 OpusTest,
613 Combine(Values(1, 2), Values(0, 1))); 612 Combine(Values(1, 2), Values(0, 1)));
614 613
615 614
616 } // namespace webrtc 615 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698