From: Anuradha S. <asu...@us...> - 2008-08-27 01:06:09
|
Update of /cvsroot/dirac/compress/unit_tests In directory sc8-pr-cvs12.sourceforge.net:/tmp/cvs-serv6016/unit_tests Modified Files: motion_comp_test.cpp Log Message: Changes related to the commit where picture parameters were separated into a different class from the Codec Parameters class. Author: asu...@di... <anu...@ho...> Index: motion_comp_test.cpp =================================================================== RCS file: /cvsroot/dirac/compress/unit_tests/motion_comp_test.cpp,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** motion_comp_test.cpp 19 Jun 2008 10:36:32 -0000 1.16 --- motion_comp_test.cpp 27 Aug 2008 01:06:05 -0000 1.17 *************** *** 70,76 **** ! MvData* setupMV1Data(CodecParams& cp, int mv_x, int mv_y, PredMode mode) { ! MvData* mv_data = new MvData(cp.XNumMB(),cp.YNumMB(),cp.XNumBlocks(),cp.YNumBlocks(), 2); MvArray& arr = mv_data->Vectors(1); for (int i =arr.FirstY(); i <= arr.LastY(); i++) --- 70,76 ---- ! MvData* setupMV1Data(const PicturePredParams& ppp, int mv_x, int mv_y, PredMode mode) { ! MvData* mv_data = new MvData(ppp, 2); MvArray& arr = mv_data->Vectors(1); for (int i =arr.FirstY(); i <= arr.LastY(); i++) *************** *** 111,128 **** PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 1, true); OLBParams bparams(12, 12, 8, 8); ! cp.SetMVPrecision(precision); ! cp.SetBlockSizes(bparams, format420 ); ! cp.SetXNumMB( X_SIZE / cp.LumaBParams(0).Xbsep() ); ! cp.SetYNumMB( Y_SIZE / cp.LumaBParams(0).Ybsep() ); ! cp.SetYNumMB( Y_SIZE / cp.LumaBParams(0).Ybsep() ); ! cp.SetXNumBlocks( 4*cp.XNumMB() ); ! cp.SetYNumBlocks( 4*cp.YNumMB() ); // MotionCompensator mc( cp ); ! MvData* mv_data = setupMV1Data(cp, 0, 0, REF1_ONLY); PictureParams pp(format420, X_SIZE, Y_SIZE, 8, 8); --- 111,129 ---- PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 1, true); + PicturePredParams &ppp = cp.GetPicPredParams(); OLBParams bparams(12, 12, 8, 8); ! ppp.SetMVPrecision(precision); ! ppp.SetBlockSizes(bparams, format420 ); ! ppp.SetXNumMB( X_SIZE / ppp.LumaBParams(0).Xbsep() ); ! ppp.SetYNumMB( Y_SIZE / ppp.LumaBParams(0).Ybsep() ); ! ppp.SetYNumMB( Y_SIZE / ppp.LumaBParams(0).Ybsep() ); ! ppp.SetXNumBlocks( 4*ppp.XNumMB() ); ! ppp.SetYNumBlocks( 4*ppp.YNumMB() ); // MotionCompensator mc( cp ); ! MvData* mv_data = setupMV1Data(ppp, 0, 0, REF1_ONLY); PictureParams pp(format420, X_SIZE, Y_SIZE, 8, 8); *************** *** 146,150 **** // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); // MotionCompensator mc2( cp ); --- 147,151 ---- // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); // MotionCompensator mc2( cp ); *************** *** 153,157 **** //CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(0), pbuffer.GetPicture(1))); // mc2.CompensatePicture(SUBTRACT, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, SUBTRACT, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(1))); --- 154,158 ---- //CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(0), pbuffer.GetPicture(1))); // mc2.CompensatePicture(SUBTRACT, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, SUBTRACT, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(1))); *************** *** 171,185 **** PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 1, true); OLBParams bparams(12, 12, 8, 8); ! cp.SetMVPrecision(precision); ! cp.SetBlockSizes(bparams, format420 ); ! cp.SetXNumMB( X_SIZE / cp.LumaBParams(0).Xbsep() ); ! cp.SetYNumMB( Y_SIZE / cp.LumaBParams(0).Ybsep() ); ! cp.SetXNumBlocks( 4*cp.XNumMB() ); ! cp.SetYNumBlocks( 4*cp.YNumMB() ); ! MvData* mv_data = setupMV1Data(cp, 5, 5, REF1_ONLY); PictureParams pp(format420, X_SIZE, Y_SIZE, 8, 8); --- 172,187 ---- PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 1, true); + PicturePredParams &ppp = cp.GetPicPredParams(); OLBParams bparams(12, 12, 8, 8); ! ppp.SetMVPrecision(precision); ! ppp.SetBlockSizes(bparams, format420 ); ! ppp.SetXNumMB( X_SIZE / ppp.LumaBParams(0).Xbsep() ); ! ppp.SetYNumMB( Y_SIZE / ppp.LumaBParams(0).Ybsep() ); ! ppp.SetXNumBlocks( 4*ppp.XNumMB() ); ! ppp.SetYNumBlocks( 4*ppp.YNumMB() ); ! MvData* mv_data = setupMV1Data(ppp, 5, 5, REF1_ONLY); PictureParams pp(format420, X_SIZE, Y_SIZE, 8, 8); *************** *** 204,212 **** // MotionCompensator mc( cp ); // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); // MotionCompensator mc2( cp ); // mc2.CompensatePicture(SUBTRACT, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, SUBTRACT, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(1))); --- 206,214 ---- // MotionCompensator mc( cp ); // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); // MotionCompensator mc2( cp ); // mc2.CompensatePicture(SUBTRACT, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, SUBTRACT, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(1))); *************** *** 226,240 **** PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 1, true); OLBParams bparams(12, 12, 8, 8); ! cp.SetMVPrecision(precision); ! cp.SetBlockSizes(bparams, format420 ); ! cp.SetXNumMB( X_SIZE / cp.LumaBParams(0).Xbsep() ); ! cp.SetYNumMB( Y_SIZE / cp.LumaBParams(0).Ybsep() ); ! cp.SetXNumBlocks( 4*cp.XNumMB() ); ! cp.SetYNumBlocks( 4*cp.YNumMB() ); ! MvData* mv_data = setupMV1Data(cp, 5, 5, REF1_ONLY); PictureParams pp(format420, X_SIZE, Y_SIZE, 8, 8); --- 228,243 ---- PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 1, true); + PicturePredParams &ppp = cp.GetPicPredParams(); OLBParams bparams(12, 12, 8, 8); ! ppp.SetMVPrecision(precision); ! ppp.SetBlockSizes(bparams, format420 ); ! ppp.SetXNumMB( X_SIZE / ppp.LumaBParams(0).Xbsep() ); ! ppp.SetYNumMB( Y_SIZE / ppp.LumaBParams(0).Ybsep() ); ! ppp.SetXNumBlocks( 4*ppp.XNumMB() ); ! ppp.SetYNumBlocks( 4*ppp.YNumMB() ); ! MvData* mv_data = setupMV1Data(ppp, 5, 5, REF1_ONLY); PictureParams pp(format420, X_SIZE, Y_SIZE, 8, 8); *************** *** 259,267 **** // MotionCompensator mc( cp ); // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); // MotionCompensator mc2( cp ); // mc2.CompensatePicture(SUBTRACT, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, SUBTRACT, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(1))); --- 262,270 ---- // MotionCompensator mc( cp ); // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); // MotionCompensator mc2( cp ); // mc2.CompensatePicture(SUBTRACT, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, SUBTRACT, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(1))); *************** *** 274,288 **** PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 2, true); OLBParams bparams(12, 12, 8, 8); ! cp.SetBlockSizes(bparams, format420 ); ! cp.SetXNumMB( X_SIZE / cp.LumaBParams(0).Xbsep() ); ! cp.SetYNumMB( Y_SIZE / cp.LumaBParams(0).Ybsep() ); ! cp.SetXNumBlocks( 4*cp.XNumMB() ); ! cp.SetYNumBlocks( 4*cp.YNumMB() ); ! MvData* mv_data = setupMV1Data(cp, 5, 5, REF1_ONLY); PictureParams pp(format420, X_SIZE, Y_SIZE, 8, 8); --- 277,292 ---- PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 2, true); + PicturePredParams &ppp = cp.GetPicPredParams(); OLBParams bparams(12, 12, 8, 8); ! ppp.SetBlockSizes(bparams, format420 ); ! ppp.SetXNumMB( X_SIZE / ppp.LumaBParams(0).Xbsep() ); ! ppp.SetYNumMB( Y_SIZE / ppp.LumaBParams(0).Ybsep() ); ! ppp.SetXNumBlocks( 4*ppp.XNumMB() ); ! ppp.SetYNumBlocks( 4*ppp.YNumMB() ); ! MvData* mv_data = setupMV1Data(ppp, 5, 5, REF1_ONLY); PictureParams pp(format420, X_SIZE, Y_SIZE, 8, 8); *************** *** 303,307 **** // MotionCompensator mc( cp ); // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(0), pbuffer.GetPicture(1))); --- 307,311 ---- // MotionCompensator mc( cp ); // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(0), pbuffer.GetPicture(1))); *************** *** 322,337 **** PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 2, true); OLBParams bparams(12, 12, 8, 8); ! cp.SetMVPrecision(precision); ! cp.SetBlockSizes(bparams, format420 ); ! cp.SetXNumMB( X_SIZE / cp.LumaBParams(0).Xbsep() ); ! cp.SetYNumMB( Y_SIZE / cp.LumaBParams(0).Ybsep() ); ! cp.SetXNumBlocks( 4*cp.XNumMB() ); ! cp.SetYNumBlocks( 4*cp.YNumMB() ); ! MvData* mv_data = setupMV1Data(cp, 5, 5, REF2_ONLY); setupMV2Data(mv_data, 0, 0); --- 326,342 ---- PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 2, true); + PicturePredParams &ppp = cp.GetPicPredParams(); OLBParams bparams(12, 12, 8, 8); ! ppp.SetMVPrecision(precision); ! ppp.SetBlockSizes(bparams, format420 ); ! ppp.SetXNumMB( X_SIZE / ppp.LumaBParams(0).Xbsep() ); ! ppp.SetYNumMB( Y_SIZE / ppp.LumaBParams(0).Ybsep() ); ! ppp.SetXNumBlocks( 4*ppp.XNumMB() ); ! ppp.SetYNumBlocks( 4*ppp.YNumMB() ); ! MvData* mv_data = setupMV1Data(ppp, 5, 5, REF2_ONLY); setupMV2Data(mv_data, 0, 0); *************** *** 358,362 **** // MotionCompensator mc( cp ); // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); //too many rounding errors for this to be exactly true; --- 363,367 ---- // MotionCompensator mc( cp ); // mc.CompensatePicture(ADD, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data, &pbuffer.GetPicture(0), ref_pics ); //too many rounding errors for this to be exactly true; *************** *** 365,369 **** // MotionCompensator mc2( cp ); // mc2.CompensatePicture(SUBTRACT, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(cp, SUBTRACT, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(1))); --- 370,374 ---- // MotionCompensator mc2( cp ); // mc2.CompensatePicture(SUBTRACT, pbuffer, 1, *mv_data); ! MotionCompensator::CompensatePicture(ppp, SUBTRACT, *mv_data, &pbuffer.GetPicture(0), ref_pics ); CPPUNIT_ASSERT (PicturesTest::equalPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(1))); *************** *** 383,402 **** PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 2, true); OLBParams bparams(12, 12, 8, 8); ! cp.SetMVPrecision(precision); ! cp.SetBlockSizes(bparams, format420 ); ! cp.SetXNumMB( X_SIZE / cp.LumaBParams(0).Xbsep() ); ! cp.SetYNumMB( Y_SIZE / cp.LumaBParams(0).Ybsep() ); ! cp.SetXNumBlocks( 4*cp.XNumMB() ); ! cp.SetYNumBlocks( 4*cp.YNumMB() ); ! MvData* mv_data = setupMV1Data(cp, 5, 5, REF1_ONLY); setupMV2Data(mv_data, 5, 5); ! MvData* mv_data1 = setupMV1Data(cp, 7, 3, REF2_ONLY); setupMV2Data(mv_data1, 7, 3); ! MvData* mv_data2 = setupMV1Data(cp, 5, 5, REF1AND2); setupMV2Data(mv_data2, 7, 3); --- 388,408 ---- PictureBuffer pbuffer; CodecParams cp(VIDEO_FORMAT_CIF, INTER_PICTURE, 2, true); + PicturePredParams &ppp = cp.GetPicPredParams(); OLBParams bparams(12, 12, 8, 8); ! ppp.SetMVPrecision(precision); ! ppp.SetBlockSizes(bparams, format420 ); ! ppp.SetXNumMB( X_SIZE / ppp.LumaBParams(0).Xbsep() ); ! ppp.SetYNumMB( Y_SIZE / ppp.LumaBParams(0).Ybsep() ); ! ppp.SetXNumBlocks( 4*ppp.XNumMB() ); ! ppp.SetYNumBlocks( 4*ppp.YNumMB() ); ! MvData* mv_data = setupMV1Data(ppp, 5, 5, REF1_ONLY); setupMV2Data(mv_data, 5, 5); ! MvData* mv_data1 = setupMV1Data(ppp, 7, 3, REF2_ONLY); setupMV2Data(mv_data1, 7, 3); ! MvData* mv_data2 = setupMV1Data(ppp, 5, 5, REF1AND2); setupMV2Data(mv_data2, 7, 3); *************** *** 431,450 **** //mc.CompensatePicture(ADD, pbuffer, 2, *mv_data); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data, &pbuffer.GetPicture(2), ref_pics); //MotionCompensator mc2( cp ); //mc2.CompensatePicture(ADD, pbuffer, 2, *mv_data1); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data1, &pbuffer.GetPicture(2), ref_pics); // MotionCompensator mc3( cp ); // mc3.CompensatePicture(ADD, pbuffer, 3, *mv_data2); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data2, &pbuffer.GetPicture(3), ref_pics); //MotionCompensator mc4( cp ); //mc4.CompensatePicture(ADD, pbuffer, 3, *mv_data2); ! MotionCompensator::CompensatePicture(cp, ADD, *mv_data2, &pbuffer.GetPicture(3), ref_pics); CPPUNIT_ASSERT (PicturesTest::almostEqualPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(3), 5 )); --- 437,456 ---- //mc.CompensatePicture(ADD, pbuffer, 2, *mv_data); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data, &pbuffer.GetPicture(2), ref_pics); //MotionCompensator mc2( cp ); //mc2.CompensatePicture(ADD, pbuffer, 2, *mv_data1); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data1, &pbuffer.GetPicture(2), ref_pics); // MotionCompensator mc3( cp ); // mc3.CompensatePicture(ADD, pbuffer, 3, *mv_data2); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data2, &pbuffer.GetPicture(3), ref_pics); //MotionCompensator mc4( cp ); //mc4.CompensatePicture(ADD, pbuffer, 3, *mv_data2); ! MotionCompensator::CompensatePicture(ppp, ADD, *mv_data2, &pbuffer.GetPicture(3), ref_pics); CPPUNIT_ASSERT (PicturesTest::almostEqualPictures (pbuffer.GetPicture(2), pbuffer.GetPicture(3), 5 )); |