Changeset 1185 in 3DVCSoftware for branches/HTM-14.0-dev0/source/App
- Timestamp:
- 7 Apr 2015, 21:52:03 (10 years ago)
- Location:
- branches/HTM-14.0-dev0/source/App
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-14.0-dev0/source/App/TAppDecoder/TAppDecTop.cpp
r1179 r1185 248 248 { 249 249 m_tDecTop[decIdx]->setTargetOptLayerSetIdx( m_targetOptLayerSetIdx ); 250 #if H_3D _ANNEX_SELECTION_FIX250 #if H_3D 251 251 m_tDecTop[decIdx]->setProfileIdc( ); 252 252 #endif … … 1053 1053 m_tDecTop[ decIdx ]->setLayerInitilizedFlags( m_layerInitilizedFlags ); 1054 1054 m_tDecTop[ decIdx ]->setTargetOptLayerSetIdx( m_targetOptLayerSetIdx ); 1055 #if H_3D _ANNEX_SELECTION_FIX1055 #if H_3D 1056 1056 m_tDecTop[ decIdx ]->setProfileIdc ( ); 1057 1057 #endif -
branches/HTM-14.0-dev0/source/App/TAppEncoder/TAppEncCfg.cpp
r1179 r1185 225 225 } 226 226 #endif 227 #if HHI_INTER_COMP_PRED_K0052228 227 #if H_3D 229 228 in>>entry.m_interCompPredFlag; 230 #endif231 229 #endif 232 230 return in; … … 482 480 ("FastSearch", m_iFastSearch, 1, "0:Full search 1:Diamond 2:PMVFAST") 483 481 ("SearchRange,-sr", m_iSearchRange, 96, "Motion search range") 484 #if SONY_MV_V_CONST_C0078482 #if H_MV 485 483 ("DispSearchRangeRestriction", m_bUseDisparitySearchRangeRestriction, false, "restrict disparity search range") 486 484 ("VerticalDispSearchRange", m_iVerticalDisparitySearchRange, 56, "vertical disparity search range") … … 794 792 ("QtPredFlag" , m_qtPredFlag , true , "Quad tree prediction from texture to depth") 795 793 ("InterSdcFlag" , m_interSdcFlag , true , "Inter depth DCs" ) 796 #if SEC_DEPTH_INTRA_SKIP_MODE_K0033797 794 ("DepthIntraSkip" , m_depthIntraSkipFlag , true , "Depth intra skip mode" ) 798 #else799 ("IntraSingleFlag" , m_intraSingleFlag , true , "Intra single mode" )800 #endif801 795 #endif //H_3D 802 796 ; … … 1559 1553 { 1560 1554 xConfirmPara( m_directRefLayers[i][j] < 0 || m_directRefLayers[i][j] >= i , "Reference layer id shall be greater than or equal to 0 and less than dependent layer id"); 1561 #if H_3D_DIRECT_DEP_TYPE1562 1555 xConfirmPara( m_dependencyTypes[i][j] < 0 || m_dependencyTypes[i][j] > 6 , "Dependency type shall be greater than or equal to 0 and less than 7"); 1563 #else1564 xConfirmPara( m_dependencyTypes[i][j] < 0 || m_dependencyTypes[i][j] > 2 , "Dependency type shall be greater than or equal to 0 and less than 3");1565 #endif1566 1556 } 1567 1557 } … … 1599 1589 xConfirmPara( m_iSearchRange < 0 , "Search Range must be more than 0" ); 1600 1590 xConfirmPara( m_bipredSearchRange < 0 , "Search Range must be more than 0" ); 1601 #if SONY_MV_V_CONST_C00781591 #if H_MV 1602 1592 xConfirmPara( m_iVerticalDisparitySearchRange <= 0 , "Vertical Disparity Search Range must be more than 0" ); 1603 1593 #endif … … 1716 1706 xConfirmPara( m_pchCameraParameterFile == 0 , "CameraParameterFile must be given"); 1717 1707 xConfirmPara( m_pchBaseViewCameraNumbers == 0 , "BaseViewCameraNumbers must be given" ); 1718 #if BUG_FIX_TK651719 #if HHI_CAM_PARA_K00521720 1708 xConfirmPara( m_iNumberOfViews != m_cCameraData.getBaseViewNumbers().size() , "Number of Views in BaseViewCameraNumbers must be equal to NumberOfViews" ); 1721 #else1722 xConfirmPara( ( ((UInt) m_numberOfLayers >> 1 ) != m_cCameraData.getBaseViewNumbers().size() ) && ( m_numberOfLayers != m_cCameraData.getBaseViewNumbers().size() ), "Number of Views in BaseViewCameraNumbers must be equal to NumberOfViews" );1723 #endif1724 #else1725 xConfirmPara( ((UInt) m_numberOfLayers >> 1 ) != m_cCameraData.getBaseViewNumbers().size(), "Number of Views in BaseViewCameraNumbers must be equal to NumberOfViews" );1726 #endif1727 1709 xConfirmPara ( m_iCodedCamParPrecision < 0 || m_iCodedCamParPrecision > 5, "CodedCamParsPrecision must be in range of 0..5" ); 1728 1710 #if H_3D_VSO … … 2477 2459 printf("Min PCM size : %d\n", 1 << m_uiPCMLog2MinSize); 2478 2460 printf("Motion search range : %d\n", m_iSearchRange ); 2479 #if SONY_MV_V_CONST_C00782461 #if H_MV 2480 2462 printf("Disp search range restriction: %d\n", m_bUseDisparitySearchRangeRestriction ); 2481 2463 printf("Vertical disp search range : %d\n", m_iVerticalDisparitySearchRange ); … … 2632 2614 printf( "QtPred:%d " , m_qtPredFlag ? 1 : 0 ); 2633 2615 printf( "InterSdc:%d " , m_interSdcFlag ? 1 : 0 ); 2634 #if SEC_DEPTH_INTRA_SKIP_MODE_K00332635 2616 printf( "DepthIntraSkip:%d " , m_depthIntraSkipFlag ? 1 : 0 ); 2636 #else2637 printf( "IntraSingle:%d " , m_intraSingleFlag ? 1 : 0 );2638 #endif2639 2617 #endif 2640 2618 -
branches/HTM-14.0-dev0/source/App/TAppEncoder/TAppEncCfg.h
r1179 r1185 289 289 Int m_iSearchRange; ///< ME search range 290 290 Int m_bipredSearchRange; ///< ME search range for bipred refinement 291 #if SONY_MV_V_CONST_C0078291 #if H_MV 292 292 Bool m_bUseDisparitySearchRangeRestriction; ///< restrict vertical search range for inter-view prediction 293 293 Int m_iVerticalDisparitySearchRange; ///< ME vertical search range for inter-view prediction … … 488 488 Bool m_qtPredFlag; 489 489 Bool m_interSdcFlag; 490 #if SEC_DEPTH_INTRA_SKIP_MODE_K0033491 490 Bool m_depthIntraSkipFlag; 492 #else493 Bool m_intraSingleFlag;494 #endif495 491 #endif 496 492 // internal member functions -
branches/HTM-14.0-dev0/source/App/TAppEncoder/TAppEncTop.cpp
r1179 r1185 140 140 xSetVPSVUI ( vps ); 141 141 #if H_3D 142 #if HHI_CAM_PARA_K0052143 142 xSetCamPara ( vps ); 144 #endif145 #endif146 #if H_3D147 143 m_ivPicLists.setVPS ( &vps ); 148 144 xDeriveDltArray ( vps, dlt ); … … 201 197 m_sps3dExtension.setQtPredFlag ( d, m_qtPredFlag ); 202 198 m_sps3dExtension.setInterSdcFlag ( d, m_interSdcFlag ); 203 #if SEC_DEPTH_INTRA_SKIP_MODE_K0033204 199 m_sps3dExtension.setDepthIntraSkipFlag ( d, m_depthIntraSkipFlag ); 205 #else206 m_sps3dExtension.setIntraSingleFlag ( d, m_intraSingleFlag );207 #endif208 200 } 209 201 } … … 229 221 //====== Camera Parameters ========= 230 222 m_cTEncTop.setCameraParameters ( &m_cCameraData ); 231 #if !HHI_CAM_PARA_K0052232 m_cTEncTop.setCamParPrecision ( m_cCameraData.getCamParsCodedPrecision () );233 m_cTEncTop.setCamParInSliceHeader ( m_cCameraData.getVaryingCameraParameters() );234 235 m_cTEncTop.setCodedScale ( m_cCameraData.getCodedScale () );236 m_cTEncTop.setCodedOffset ( m_cCameraData.getCodedOffset () );237 #endif238 223 #if H_3D_VSO 239 224 //====== VSO ========= … … 359 344 m_cTEncTop.setBipredSearchRange ( m_bipredSearchRange ); 360 345 361 #if SONY_MV_V_CONST_C0078346 #if H_MV 362 347 m_cTEncTop.setUseDisparitySearchRangeRestriction ( m_bUseDisparitySearchRangeRestriction ); 363 348 m_cTEncTop.setVerticalDisparitySearchRange ( m_iVerticalDisparitySearchRange ); … … 651 636 } 652 637 #endif 653 #if H_3D_ANNEX_SELECTION_FIX654 638 #if H_3D 655 639 /// SET Profiles … … 692 676 } 693 677 #endif 694 #endif695 678 #if H_3D_VSO 696 679 if ( m_bUseVSO ) … … 799 782 { 800 783 #if H_3D 801 #if !HHI_CAM_PARA_K0052802 for ( Int viewIndex = 0; viewIndex < m_vps->getNumViews(); viewIndex++ )803 {804 m_vps->initCamParaVPS( viewIndex, true, m_cCameraData.getCamParsCodedPrecision(),805 m_cCameraData.getVaryingCameraParameters(), m_cCameraData.getCodedScale(), m_cCameraData.getCodedOffset() );806 }807 #endif808 784 #endif 809 785 … … 1143 1119 if (m_pchReconFileList[layerId]) 1144 1120 { 1145 #if H_MV_ALIGN_HM_151146 1121 m_acTVideoIOYuvReconFileList[layerId]->write( pcPicYuvRecTop, pcPicYuvRecBottom, m_confWinLeft, m_confWinRight, m_confWinTop, m_confWinBottom, m_isTopFieldFirst ); 1147 #else1148 m_acTVideoIOYuvReconFileList[layerId]->write( pcPicYuvRecTop, pcPicYuvRecBottom, m_confLeft, m_confRight, m_confTop, m_confBottom, m_isTopFieldFirst );1149 #endif1150 1122 } 1151 1123 } … … 1200 1172 if (m_pchReconFileList[layerId]) 1201 1173 { 1202 #if H_MV_ALIGN_HM_151203 1174 m_acTVideoIOYuvReconFileList[layerId]->write( pcPicYuvRec, m_confWinLeft, m_confWinRight, m_confWinTop, m_confWinBottom ); 1204 #else1205 m_acTVideoIOYuvReconFileList[layerId]->write( pcPicYuvRec, m_confLeft, m_confRight, m_confTop, m_confBottom );1206 #endif1207 1175 } 1208 1176 } … … 1390 1358 1391 1359 1392 #if HHI_INTER_COMP_PRED_K00521393 1360 #if H_3D 1394 1361 vps.initViewCompLayer( ); 1395 1362 #endif 1396 #endif1397 1363 } 1398 1364 … … 1412 1378 Bool defaultDirectDependencyFlag = false; 1413 1379 1414 #if H_3D_DIRECT_DEP_TYPE1415 1380 Int directDepTypeLenMinus2 = 0; 1416 #endif1417 1381 for( Int depLayer = 1; depLayer < m_numberOfLayers; depLayer++ ) 1418 1382 { … … 1424 1388 vps.setDirectDependencyFlag( depLayer, refLayer, true); 1425 1389 Int curDirectDependencyType = m_dependencyTypes[depLayer][i]; 1426 #if H_3D_DIRECT_DEP_TYPE1427 1390 directDepTypeLenMinus2 = std::max( directDepTypeLenMinus2, gCeilLog2( curDirectDependencyType + 1 ) - 2 ); 1428 #endif1429 1391 if ( defaultDirectDependencyType != -1 ) 1430 1392 { … … 1444 1406 vps.setDefaultDirectDependencyType( defaultDirectDependencyFlag ? defaultDirectDependencyType : -1 ); 1445 1407 1446 #if H_3D_DIRECT_DEP_TYPE1447 1408 assert( directDepTypeLenMinus2 <= 1 ); 1448 1409 vps.setDirectDepTypeLenMinus2( directDepTypeLenMinus2 ); 1449 #endif1450 1410 1451 1411 … … 1495 1455 #endif 1496 1456 { 1497 #if !HHI_INTER_COMP_PRED_K00521498 Bool refAlwaysIntra = ( i == getGOPSize() ) && ( m_iIntraPeriod[ curLayerIdInVps ] % m_iIntraPeriod[ refLayerIdInVps ] == 0 );1499 #endif1500 1457 Bool refLayerZero = ( i == getGOPSize() ) && ( refLayerIdInVps == 0 ); 1501 #if HHI_INTER_COMP_PRED_K00521502 // refAlwaysIntra actually not needed, since TemporalIds need to be aligned within an AU.1503 // Thus, reference pictures of IRAP pictures have TemporalId equal to 0.1504 1458 maxTid = std::max( maxTid, refLayerZero ? 0 : geRef.m_temporalId ); 1505 #else1506 maxTid = std::max( maxTid, ( refAlwaysIntra || refLayerZero ) ? 0 : geRef.m_temporalId );1507 #endif1508 1459 } 1509 1460 } … … 1513 1464 else 1514 1465 { 1515 #if HHI_INTER_COMP_PRED_K00521516 1466 if( m_depthFlag[ curLayerIdInVps ] && ( m_mpiFlag|| m_qtPredFlag || m_intraContourFlag ) ) 1517 1467 { … … 1552 1502 } 1553 1503 } 1554 #else1555 if( m_depthFlag[ curLayerIdInVps ] && ( m_mpiFlag|| m_qtPredFlag || m_intraContourFlag ) )1556 {1557 Int nuhLayerIdTex = vps.getLayerIdInNuh( vps.getViewIndex( curLayerIdInNuh ), false );1558 if ( nuhLayerIdTex == refLayerIdInNuh )1559 {1560 maxTid = std::max( maxTid, vps.getSubLayersVpsMaxMinus1( refLayerIdInVps) + 1 );1561 }1562 }1563 if( !m_depthFlag[ curLayerIdInVps ] && vps.getNumRefListLayers( curLayerIdInNuh) > 0 && ( m_depthRefinementFlag || m_viewSynthesisPredFlag || m_depthBasedBlkPartFlag ) )1564 {1565 Int maxPresentTid =-1;1566 Bool allPresent = true;1567 for (Int i = 0; i < vps.getNumRefListLayers( curLayerIdInNuh); i++ )1568 {1569 Int nuhLayerIdDep = vps.getLayerIdInNuh( vps.getViewIndex( vps.getIdRefListLayer(curLayerIdInNuh, i ) ), true );1570 if ( nuhLayerIdDep== refLayerIdInNuh )1571 {1572 maxPresentTid= std::max( maxTid, vps.getSubLayersVpsMaxMinus1( refLayerIdInVps) + 1 );1573 }1574 else1575 {1576 allPresent = false;1577 }1578 }1579 1580 if ( allPresent )1581 {1582 maxTid= std::max( maxTid, maxPresentTid );1583 }1584 }1585 #endif1586 1504 } 1587 1505 } // if ( vps.getDirectDependencyFlag( curLayerIdInVps, refLayerIdInVps ) ) … … 1823 1741 // ToDo not supported yet. 1824 1742 //repFormat->setSeparateColourPlaneVpsFlag( ); 1825 #if H_MV_FIX_CONF_WINDOW1826 1743 Bool conformanceWindowVpsFlag = ( m_confWinBottom != 0 ) || ( m_confWinRight != 0 ) || ( m_confWinTop != 0 ) || ( m_confWinBottom != 0 ); 1827 1744 repFormat->setConformanceWindowVpsFlag( conformanceWindowVpsFlag ); … … 1833 1750 repFormat->setConfWinVpsBottomOffset ( m_confWinBottom / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) ); 1834 1751 } 1835 #else1836 repFormat->setConformanceWindowVpsFlag( true );1837 repFormat->setConfWinVpsLeftOffset ( m_confWinLeft / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) );1838 repFormat->setConfWinVpsRightOffset ( m_confWinRight / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) );1839 repFormat->setConfWinVpsTopOffset ( m_confWinTop / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) );1840 repFormat->setConfWinVpsBottomOffset ( m_confWinBottom / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) );1841 #endif1842 1752 assert( vps.getRepFormat( j ) == NULL ); 1843 1753 vps.setRepFormat( j , repFormat ); … … 1861 1771 1862 1772 repFormat->setConformanceWindowVpsFlag( true ); 1863 #if H_MV_ALIGN_HM_151864 1773 repFormat->setConfWinVpsLeftOffset ( m_confWinLeft / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) ); 1865 1774 repFormat->setConfWinVpsRightOffset ( m_confWinRight / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) ); 1866 1775 repFormat->setConfWinVpsTopOffset ( m_confWinTop / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) ); 1867 1776 repFormat->setConfWinVpsBottomOffset ( m_confWinBottom / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) ); 1868 #else1869 repFormat->setConfWinVpsLeftOffset ( m_confLeft / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) );1870 repFormat->setConfWinVpsRightOffset ( m_confRight / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) );1871 repFormat->setConfWinVpsTopOffset ( m_confTop / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) );1872 repFormat->setConfWinVpsBottomOffset ( m_confBottom / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) );1873 #endif1874 1777 assert( vps.getRepFormat( 0 ) == NULL ); 1875 1778 vps.setRepFormat( 0 , repFormat ); … … 2250 2153 } 2251 2154 2252 #if HHI_CAM_PARA_K00522253 2155 #if H_3D 2254 2156 Void TAppEncTop::xSetCamPara ( TComVPS& vps ) … … 2285 2187 } 2286 2188 #endif 2287 #endif2288 2189 2289 2190 -
branches/HTM-14.0-dev0/source/App/TAppEncoder/TAppEncTop.h
r1179 r1185 142 142 Void xSetDpbSize ( TComVPS& vps ); 143 143 Void xSetVPSVUI ( TComVPS& vps ); 144 #if HHI_CAM_PARA_K0052145 144 #if H_3D 146 145 Void xSetCamPara ( TComVPS& vps ); 147 #endif148 146 #endif 149 147 GOPEntry* xGetGopEntry( Int layerIdInVps, Int poc );
Note: See TracChangeset for help on using the changeset viewer.