Showing the changes to test/api/encode_options_test.cpp (1 of 16 files). Show all
Unified · Split
| @@ -10,13 +10,16 @@ · 9 unmodified lines | ||
| 10 | 10 | #include "encode_decode_api_test.h" |
| 11 | 11 | using namespace WelsCommon; |
| 12 | 12 | |
| 13 | −void EncodeDecodeTestAPIBase::InitialEncDec (int iWidth, int iHeight) { | |
| 13 | +bool EncodeDecodeTestAPIBase::InitialEncDec (int iWidth, int iHeight) { | |
| 14 | 14 | // for encoder |
| 15 | 15 | // I420: 1(Y) + 1/4(U) + 1/4(V) |
| 16 | 16 | int frameSize = iWidth * iHeight * 3 / 2; |
| 17 | 17 | |
| 18 | 18 | buf_.SetLength (frameSize); |
| 19 | − ASSERT_TRUE (buf_.Length() == (size_t)frameSize); | |
| 19 | + if (buf_.Length() != (size_t)frameSize) { | |
| 20 | + printf ("buf_.Length() failed! frameSize = %d\n", frameSize); | |
| 21 | + return false; | |
| 22 | + } | |
| 20 | 23 | |
| 21 | 24 | memset (&EncPic, 0, sizeof (SSourcePicture)); |
| 22 | 25 | EncPic.iPicWidth = iWidth; |
| @@ -33,7 +36,9 @@ void EncodeDecodeTestAPIBase::InitialEncDec (int iWidth, int iHeight) { · 10 unmodified lines | ||
| 33 | 36 | |
| 34 | 37 | //set a fixed random value |
| 35 | 38 | iRandValue = rand() % 256; |
| 39 | + return true; | |
| 36 | 40 | } |
| 41 | + | |
| 37 | 42 | void EncodeDecodeTestAPIBase::RandomParamExtCombination() { |
| 38 | 43 | |
| 39 | 44 | param_.iPicWidth = WelsClip3 ((((rand() % MAX_WIDTH) >> 1) + 1) << 1, 2, MAX_WIDTH); |
| @@ -321,7 +326,7 @@ TEST_F (EncodeDecodeTestAPI, SetOptionEncParamExt) { · 281 unmodified lines | ||
| 321 | 326 | // so need to enhance the validation check for any random value of each variable in ParamExt |
| 322 | 327 | |
| 323 | 328 | if (cmResultSuccess == iResult) { |
| 324 | − InitialEncDec (param_.iPicWidth, param_.iPicHeight); | |
| 329 | + ASSERT_TRUE (InitialEncDec (param_.iPicWidth, param_.iPicHeight)); | |
| 325 | 330 | EncodeOneFrame (0); |
| 326 | 331 | encToDecData (info, len); |
| 327 | 332 | pData[0] = pData[1] = pData[2] = 0; |
| @@ -366,7 +371,7 @@ TEST_F (EncodeDecodeTestAPI, SetOptionEncParamBase) { · 38 unmodified lines | ||
| 366 | 371 | iResult = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_BASE, ¶m_); |
| 367 | 372 | |
| 368 | 373 | if (cmResultSuccess == iResult) { |
| 369 | − InitialEncDec (param_.iPicWidth, param_.iPicHeight); | |
| 374 | + ASSERT_TRUE (InitialEncDec (param_.iPicWidth, param_.iPicHeight)); | |
| 370 | 375 | EncodeOneFrame (0); |
| 371 | 376 | encToDecData (info, len); |
| 372 | 377 | pData[0] = pData[1] = pData[2] = 0; |
| @@ -439,34 +444,34 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_INCREASING_ID) { · 66 unmodified lines | ||
| 439 | 444 | int rv = encoder_->InitializeExt (&sParam1); |
| 440 | 445 | ASSERT_TRUE (rv == cmResultSuccess) << "InitializeExt: rv = " << rv << " at " << sParam1.iPicWidth << "x" << |
| 441 | 446 | sParam1.iPicHeight; |
| 442 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 447 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 443 | 448 | |
| 444 | 449 | // new IDR |
| 445 | 450 | rv = encoder_->ForceIntraFrame (true); |
| 446 | 451 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| 447 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 452 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 448 | 453 | |
| 449 | 454 | // step#2: pParam2 |
| 450 | 455 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam2); |
| 451 | 456 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption: rv = " << rv << " at " << sParam2.iPicWidth << "x" << |
| 452 | 457 | sParam2.iPicHeight; |
| 453 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 458 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 454 | 459 | |
| 455 | 460 | // new IDR |
| 456 | 461 | rv = encoder_->ForceIntraFrame (true); |
| 457 | 462 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| 458 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 463 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 459 | 464 | |
| 460 | 465 | // step#3: back to pParam1 |
| 461 | 466 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam1); |
| 462 | 467 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption: rv = " << rv << " at " << sParam1.iPicWidth << "x" << |
| 463 | 468 | sParam1.iPicHeight; |
| 464 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 469 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 465 | 470 | |
| 466 | 471 | // step#4: back to pParam2 |
| 467 | 472 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam2); |
| 468 | 473 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv << sParam2.iPicWidth << sParam2.iPicHeight; |
| 469 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 474 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 470 | 475 | |
| 471 | 476 | #ifdef DEBUG_FILE_SAVE_INCREASING_ID |
| 472 | 477 | fclose (fEnc); |
| @@ -487,15 +492,15 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_INCREASING_ID) { · 14 unmodified lines | ||
| 487 | 492 | fEnc = fopen ("enc_INCREASING_ID2.264", "wb"); |
| 488 | 493 | #endif |
| 489 | 494 | iEncFrameNum = 0; |
| 490 | − EncDecOneFrame (sParam3.iPicWidth, sParam3.iPicHeight, iEncFrameNum++, fEnc); | |
| 495 | + ASSERT_TRUE (EncDecOneFrame (sParam3.iPicWidth, sParam3.iPicHeight, iEncFrameNum++, fEnc)); | |
| 491 | 496 | |
| 492 | 497 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam2); |
| 493 | 498 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption Failed sParam2: rv = " << rv; |
| 494 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 499 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 495 | 500 | |
| 496 | 501 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam1); |
| 497 | 502 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption Failed sParam2: rv = " << rv; |
| 498 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 503 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 499 | 504 | |
| 500 | 505 | #ifdef DEBUG_FILE_SAVE_INCREASING_ID |
| 501 | 506 | fclose (fEnc); |
| @@ -547,36 +552,37 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_SPS_LISTING_AND_PPS_INCREASING · 45 unmodified lines | ||
| 547 | 552 | //int TraceLevel = WELS_LOG_INFO; |
| 548 | 553 | //encoder_->SetOption (ENCODER_OPTION_TRACE_LEVEL, &TraceLevel); |
| 549 | 554 | int rv = encoder_->InitializeExt (&sParam1); |
| 555 | + printf ("Start EncDecOneFrame()\n"); | |
| 550 | 556 | ASSERT_TRUE (rv == cmResultSuccess) << "InitializeExt: rv = " << rv << " at " << sParam1.iPicWidth << "x" << |
| 551 | 557 | sParam1.iPicHeight; |
| 552 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 558 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 553 | 559 | |
| 554 | 560 | // new IDR |
| 555 | 561 | rv = encoder_->ForceIntraFrame (true); |
| 556 | 562 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| 557 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 563 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 558 | 564 | |
| 559 | 565 | // step#2: pParam2 |
| 560 | 566 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam2); |
| 561 | 567 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption: rv = " << rv << " at " << sParam2.iPicWidth << "x" << |
| 562 | 568 | sParam2.iPicHeight; |
| 563 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 569 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 564 | 570 | |
| 565 | 571 | // new IDR |
| 566 | 572 | rv = encoder_->ForceIntraFrame (true); |
| 567 | 573 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| 568 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 574 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 569 | 575 | |
| 570 | 576 | // step#3: back to pParam1 |
| 571 | 577 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam1); |
| 572 | 578 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption: rv = " << rv << " at " << sParam1.iPicWidth << "x" << |
| 573 | 579 | sParam1.iPicHeight; |
| 574 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 580 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 575 | 581 | |
| 576 | 582 | // step#4: back to pParam2 |
| 577 | 583 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam2); |
| 578 | 584 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv << sParam2.iPicWidth << sParam2.iPicHeight; |
| 579 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 585 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 580 | 586 | |
| 581 | 587 | #ifdef DEBUG_FILE_SAVE2 |
| 582 | 588 | fclose (fEnc); |
| @@ -597,15 +603,15 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_SPS_LISTING_AND_PPS_INCREASING · 14 unmodified lines | ||
| 597 | 603 | fEnc = fopen ("enc_SPS_LISTING_AND_PPS_INCREASING11.264", "wb"); |
| 598 | 604 | #endif |
| 599 | 605 | iEncFrameNum = 0; |
| 600 | − EncDecOneFrame (sParam3.iPicWidth, sParam3.iPicHeight, iEncFrameNum++, fEnc); | |
| 606 | + ASSERT_TRUE (EncDecOneFrame (sParam3.iPicWidth, sParam3.iPicHeight, iEncFrameNum++, fEnc)); | |
| 601 | 607 | |
| 602 | 608 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam2); |
| 603 | 609 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption Failed sParam2: rv = " << rv; |
| 604 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 610 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 605 | 611 | |
| 606 | 612 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam1); |
| 607 | 613 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption Failed sParam2: rv = " << rv; |
| 608 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 614 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 609 | 615 | |
| 610 | 616 | #ifdef DEBUG_FILE_SAVE2 |
| 611 | 617 | fclose (fEnc); |
| @@ -657,12 +663,12 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_SPS_LISTING_AND_PPS_INCREASING · 45 unmodified lines | ||
| 657 | 663 | // step#3: set back to pParam1, with a smaller num_ref, it still uses the previous SPS |
| 658 | 664 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam1); |
| 659 | 665 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption Failed sParam1: rv = " << rv; |
| 660 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 666 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 661 | 667 | |
| 662 | 668 | // new IDR, PPS increases |
| 663 | 669 | rv = encoder_->ForceIntraFrame (true); |
| 664 | 670 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| 665 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 671 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 666 | 672 | |
| 667 | 673 | rv = encoder_->Uninitialize(); |
| 668 | 674 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| @@ -719,7 +725,7 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_SPS_LISTING_AND_PPS_INCREASING · 50 unmodified lines | ||
| 719 | 725 | sParam2.iPicWidth; |
| 720 | 726 | } // end of setting loop |
| 721 | 727 | |
| 722 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 728 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 723 | 729 | |
| 724 | 730 | #ifdef DEBUG_FILE_SAVE2 |
| 725 | 731 | fclose (fEnc); |
| @@ -765,13 +771,13 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_SPS_PPS_LISTING1) { · 39 unmodified lines | ||
| 765 | 771 | int rv = encoder_->InitializeExt (&sParam1); |
| 766 | 772 | ASSERT_TRUE (rv == cmResultSuccess) << "InitializeExt: rv = " << rv << " at " << sParam1.iPicWidth << "x" << |
| 767 | 773 | sParam1.iPicHeight; |
| 768 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 769 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 774 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 775 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 770 | 776 | |
| 771 | 777 | // new IDR |
| 772 | 778 | rv = encoder_->ForceIntraFrame (true); |
| 773 | 779 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| 774 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 780 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 775 | 781 | |
| 776 | 782 | rv = encoder_->Uninitialize(); |
| 777 | 783 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| @@ -841,18 +847,18 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_SPS_PPS_LISTING2) { · 63 unmodified lines | ||
| 841 | 847 | // step#2: pParam2 |
| 842 | 848 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam2); |
| 843 | 849 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption Failed sParam2: rv = " << rv; |
| 844 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 850 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 845 | 851 | |
| 846 | 852 | // step#3: back to pParam1, SHOULD NOT encounter ERROR |
| 847 | 853 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam1); |
| 848 | 854 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption: rv = " << rv << " at " << sParam1.iPicWidth << "x" << |
| 849 | 855 | sParam1.iPicHeight; |
| 850 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 856 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 851 | 857 | |
| 852 | 858 | // new IDR |
| 853 | 859 | rv = encoder_->ForceIntraFrame (true); |
| 854 | 860 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| 855 | − EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc); | |
| 861 | + ASSERT_TRUE (EncDecOneFrame (sParam1.iPicWidth, sParam1.iPicHeight, iEncFrameNum++, fEnc)); | |
| 856 | 862 | |
| 857 | 863 | rv = encoder_->Uninitialize(); |
| 858 | 864 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| @@ -906,7 +912,7 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_SPS_PPS_LISTING3) { · 47 unmodified lines | ||
| 906 | 912 | sParam1.iPicHeight; |
| 907 | 913 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam2); |
| 908 | 914 | ASSERT_TRUE (rv == cmResultSuccess) << "SetOption Failed sParam2: rv = " << rv; |
| 909 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 915 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 910 | 916 | |
| 911 | 917 | // step#2: set strategy for success |
| 912 | 918 | int32_t iNewStra = SPS_PPS_LISTING; |
| @@ -921,7 +927,7 @@ TEST_F (EncodeDecodeTestAPI, ParameterSetStrategy_SPS_PPS_LISTING3) { · 8 unmodified lines | ||
| 921 | 927 | rv = encoder_->SetOption (ENCODER_OPTION_SPS_PPS_ID_STRATEGY, &iNewStra); |
| 922 | 928 | ASSERT_TRUE (rv != cmResultSuccess); |
| 923 | 929 | |
| 924 | − EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc); | |
| 930 | + ASSERT_TRUE (EncDecOneFrame (sParam2.iPicWidth, sParam2.iPicHeight, iEncFrameNum++, fEnc)); | |
| 925 | 931 | |
| 926 | 932 | // step#4: pParam3, SHOULD encounter ERROR |
| 927 | 933 | rv = encoder_->SetOption (ENCODER_OPTION_SVC_ENCODE_PARAM_EXT, &sParam3); |
| @@ -966,12 +972,12 @@ TEST_F (EncodeDecodeTestAPI, SimulcastSVC) { · 38 unmodified lines | ||
| 966 | 972 | int iIdx = 0; |
| 967 | 973 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 968 | 974 | pBsBuf[iIdx] = static_cast<unsigned char*> (malloc (iWidth * iHeight * 3 * sizeof (unsigned char) / 2)); |
| 969 | − EXPECT_TRUE (pBsBuf[iIdx] != NULL); | |
| 975 | + ASSERT_TRUE (pBsBuf[iIdx] != NULL); | |
| 970 | 976 | aLen[iIdx] = 0; |
| 971 | 977 | |
| 972 | 978 | long rv = WelsCreateDecoder (&decoder[iIdx]); |
| 973 | 979 | ASSERT_EQ (0, rv); |
| 974 | − EXPECT_TRUE (decoder[iIdx] != NULL); | |
| 980 | + ASSERT_TRUE (decoder[iIdx] != NULL); | |
| 975 | 981 | |
| 976 | 982 | SDecodingParam decParam; |
| 977 | 983 | memset (&decParam, 0, sizeof (SDecodingParam)); |
| @@ -988,7 +994,7 @@ TEST_F (EncodeDecodeTestAPI, SimulcastSVC) { · 10 unmodified lines | ||
| 988 | 994 | int iLayerLen = 0; |
| 989 | 995 | unsigned char* pData[3] = { NULL }; |
| 990 | 996 | |
| 991 | − InitialEncDec (param_.iPicWidth, param_.iPicHeight); | |
| 997 | + ASSERT_TRUE (InitialEncDec (param_.iPicWidth, param_.iPicHeight)); | |
| 992 | 998 | EncodeOneFrame (0); |
| 993 | 999 | |
| 994 | 1000 | iLayerLen = 0; |
| @@ -1083,12 +1089,12 @@ TEST_F (EncodeDecodeTestAPI, SimulcastAVC) { · 88 unmodified lines | ||
| 1083 | 1089 | //create decoder |
| 1084 | 1090 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1085 | 1091 | pBsBuf[iIdx] = static_cast<unsigned char*> (malloc (iWidth * iHeight * 3 * sizeof (unsigned char) / 2)); |
| 1086 | − EXPECT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1092 | + ASSERT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1087 | 1093 | aLen[iIdx] = 0; |
| 1088 | 1094 | |
| 1089 | 1095 | long rv = WelsCreateDecoder (&decoder[iIdx]); |
| 1090 | 1096 | ASSERT_EQ (0, rv); |
| 1091 | − EXPECT_TRUE (decoder[iIdx] != NULL); | |
| 1097 | + ASSERT_TRUE (decoder[iIdx] != NULL); | |
| 1092 | 1098 | |
| 1093 | 1099 | SDecodingParam decParam; |
| 1094 | 1100 | memset (&decParam, 0, sizeof (SDecodingParam)); |
| @@ -1106,7 +1112,7 @@ TEST_F (EncodeDecodeTestAPI, SimulcastAVC) { · 11 unmodified lines | ||
| 1106 | 1112 | int iLayerLen = 0; |
| 1107 | 1113 | unsigned char* pData[3] = { NULL }; |
| 1108 | 1114 | |
| 1109 | − InitialEncDec (param_.iPicWidth, param_.iPicHeight); | |
| 1115 | + ASSERT_TRUE (InitialEncDec (param_.iPicWidth, param_.iPicHeight)); | |
| 1110 | 1116 | EncodeOneFrame (0); |
| 1111 | 1117 | |
| 1112 | 1118 | // init |
| @@ -1197,11 +1203,11 @@ TEST_F (EncodeDecodeTestAPI, SimulcastAVC_SPS_PPS_LISTING) { · 84 unmodified lines | ||
| 1197 | 1203 | //create decoder |
| 1198 | 1204 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1199 | 1205 | pBsBuf[iIdx] = static_cast<unsigned char*> (malloc (iWidth * iHeight * 3 * sizeof (unsigned char) / 2)); |
| 1200 | − EXPECT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1206 | + ASSERT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1201 | 1207 | |
| 1202 | 1208 | long rv = WelsCreateDecoder (&decoder[iIdx]); |
| 1203 | 1209 | ASSERT_EQ (0, rv); |
| 1204 | − EXPECT_TRUE (decoder[iIdx] != NULL); | |
| 1210 | + ASSERT_TRUE (decoder[iIdx] != NULL); | |
| 1205 | 1211 | |
| 1206 | 1212 | SDecodingParam decParam; |
| 1207 | 1213 | memset (&decParam, 0, sizeof (SDecodingParam)); |
| @@ -1213,8 +1219,8 @@ TEST_F (EncodeDecodeTestAPI, SimulcastAVC_SPS_PPS_LISTING) { · 5 unmodified lines | ||
| 1213 | 1219 | ASSERT_EQ (0, rv); |
| 1214 | 1220 | } |
| 1215 | 1221 | |
| 1216 | − TestOneSimulcastAVC (&sParam1, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0); | |
| 1217 | − TestOneSimulcastAVC (&sParam2, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0); | |
| 1222 | + ASSERT_TRUE (TestOneSimulcastAVC (&sParam1, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0)); | |
| 1223 | + ASSERT_TRUE (TestOneSimulcastAVC (&sParam2, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0)); | |
| 1218 | 1224 | |
| 1219 | 1225 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1220 | 1226 | free (pBsBuf[iIdx]); |
| @@ -1367,8 +1373,7 @@ TEST_P (EncodeTestAPI, SetEncOptionSize) { · 146 unmodified lines | ||
| 1367 | 1373 | encoder_->Uninitialize(); |
| 1368 | 1374 | int rv = encoder_->InitializeExt (¶m_); |
| 1369 | 1375 | ASSERT_TRUE (rv == cmResultSuccess); |
| 1370 | − InitialEncDec (p.iWidth, p.iHeight); | |
| 1371 | − | |
| 1376 | + ASSERT_TRUE (InitialEncDec (p.iWidth, p.iHeight)); | |
| 1372 | 1377 | |
| 1373 | 1378 | int32_t iSpsPpsIdAddition = 1; |
| 1374 | 1379 | encoder_->SetOption (ENCODER_OPTION_SPS_PPS_ID_STRATEGY, &iSpsPpsIdAddition); |
| @@ -1456,12 +1461,12 @@ TEST_F (EncodeDecodeTestAPI, SimulcastAVCDiffFps) { · 81 unmodified lines | ||
| 1456 | 1461 | //create decoder |
| 1457 | 1462 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1458 | 1463 | pBsBuf[iIdx] = static_cast<unsigned char*> (malloc (iWidth * iHeight * 3 * sizeof (unsigned char) / 2)); |
| 1459 | − EXPECT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1464 | + ASSERT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1460 | 1465 | aLen[iIdx] = 0; |
| 1461 | 1466 | |
| 1462 | 1467 | long rv = WelsCreateDecoder (&decoder[iIdx]); |
| 1463 | 1468 | ASSERT_EQ (0, rv); |
| 1464 | − EXPECT_TRUE (decoder[iIdx] != NULL); | |
| 1469 | + ASSERT_TRUE (decoder[iIdx] != NULL); | |
| 1465 | 1470 | |
| 1466 | 1471 | SDecodingParam decParam; |
| 1467 | 1472 | memset (&decParam, 0, sizeof (SDecodingParam)); |
| @@ -1494,7 +1499,7 @@ TEST_F (EncodeDecodeTestAPI, SimulcastAVCDiffFps) { · 26 unmodified lines | ||
| 1494 | 1499 | int iLayerLen = 0; |
| 1495 | 1500 | unsigned char* pData[3] = { NULL }; |
| 1496 | 1501 | |
| 1497 | − InitialEncDec (param_.iPicWidth, param_.iPicHeight); | |
| 1502 | + ASSERT_TRUE (InitialEncDec (param_.iPicWidth, param_.iPicHeight)); | |
| 1498 | 1503 | EncodeOneFrame (0); |
| 1499 | 1504 | |
| 1500 | 1505 | if (iInsertIdr == iFrame) { |
| @@ -1597,11 +1602,11 @@ TEST_F (EncodeDecodeTestAPI, DiffSlicingInDlayer) { · 96 unmodified lines | ||
| 1597 | 1602 | //create decoder |
| 1598 | 1603 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1599 | 1604 | pBsBuf[iIdx] = static_cast<unsigned char*> (malloc (iWidth * iHeight * 3 * sizeof (unsigned char) / 2)); |
| 1600 | − EXPECT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1605 | + ASSERT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1601 | 1606 | |
| 1602 | 1607 | long rv = WelsCreateDecoder (&decoder[iIdx]); |
| 1603 | 1608 | ASSERT_EQ (0, rv); |
| 1604 | − EXPECT_TRUE (decoder[iIdx] != NULL); | |
| 1609 | + ASSERT_TRUE (decoder[iIdx] != NULL); | |
| 1605 | 1610 | |
| 1606 | 1611 | SDecodingParam decParam; |
| 1607 | 1612 | memset (&decParam, 0, sizeof (SDecodingParam)); |
| @@ -1613,10 +1618,13 @@ TEST_F (EncodeDecodeTestAPI, DiffSlicingInDlayer) { · 5 unmodified lines | ||
| 1613 | 1618 | ASSERT_EQ (0, rv); |
| 1614 | 1619 | } |
| 1615 | 1620 | |
| 1616 | − TestOneSimulcastAVC (&sParam, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0); | |
| 1621 | + ASSERT_TRUE (TestOneSimulcastAVC (&sParam, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0)); | |
| 1617 | 1622 | |
| 1618 | 1623 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1619 | − free (pBsBuf[iIdx]); | |
| 1624 | + if (pBsBuf[iIdx]) { | |
| 1625 | + free (pBsBuf[iIdx]); | |
| 1626 | + pBsBuf[iIdx] = NULL; | |
| 1627 | + } | |
| 1620 | 1628 | |
| 1621 | 1629 | if (decoder[iIdx] != NULL) { |
| 1622 | 1630 | decoder[iIdx]->Uninitialize(); |
| @@ -1665,11 +1673,11 @@ TEST_F (EncodeDecodeTestAPI, DiffSlicingInDlayerMixed) { · 42 unmodified lines | ||
| 1665 | 1673 | //create decoder |
| 1666 | 1674 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1667 | 1675 | pBsBuf[iIdx] = static_cast<unsigned char*> (malloc (iWidth * iHeight * 3 * sizeof (unsigned char) / 2)); |
| 1668 | − EXPECT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1676 | + ASSERT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1669 | 1677 | |
| 1670 | 1678 | long rv = WelsCreateDecoder (&decoder[iIdx]); |
| 1671 | 1679 | ASSERT_EQ (0, rv); |
| 1672 | − EXPECT_TRUE (decoder[iIdx] != NULL); | |
| 1680 | + ASSERT_TRUE (decoder[iIdx] != NULL); | |
| 1673 | 1681 | |
| 1674 | 1682 | SDecodingParam decParam; |
| 1675 | 1683 | memset (&decParam, 0, sizeof (SDecodingParam)); |
| @@ -1681,10 +1689,11 @@ TEST_F (EncodeDecodeTestAPI, DiffSlicingInDlayerMixed) { · 5 unmodified lines | ||
| 1681 | 1689 | ASSERT_EQ (0, rv); |
| 1682 | 1690 | } |
| 1683 | 1691 | |
| 1684 | − TestOneSimulcastAVC (&sParam, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0); | |
| 1692 | + ASSERT_TRUE (TestOneSimulcastAVC (&sParam, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0)); | |
| 1685 | 1693 | |
| 1686 | 1694 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1687 | − free (pBsBuf[iIdx]); | |
| 1695 | + if (pBsBuf[iIdx]) | |
| 1696 | + free (pBsBuf[iIdx]); | |
| 1688 | 1697 | |
| 1689 | 1698 | if (decoder[iIdx] != NULL) { |
| 1690 | 1699 | decoder[iIdx]->Uninitialize(); |
| @@ -1725,11 +1734,11 @@ TEST_F (EncodeDecodeTestAPI, ThreadNumAndSliceNum) { · 34 unmodified lines | ||
| 1725 | 1734 | //create decoder |
| 1726 | 1735 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1727 | 1736 | pBsBuf[iIdx] = static_cast<unsigned char*> (malloc (iWidth * iHeight * 3 * sizeof (unsigned char) / 2)); |
| 1728 | − EXPECT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1737 | + ASSERT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1729 | 1738 | |
| 1730 | 1739 | long rv = WelsCreateDecoder (&decoder[iIdx]); |
| 1731 | 1740 | ASSERT_EQ (0, rv); |
| 1732 | − EXPECT_TRUE (decoder[iIdx] != NULL); | |
| 1741 | + ASSERT_TRUE (decoder[iIdx] != NULL); | |
| 1733 | 1742 | |
| 1734 | 1743 | SDecodingParam decParam; |
| 1735 | 1744 | memset (&decParam, 0, sizeof (SDecodingParam)); |
| @@ -1741,7 +1750,7 @@ TEST_F (EncodeDecodeTestAPI, ThreadNumAndSliceNum) { · 5 unmodified lines | ||
| 1741 | 1750 | ASSERT_EQ (0, rv); |
| 1742 | 1751 | } |
| 1743 | 1752 | |
| 1744 | − TestOneSimulcastAVC (&sParam, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0); | |
| 1753 | + ASSERT_TRUE (TestOneSimulcastAVC (&sParam, decoder, pBsBuf, iSpatialLayerNum, iEncFrameNum, 0)); | |
| 1745 | 1754 | |
| 1746 | 1755 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1747 | 1756 | free (pBsBuf[iIdx]); |
| @@ -1790,11 +1799,11 @@ TEST_F (EncodeDecodeTestAPI, TriggerLoadBalancing) { · 42 unmodified lines | ||
| 1790 | 1799 | //create decoder |
| 1791 | 1800 | for (iIdx = 0; iIdx < iSpatialLayerNum; iIdx++) { |
| 1792 | 1801 | pBsBuf[iIdx] = static_cast<unsigned char*> (malloc (iWidth * iHeight * 3 * sizeof (unsigned char) / 2)); |
| 1793 | − EXPECT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1802 | + ASSERT_TRUE (pBsBuf[iIdx] != NULL); | |
| 1794 | 1803 | |
| 1795 | 1804 | long rv = WelsCreateDecoder (&decoder[iIdx]); |
| 1796 | 1805 | ASSERT_EQ (0, rv); |
| 1797 | − EXPECT_TRUE (decoder[iIdx] != NULL); | |
| 1806 | + ASSERT_TRUE (decoder[iIdx] != NULL); | |
| 1798 | 1807 | |
| 1799 | 1808 | SDecodingParam decParam; |
| 1800 | 1809 | memset (&decParam, 0, sizeof (SDecodingParam)); |
| @@ -1815,7 +1824,7 @@ TEST_F (EncodeDecodeTestAPI, TriggerLoadBalancing) { · 14 unmodified lines | ||
| 1815 | 1824 | int iLayerLen = 0; |
| 1816 | 1825 | unsigned char* pData[3] = { NULL }; |
| 1817 | 1826 | |
| 1818 | − InitialEncDec (sParam.iPicWidth, sParam.iPicHeight); | |
| 1827 | + ASSERT_TRUE (InitialEncDec (sParam.iPicWidth, sParam.iPicHeight)); | |
| 1819 | 1828 | int frameSize = EncPic.iPicWidth * EncPic.iPicHeight * 3 / 2; |
| 1820 | 1829 | memset (buf_.data(), rand() % 256, (frameSize >> 2)); |
| 1821 | 1830 | memset (buf_.data() + (frameSize >> 2), rand() % 256, (frameSize - (frameSize >> 2))); |
| @@ -1920,16 +1929,16 @@ TEST_F (EncodeDecodeTestAPI, ProfileLevelSetting) { · 98 unmodified lines | ||
| 1920 | 1929 | int iSliceNum = 1; |
| 1921 | 1930 | |
| 1922 | 1931 | EProfileIdc profileList[11] = {PRO_UNKNOWN, PRO_BASELINE, PRO_MAIN, |
| 1923 | − PRO_EXTENDED , PRO_HIGH , PRO_HIGH10, | |
| 1924 | − PRO_HIGH422, PRO_HIGH444, PRO_CAVLC444, | |
| 1925 | − PRO_SCALABLE_BASELINE, | |
| 1926 | − PRO_SCALABLE_HIGH | |
| 1927 | − }; | |
| 1932 | + PRO_EXTENDED , PRO_HIGH , PRO_HIGH10, | |
| 1933 | + PRO_HIGH422, PRO_HIGH444, PRO_CAVLC444, | |
| 1934 | + PRO_SCALABLE_BASELINE, | |
| 1935 | + PRO_SCALABLE_HIGH | |
| 1936 | + }; | |
| 1928 | 1937 | ELevelIdc levelList[18] = { LEVEL_UNKNOWN, LEVEL_1_0, LEVEL_1_B, LEVEL_1_1, LEVEL_1_2, |
| 1929 | − LEVEL_1_3, LEVEL_2_0, LEVEL_2_1, LEVEL_2_2, LEVEL_3_0, | |
| 1930 | − LEVEL_3_1, LEVEL_3_2, LEVEL_4_0, LEVEL_4_1, | |
| 1931 | − LEVEL_4_2, LEVEL_5_0, LEVEL_5_1, LEVEL_5_2 | |
| 1932 | − }; | |
| 1938 | + LEVEL_1_3, LEVEL_2_0, LEVEL_2_1, LEVEL_2_2, LEVEL_3_0, | |
| 1939 | + LEVEL_3_1, LEVEL_3_2, LEVEL_4_0, LEVEL_4_1, | |
| 1940 | + LEVEL_4_2, LEVEL_5_0, LEVEL_5_1, LEVEL_5_2 | |
| 1941 | + }; | |
| 1933 | 1942 | |
| 1934 | 1943 | EProfileIdc iEncProfileIdc = PRO_UNKNOWN; |
| 1935 | 1944 | ELevelIdc iEncLevelIdc = LEVEL_UNKNOWN; |
| @@ -1958,7 +1967,7 @@ TEST_F (EncodeDecodeTestAPI, ProfileLevelSetting) { · 22 unmodified lines | ||
| 1958 | 1967 | int rv = encoder_->InitializeExt (&sParam); |
| 1959 | 1968 | ASSERT_TRUE (rv == cmResultSuccess) << "InitializeExt: rv = " << rv << " at " << sParam.iPicWidth << "x" << |
| 1960 | 1969 | sParam.iPicHeight; |
| 1961 | − EncDecOneFrame (sParam.iPicWidth, sParam.iPicHeight, iEncFrameNum++, NULL); | |
| 1970 | + ASSERT_TRUE (EncDecOneFrame (sParam.iPicWidth, sParam.iPicHeight, iEncFrameNum++, NULL)); | |
| 1962 | 1971 | |
| 1963 | 1972 | decoder_->GetOption (DECODER_OPTION_PROFILE, &iDecProfileIdc); |
| 1964 | 1973 | |
| @@ -2021,7 +2030,7 @@ TEST_F (EncodeDecodeTestAPI, ProfileLevelSetting) { · 56 unmodified lines | ||
| 2021 | 2030 | rv = encoder_->ForceIntraFrame (true); |
| 2022 | 2031 | ASSERT_TRUE (rv == cmResultSuccess) << "rv = " << rv; |
| 2023 | 2032 | |
| 2024 | − EncDecOneFrame (sParam.iPicWidth, sParam.iPicHeight, iEncFrameNum++, NULL); | |
| 2033 | + ASSERT_TRUE (EncDecOneFrame (sParam.iPicWidth, sParam.iPicHeight, iEncFrameNum++, NULL)); | |
| 2025 | 2034 | |
| 2026 | 2035 | decoder_->GetOption (DECODER_OPTION_PROFILE, &iDecProfileIdc); |
| 2027 | 2036 | |