Changeset 1179 in 3DVCSoftware for trunk/source/App
- Timestamp:
- 7 Apr 2015, 17:05:30 (10 years ago)
- Location:
- trunk/source/App
- Files:
-
- 20 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/App/TAppDecoder/TAppDecCfg.cpp
r1084 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppDecoder/TAppDecCfg.h
r1084 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppDecoder/TAppDecTop.cpp
r1084 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 248 248 { 249 249 m_tDecTop[decIdx]->setTargetOptLayerSetIdx( m_targetOptLayerSetIdx ); 250 #if H_3D_ANNEX_SELECTION_FIX 251 m_tDecTop[decIdx]->setProfileIdc( ); 252 #endif 250 253 } 251 254 … … 1050 1053 m_tDecTop[ decIdx ]->setLayerInitilizedFlags( m_layerInitilizedFlags ); 1051 1054 m_tDecTop[ decIdx ]->setTargetOptLayerSetIdx( m_targetOptLayerSetIdx ); 1055 #if H_3D_ANNEX_SELECTION_FIX 1056 m_tDecTop[ decIdx ]->setProfileIdc ( ); 1057 #endif 1052 1058 1053 1059 #if H_3D -
trunk/source/App/TAppDecoder/TAppDecTop.h
r976 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppDecoder/decmain.cpp
r872 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppEncoder/TAppEncCfg.cpp
r1133 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 225 225 } 226 226 #endif 227 #if HHI_INTER_COMP_PRED_K0052 228 #if H_3D 229 in>>entry.m_interCompPredFlag; 230 #endif 231 #endif 227 232 return in; 228 233 } … … 477 482 ("FastSearch", m_iFastSearch, 1, "0:Full search 1:Diamond 2:PMVFAST") 478 483 ("SearchRange,-sr", m_iSearchRange, 96, "Motion search range") 484 #if SONY_MV_V_CONST_C0078 485 ("DispSearchRangeRestriction", m_bUseDisparitySearchRangeRestriction, false, "restrict disparity search range") 486 ("VerticalDispSearchRange", m_iVerticalDisparitySearchRange, 56, "vertical disparity search range") 487 #endif 479 488 ("BipredSearchRange", m_bipredSearchRange, 4, "Motion search range for bipred refinement") 480 489 ("HadamardME", m_bUseHADME, true, "Hadamard ME for fractional-pel") … … 785 794 ("QtPredFlag" , m_qtPredFlag , true , "Quad tree prediction from texture to depth") 786 795 ("InterSdcFlag" , m_interSdcFlag , true , "Inter depth DCs" ) 796 #if SEC_DEPTH_INTRA_SKIP_MODE_K0033 797 ("DepthIntraSkip" , m_depthIntraSkipFlag , true , "Depth intra skip mode" ) 798 #else 787 799 ("IntraSingleFlag" , m_intraSingleFlag , true , "Intra single mode" ) 800 #endif 788 801 #endif //H_3D 789 802 ; … … 1546 1559 { 1547 1560 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"); 1548 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"); 1561 #if H_3D_DIRECT_DEP_TYPE 1562 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 #else 1564 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 #endif 1549 1566 } 1550 1567 } … … 1582 1599 xConfirmPara( m_iSearchRange < 0 , "Search Range must be more than 0" ); 1583 1600 xConfirmPara( m_bipredSearchRange < 0 , "Search Range must be more than 0" ); 1601 #if SONY_MV_V_CONST_C0078 1602 xConfirmPara( m_iVerticalDisparitySearchRange <= 0 , "Vertical Disparity Search Range must be more than 0" ); 1603 #endif 1584 1604 xConfirmPara( m_iMaxDeltaQP > 7, "Absolute Delta QP exceeds supported range (0 to 7)" ); 1585 1605 xConfirmPara( m_iMaxCuDQPDepth > m_uiMaxCUDepth - 1, "Absolute depth for a minimum CuDQP exceeds maximum coding unit depth" ); … … 1697 1717 xConfirmPara( m_pchBaseViewCameraNumbers == 0 , "BaseViewCameraNumbers must be given" ); 1698 1718 #if BUG_FIX_TK65 1719 #if HHI_CAM_PARA_K0052 1720 xConfirmPara( m_iNumberOfViews != m_cCameraData.getBaseViewNumbers().size() , "Number of Views in BaseViewCameraNumbers must be equal to NumberOfViews" ); 1721 #else 1699 1722 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 #endif 1700 1724 #else 1701 1725 xConfirmPara( ((UInt) m_numberOfLayers >> 1 ) != m_cCameraData.getBaseViewNumbers().size(), "Number of Views in BaseViewCameraNumbers must be equal to NumberOfViews" ); … … 2453 2477 printf("Min PCM size : %d\n", 1 << m_uiPCMLog2MinSize); 2454 2478 printf("Motion search range : %d\n", m_iSearchRange ); 2479 #if SONY_MV_V_CONST_C0078 2480 printf("Disp search range restriction: %d\n", m_bUseDisparitySearchRangeRestriction ); 2481 printf("Vertical disp search range : %d\n", m_iVerticalDisparitySearchRange ); 2482 #endif 2455 2483 #if H_MV 2456 2484 xPrintParaVector( "Intra period", m_iIntraPeriod ); … … 2604 2632 printf( "QtPred:%d " , m_qtPredFlag ? 1 : 0 ); 2605 2633 printf( "InterSdc:%d " , m_interSdcFlag ? 1 : 0 ); 2634 #if SEC_DEPTH_INTRA_SKIP_MODE_K0033 2635 printf( "DepthIntraSkip:%d " , m_depthIntraSkipFlag ? 1 : 0 ); 2636 #else 2606 2637 printf( "IntraSingle:%d " , m_intraSingleFlag ? 1 : 0 ); 2638 #endif 2607 2639 #endif 2608 2640 -
trunk/source/App/TAppEncoder/TAppEncCfg.h
r1133 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 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_C0078 292 Bool m_bUseDisparitySearchRangeRestriction; ///< restrict vertical search range for inter-view prediction 293 Int m_iVerticalDisparitySearchRange; ///< ME vertical search range for inter-view prediction 294 #endif 291 295 Bool m_bUseFastEnc; ///< flag for using fast encoder setting 292 296 Bool m_bUseEarlyCU; ///< flag for using Early CU setting … … 484 488 Bool m_qtPredFlag; 485 489 Bool m_interSdcFlag; 490 #if SEC_DEPTH_INTRA_SKIP_MODE_K0033 491 Bool m_depthIntraSkipFlag; 492 #else 486 493 Bool m_intraSingleFlag; 487 494 #endif 488 495 #endif 489 496 // internal member functions -
trunk/source/App/TAppEncoder/TAppEncTop.cpp
r1133 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 140 140 xSetVPSVUI ( vps ); 141 141 #if H_3D 142 #if HHI_CAM_PARA_K0052 143 xSetCamPara ( vps ); 144 #endif 145 #endif 146 #if H_3D 142 147 m_ivPicLists.setVPS ( &vps ); 143 148 xDeriveDltArray ( vps, dlt ); … … 196 201 m_sps3dExtension.setQtPredFlag ( d, m_qtPredFlag ); 197 202 m_sps3dExtension.setInterSdcFlag ( d, m_interSdcFlag ); 203 #if SEC_DEPTH_INTRA_SKIP_MODE_K0033 204 m_sps3dExtension.setDepthIntraSkipFlag ( d, m_depthIntraSkipFlag ); 205 #else 198 206 m_sps3dExtension.setIntraSingleFlag ( d, m_intraSingleFlag ); 199 } 200 }201 #endif 202 207 #endif 208 } 209 } 210 #endif 203 211 for(Int layerIdInVps = 0; layerIdInVps < m_numberOfLayers; layerIdInVps++) 204 212 { … … 221 229 //====== Camera Parameters ========= 222 230 m_cTEncTop.setCameraParameters ( &m_cCameraData ); 231 #if !HHI_CAM_PARA_K0052 223 232 m_cTEncTop.setCamParPrecision ( m_cCameraData.getCamParsCodedPrecision () ); 224 233 m_cTEncTop.setCamParInSliceHeader ( m_cCameraData.getVaryingCameraParameters() ); 234 225 235 m_cTEncTop.setCodedScale ( m_cCameraData.getCodedScale () ); 226 236 m_cTEncTop.setCodedOffset ( m_cCameraData.getCodedOffset () ); 237 #endif 227 238 #if H_3D_VSO 228 239 //====== VSO ========= … … 348 359 m_cTEncTop.setBipredSearchRange ( m_bipredSearchRange ); 349 360 361 #if SONY_MV_V_CONST_C0078 362 m_cTEncTop.setUseDisparitySearchRangeRestriction ( m_bUseDisparitySearchRangeRestriction ); 363 m_cTEncTop.setVerticalDisparitySearchRange ( m_iVerticalDisparitySearchRange ); 364 #endif 350 365 //====== Quality control ======== 351 366 m_cTEncTop.setMaxDeltaQP ( m_iMaxDeltaQP ); … … 636 651 } 637 652 #endif 653 #if H_3D_ANNEX_SELECTION_FIX 654 #if H_3D 655 /// SET Profiles 656 for(Int layerIdInVps = 0; layerIdInVps < m_numberOfLayers; layerIdInVps++) 657 { 658 Int profileIdc = -1; 659 for (Int olsIdx = 0; olsIdx < vps.getNumOutputLayerSets(); olsIdx++ ) 660 { 661 Int lsIdx = vps.olsIdxToLsIdx( olsIdx ); 662 for(Int i = 0; i < vps.getNumLayersInIdList( lsIdx ); i++ ) 663 { 664 if( vps.getLayerIdInNuh( layerIdInVps) == vps.getLayerSetLayerIdList(lsIdx, i) ) 665 { 666 Int ptlIdx = vps.getProfileTierLevelIdx( olsIdx, i ); 667 if ( ptlIdx != -1 ) 668 { 669 Int curProfileIdc = vps.getPTL(ptlIdx)->getGeneralPTL()->getProfileIdc(); 670 if (profileIdc == -1) 671 { 672 profileIdc = curProfileIdc; 673 } 674 else 675 { 676 if ( profileIdc != curProfileIdc ) 677 { 678 fprintf(stderr, "Error: ProfileIdc for layer with index %d in VPS not equal in all OLSs. \n", layerIdInVps ); 679 exit(EXIT_FAILURE); 680 } 681 } 682 } 683 } 684 } 685 } 686 if (profileIdc == -1 ) 687 { 688 fprintf(stderr, "Error: No profile given for layer with index %d in VPS not equal in all OLS. \n", layerIdInVps ); 689 exit(EXIT_FAILURE); 690 } 691 m_acTEncTopList[ layerIdInVps ]->setProfileIdc( profileIdc ); 692 } 693 #endif 694 #endif 638 695 #if H_3D_VSO 639 696 if ( m_bUseVSO ) … … 742 799 { 743 800 #if H_3D 801 #if !HHI_CAM_PARA_K0052 744 802 for ( Int viewIndex = 0; viewIndex < m_vps->getNumViews(); viewIndex++ ) 745 803 { … … 747 805 m_cCameraData.getVaryingCameraParameters(), m_cCameraData.getCodedScale(), m_cCameraData.getCodedOffset() ); 748 806 } 807 #endif 749 808 #endif 750 809 … … 1329 1388 1330 1389 assert( m_iNumberOfViews == vps.getNumViews() ); 1390 1391 1392 #if HHI_INTER_COMP_PRED_K0052 1393 #if H_3D 1394 vps.initViewCompLayer( ); 1395 #endif 1396 #endif 1331 1397 } 1332 1398 … … 1346 1412 Bool defaultDirectDependencyFlag = false; 1347 1413 1414 #if H_3D_DIRECT_DEP_TYPE 1415 Int directDepTypeLenMinus2 = 0; 1416 #endif 1348 1417 for( Int depLayer = 1; depLayer < m_numberOfLayers; depLayer++ ) 1349 1418 { … … 1355 1424 vps.setDirectDependencyFlag( depLayer, refLayer, true); 1356 1425 Int curDirectDependencyType = m_dependencyTypes[depLayer][i]; 1357 1426 #if H_3D_DIRECT_DEP_TYPE 1427 directDepTypeLenMinus2 = std::max( directDepTypeLenMinus2, gCeilLog2( curDirectDependencyType + 1 ) - 2 ); 1428 #endif 1358 1429 if ( defaultDirectDependencyType != -1 ) 1359 1430 { … … 1372 1443 vps.setDefaultDirectDependencyFlag( defaultDirectDependencyFlag ); 1373 1444 vps.setDefaultDirectDependencyType( defaultDirectDependencyFlag ? defaultDirectDependencyType : -1 ); 1445 1446 #if H_3D_DIRECT_DEP_TYPE 1447 assert( directDepTypeLenMinus2 <= 1 ); 1448 vps.setDirectDepTypeLenMinus2( directDepTypeLenMinus2 ); 1449 #endif 1450 1374 1451 1375 1452 vps.setRefLayers(); … … 1418 1495 #endif 1419 1496 { 1497 #if !HHI_INTER_COMP_PRED_K0052 1420 1498 Bool refAlwaysIntra = ( i == getGOPSize() ) && ( m_iIntraPeriod[ curLayerIdInVps ] % m_iIntraPeriod[ refLayerIdInVps ] == 0 ); 1499 #endif 1421 1500 Bool refLayerZero = ( i == getGOPSize() ) && ( refLayerIdInVps == 0 ); 1501 #if HHI_INTER_COMP_PRED_K0052 1502 // 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 maxTid = std::max( maxTid, refLayerZero ? 0 : geRef.m_temporalId ); 1505 #else 1422 1506 maxTid = std::max( maxTid, ( refAlwaysIntra || refLayerZero ) ? 0 : geRef.m_temporalId ); 1507 #endif 1423 1508 } 1424 1509 } … … 1428 1513 else 1429 1514 { 1515 #if HHI_INTER_COMP_PRED_K0052 1516 if( m_depthFlag[ curLayerIdInVps ] && ( m_mpiFlag|| m_qtPredFlag || m_intraContourFlag ) ) 1517 { 1518 Int nuhLayerIdTex = vps.getLayerIdInNuh( vps.getViewIndex( curLayerIdInNuh ), false ); 1519 if ( nuhLayerIdTex == refLayerIdInNuh ) 1520 { 1521 for( Int i = 0; i < ( getGOPSize() + 1); i++ ) 1522 { 1523 GOPEntry geCur = m_GOPListMvc[curLayerIdInVps][( i < getGOPSize() ? i : MAX_GOP )]; 1524 GOPEntry geRef = m_GOPListMvc[refLayerIdInVps][( i < getGOPSize() ? i : MAX_GOP )]; 1525 if ( geCur.m_interCompPredFlag ) 1526 { 1527 Bool refLayerZero = ( i == getGOPSize() ) && ( refLayerIdInVps == 0 ); 1528 maxTid = std::max( maxTid, refLayerZero ? 0 : geRef.m_temporalId ); 1529 } 1530 } 1531 } 1532 } 1533 if( !m_depthFlag[ curLayerIdInVps ] && vps.getNumRefListLayers( curLayerIdInNuh) > 0 && ( m_depthRefinementFlag || m_viewSynthesisPredFlag || m_depthBasedBlkPartFlag ) ) 1534 { 1535 for( Int i = 0; i < ( getGOPSize() + 1); i++ ) 1536 { 1537 GOPEntry geCur = m_GOPListMvc[curLayerIdInVps][( i < getGOPSize() ? i : MAX_GOP )]; 1538 GOPEntry geRef = m_GOPListMvc[refLayerIdInVps][( i < getGOPSize() ? i : MAX_GOP )]; 1539 1540 if ( geCur.m_interCompPredFlag ) 1541 { 1542 for (Int j = 0; j < geCur.m_numActiveRefLayerPics; j++ ) 1543 { 1544 Int nuhLayerIdDep = vps.getLayerIdInNuh( vps.getViewIndex( vps.getIdRefListLayer( curLayerIdInNuh, geCur.m_interLayerPredLayerIdc[j] ) ), true ); 1545 if ( nuhLayerIdDep == refLayerIdInNuh ) 1546 { 1547 Bool refLayerZero = ( i == getGOPSize() ) && ( refLayerIdInVps == 0 ); 1548 maxTid = std::max( maxTid, refLayerZero ? 0 : geRef.m_temporalId ); 1549 } 1550 } 1551 } 1552 } 1553 } 1554 #else 1430 1555 if( m_depthFlag[ curLayerIdInVps ] && ( m_mpiFlag|| m_qtPredFlag || m_intraContourFlag ) ) 1431 1556 { … … 1458 1583 } 1459 1584 } 1585 #endif 1460 1586 } 1461 } 1587 } // if ( vps.getDirectDependencyFlag( curLayerIdInVps, refLayerIdInVps ) ) 1462 1588 vps.setMaxTidIlRefPicsPlus1( refLayerIdInVps, curLayerIdInVps, maxTid + 1 ); 1463 1589 #endif 1464 } 1465 } 1590 } // Loop curLayerIdInVps 1591 } // Loop refLayerIdInVps 1466 1592 1467 1593 // Max temporal id for inter layer reference pictures presence flag … … 1673 1799 Void TAppEncTop::xSetRepFormat( TComVPS& vps ) 1674 1800 { 1801 1802 #if H_3D_DISABLE_CHROMA 1803 Bool anyDepth = false; 1804 for ( Int i = 0; i < m_numberOfLayers; i++ ) 1805 { 1806 vps.setVpsRepFormatIdx( i, m_depthFlag[ i ] ? 1 : 0 ); 1807 anyDepth = anyDepth || m_depthFlag[ i ]; 1808 } 1809 1810 vps.setRepFormatIdxPresentFlag( anyDepth ); 1811 vps.setVpsNumRepFormatsMinus1 ( anyDepth ? 1 : 0 ); 1812 1813 for ( Int j = 0; j <= vps.getVpsNumRepFormatsMinus1(); j++ ) 1814 { 1815 TComRepFormat* repFormat = new TComRepFormat; 1816 1817 repFormat->setBitDepthVpsChromaMinus8 ( g_bitDepthC - 8 ); 1818 repFormat->setBitDepthVpsLumaMinus8 ( g_bitDepthY - 8 ); 1819 repFormat->setChromaFormatVpsIdc ( j == 1 ? CHROMA_400 : CHROMA_420 ); 1820 repFormat->setPicHeightVpsInLumaSamples ( m_iSourceHeight ); 1821 repFormat->setPicWidthVpsInLumaSamples ( m_iSourceWidth ); 1822 repFormat->setChromaAndBitDepthVpsPresentFlag( true ); 1823 // ToDo not supported yet. 1824 //repFormat->setSeparateColourPlaneVpsFlag( ); 1825 #if H_MV_FIX_CONF_WINDOW 1826 Bool conformanceWindowVpsFlag = ( m_confWinBottom != 0 ) || ( m_confWinRight != 0 ) || ( m_confWinTop != 0 ) || ( m_confWinBottom != 0 ); 1827 repFormat->setConformanceWindowVpsFlag( conformanceWindowVpsFlag ); 1828 if ( conformanceWindowVpsFlag ) 1829 { 1830 repFormat->setConfWinVpsLeftOffset ( m_confWinLeft / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) ); 1831 repFormat->setConfWinVpsRightOffset ( m_confWinRight / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) ); 1832 repFormat->setConfWinVpsTopOffset ( m_confWinTop / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) ); 1833 repFormat->setConfWinVpsBottomOffset ( m_confWinBottom / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) ); 1834 } 1835 #else 1836 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 #endif 1842 assert( vps.getRepFormat( j ) == NULL ); 1843 vps.setRepFormat( j , repFormat ); 1844 }; 1845 1846 1847 #else 1675 1848 vps.setRepFormatIdxPresentFlag( false ); 1676 1849 vps.setVpsNumRepFormatsMinus1 ( 0 ); … … 1701 1874 assert( vps.getRepFormat( 0 ) == NULL ); 1702 1875 vps.setRepFormat( 0 , repFormat ); 1876 #endif 1703 1877 } 1704 1878 … … 2075 2249 } 2076 2250 } 2251 2252 #if HHI_CAM_PARA_K0052 2253 #if H_3D 2254 Void TAppEncTop::xSetCamPara ( TComVPS& vps ) 2255 { 2256 vps.setCpPrecision( m_cCameraData.getCamParsCodedPrecision()); 2257 2258 for ( Int n = 1; n < vps.getNumViews(); n++ ) 2259 { 2260 Int i = vps.getViewOIdxList( n ); 2261 Int iInVps = vps.getVoiInVps ( i ); 2262 vps.setNumCp( iInVps, n); 2263 2264 if ( vps.getNumCp( iInVps ) > 0 ) 2265 { 2266 vps.setCpInSliceSegmentHeaderFlag( iInVps, m_cCameraData.getVaryingCameraParameters() ); 2267 2268 for( Int m = 0; m < vps.getNumCp( iInVps ); m++ ) 2269 { 2270 vps.setCpRefVoi( iInVps, m, vps.getViewOIdxList( m ) ); 2271 if( !vps.getCpInSliceSegmentHeaderFlag( iInVps ) ) 2272 { 2273 Int j = vps.getCpRefVoi( iInVps, m ); 2274 Int jInVps = vps.getVoiInVps( j ); 2275 2276 vps.setVpsCpScale ( iInVps, jInVps, m_cCameraData.getCodedScale() [ jInVps ][ iInVps ] ) ; 2277 vps.setVpsCpInvScale( iInVps, jInVps, m_cCameraData.getCodedScale() [ iInVps ][ jInVps ] ) ; 2278 vps.setVpsCpOff ( iInVps, jInVps, m_cCameraData.getCodedOffset()[ jInVps ][ iInVps ] ) ; 2279 vps.setVpsCpInvOff ( iInVps, jInVps, m_cCameraData.getCodedOffset()[ iInVps ][ jInVps ] ) ; 2280 } 2281 } 2282 } 2283 } 2284 vps.deriveCpPresentFlag(); 2285 } 2286 #endif 2287 #endif 2288 2289 2077 2290 Bool TAppEncTop::xLayerIdInTargetEncLayerIdList(Int nuhLayerId) 2078 2291 { -
trunk/source/App/TAppEncoder/TAppEncTop.h
r1133 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 142 142 Void xSetDpbSize ( TComVPS& vps ); 143 143 Void xSetVPSVUI ( TComVPS& vps ); 144 #if HHI_CAM_PARA_K0052 145 #if H_3D 146 Void xSetCamPara ( TComVPS& vps ); 147 #endif 148 #endif 144 149 GOPEntry* xGetGopEntry( Int layerIdInVps, Int poc ); 145 150 Int xGetMax( std::vector<Int>& vec); -
trunk/source/App/TAppEncoder/encmain.cpp
r872 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 4, ITU/ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppExtractor/TAppExtrCfg.cpp
r56 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppExtractor/TAppExtrCfg.h
r42 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppExtractor/TAppExtrTop.cpp
r608 r1179 4 4 // * granted under this license. 5 5 // * 6 // * Copyright (c) 2010-201 1,ISO/IEC6 // * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 // * All rights reserved. 8 8 // * -
trunk/source/App/TAppExtractor/TAppExtrTop.h
r608 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppExtractor/extrmain.cpp
r608 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppRenderer/RendererMain.cpp
r608 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppRenderer/TAppRendererCfg.cpp
r608 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppRenderer/TAppRendererCfg.h
r608 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppRenderer/TAppRendererTop.cpp
r608 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * -
trunk/source/App/TAppRenderer/TAppRendererTop.h
r608 r1179 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 1,ISO/IEC6 * Copyright (c) 2010-2015, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 *
Note: See TracChangeset for help on using the changeset viewer.