Changeset 976 in 3DVCSoftware for trunk/source/App/TAppEncoder
- Timestamp:
- 7 Jul 2014, 17:27:51 (11 years ago)
- Location:
- trunk/source/App/TAppEncoder
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/App/TAppEncoder/TAppEncCfg.cpp
r964 r976 393 393 ("LayerIdsInAddOutputLayerSet_%d", m_layerIdsInAddOutputLayerSet , std::vector<Int>(0,0), MAX_VPS_ADD_OUTPUT_LAYER_SETS, "Indices in VPS of output layers in additional output layer set") 394 394 ("LayerIdsInDefOutputLayerSet_%d", m_layerIdsInDefOutputLayerSet , std::vector<Int>(0,0), MAX_VPS_OP_SETS_PLUS1, "Indices in VPS of output layers in layer set") 395 #if H_MV_HLS_7_VPS_P0300_27396 395 ("AltOutputLayerFlag", m_altOutputLayerFlag , std::vector<Bool>(1,0), "Alt output layer flag") 397 #endif398 396 ("ProfileLevelTierIdx", m_profileLevelTierIdx, std::vector<Int>(1,0), "Indices to profile level tier") 399 397 … … 523 521 #if H_3D_IC 524 522 ("IlluCompEnable", m_abUseIC, true, "Enable illumination compensation") 525 #if MTK_LOW_LATENCY_IC_ENCODING_H0086526 523 ("IlluCompLowLatencyEnc", m_bUseLowLatencyICEnc, false, "Enable low-latency illumination compensation encoding") 527 #endif528 524 #endif 529 525 #if H_3D_INTER_SDC … … 1058 1054 xResizeVector( m_wppInUseFlag ); 1059 1055 1060 #if H_MV_HLS_7_VPS_P0300_271061 1056 for (Int olsIdx = 0; olsIdx < m_vpsNumLayerSets + (Int) m_outputLayerSetIdx.size(); olsIdx++) 1062 1057 { 1063 1058 m_altOutputLayerFlag.push_back( false ); 1064 1059 } 1065 #endif1066 1060 #else 1067 1061 m_aidQP = new Int[ m_framesToBeEncoded + m_iGOPSize + 1 ]; … … 1465 1459 } 1466 1460 1467 #if H_MV_HLS_7_VPS_P0300_271468 1461 xConfirmPara( m_altOutputLayerFlag.size() < m_vpsNumLayerSets + m_outputLayerSetIdx.size(), "The number of Profile Level Tier indices must be equal to the number of layer set plus the number of output layer set indices" ); 1469 #endif1470 1462 xConfirmPara( m_profileLevelTierIdx.size() < m_vpsNumLayerSets + m_outputLayerSetIdx.size(), "The number of Profile Level Tier indices must be equal to the number of layer set plus the number of output layer set indices" ); 1471 1463 … … 2515 2507 #if H_3D_IC 2516 2508 printf( "IlluCompEnable:%d ", m_abUseIC); 2517 #if MTK_LOW_LATENCY_IC_ENCODING_H00862518 2509 printf ("IlluCompLowLatencyEnc:%d ", m_bUseLowLatencyICEnc); 2519 #endif2520 2510 #endif 2521 2511 #if H_3D_NBDV_REF -
trunk/source/App/TAppEncoder/TAppEncCfg.h
r964 r976 94 94 std::vector< std::vector<Int> > m_layerIdsInDefOutputLayerSet; ///< Indices in vps of output layers in layer sets 95 95 std::vector<Int> m_profileLevelTierIdx; ///< Indices of of profile level tier 96 #if H_MV_HLS_7_VPS_P0300_2797 96 std::vector<Bool> m_altOutputLayerFlag; ///< Alt output layer flag 98 #endif99 97 100 98 // Dependencies … … 140 138 #if H_3D_IC 141 139 Bool m_abUseIC; 142 #if MTK_LOW_LATENCY_IC_ENCODING_H0086 143 Bool m_bUseLowLatencyICEnc; 144 #endif 140 Bool m_bUseLowLatencyICEnc; 145 141 #endif 146 142 #if H_3D_NBDV_REF -
trunk/source/App/TAppEncoder/TAppEncTop.cpp
r964 r976 58 58 { 59 59 60 #if H_MV _HLS_860 #if H_MV 61 61 m_vps = new TComVPS; 62 #endif 63 #if !H_MV 62 #else 64 63 m_iFrameRcvd = 0; 65 64 #endif … … 70 69 TAppEncTop::~TAppEncTop() 71 70 { 72 #if H_MV _HLS_871 #if H_MV 73 72 if (m_vps) 74 73 { … … 82 81 { 83 82 #if H_MV 84 #if H_MV_HLS_885 83 TComVPS& vps = (*m_vps); 86 #else87 TComVPS& vps = m_vps;88 #endif89 84 #else 90 85 TComVPS vps; … … 193 188 m_cTEncTop.setDWeight ( isDepth ? m_iDWeight : 0 ); 194 189 #endif // H_3D_VSO 195 #if H_3D_ARP && !QC_IV_PRED_CONSTRAINT_H0137196 //====== Advanced Inter-view Residual Prediction =========197 m_cTEncTop.setUseAdvRP ( ( isDepth || 0==layerIdInVps ) ? 0 : m_uiUseAdvResPred );198 m_cTEncTop.setARPStepNum ( ( isDepth || 0==layerIdInVps ) ? 1 : H_3D_ARP_WFNR );199 #endif200 190 #if H_3D_SPIVMP 201 191 m_cTEncTop.setSubPULog2Size (( isDepth || 0==layerIdInVps ) ? 0 : m_iSubPULog2Size ); … … 204 194 #if H_3D_IC 205 195 m_cTEncTop.setUseIC ( vps.getViewIndex( layerId ) == 0 || isDepth ? false : m_abUseIC ); 206 #if MTK_LOW_LATENCY_IC_ENCODING_H0086207 196 m_cTEncTop.setUseICLowLatencyEnc ( m_bUseLowLatencyICEnc ); 208 #endif209 197 #endif 210 198 //========== Depth intra modes ========== … … 708 696 { 709 697 #if H_3D 710 #if H_MV_HLS_8711 698 for ( Int viewIndex = 0; viewIndex < m_vps->getNumViews(); viewIndex++ ) 712 699 { 713 700 m_vps->initCamParaVPS( viewIndex, true, m_cCameraData.getCamParsCodedPrecision(), 714 701 m_cCameraData.getVaryingCameraParameters(), m_cCameraData.getCodedScale(), m_cCameraData.getCodedOffset() ); 715 #else716 for ( Int viewIndex = 0; viewIndex < m_vps.getNumViews(); viewIndex++ )717 {718 m_vps.initCamParaVPS( viewIndex, true, m_cCameraData.getCamParsCodedPrecision(),719 m_cCameraData.getVaryingCameraParameters(), m_cCameraData.getCodedScale(), m_cCameraData.getCodedOffset() );720 #endif721 702 } 722 703 #endif … … 1299 1280 1300 1281 Int defaultDirectDependencyType = -1; 1301 #if MV_FIX_DEP_TYPES1302 1282 Bool defaultDirectDependencyFlag = false; 1303 #else1304 Bool defaultDirectDependencyFlag = true;1305 #endif1306 1283 1307 1284 for( Int depLayer = 1; depLayer < m_numberOfLayers; depLayer++ ) … … 1322 1299 { 1323 1300 defaultDirectDependencyType = curDirectDependencyType; 1324 #if MV_FIX_DEP_TYPES1325 1301 defaultDirectDependencyFlag = true; 1326 #endif1327 1302 } 1328 1303 … … 1514 1489 Void TAppEncTop::xSetRepFormat( TComVPS& vps ) 1515 1490 { 1516 #if H_MV_HLS_8_PMS_Q0195_201517 1491 vps.setRepFormatIdxPresentFlag( false ); 1518 #else1519 vps.setRepFormatIdxPresentFlag( true );1520 #endif1521 1492 vps.setVpsNumRepFormatsMinus1 ( 0 ); 1522 1493 … … 1534 1505 assert( vps.getRepFormat( 0 ) == NULL ); 1535 1506 vps.setRepFormat( 0 , repFormat ); 1536 1537 #if !H_MV_HLS_8_PMS_Q0195_201538 for(Int i = 0; i <= vps.getMaxLayersMinus1(); i++ )1539 {1540 vps.setVpsRepFormatIdx( i , 0 );1541 }1542 #endif1543 1507 } 1544 1508 … … 1551 1515 assert ( dpbSize != 0 ); 1552 1516 1553 #if H_MV_HLS_8_HRD_Q0102_081554 1517 for( Int i = 0; i < vps.getNumOutputLayerSets(); i++ ) 1555 #else1556 for( Int i = 1; i < vps.getNumOutputLayerSets(); i++ )1557 #endif1558 1518 { 1559 #if H_MV_HLS_8_MIS_Q0102_301560 1519 Int currLsIdx = vps.olsIdxToLsIdx( i ); 1561 #endif1562 1520 std::vector<Int> targetDecLayerIdList = vps.getTargetDecLayerIdList( i ); 1563 1521 Bool subLayerFlagInfoPresentFlag = false; 1564 1522 1565 #if H_MV_HLS_8_MIS_Q0102_301566 1523 for( Int j = 0; j <= vps.getMaxSubLayersInLayerSetMinus1( currLsIdx ); j++ ) 1567 #else1568 for( Int j = 0; j <= vps.getMaxSubLayersInLayerSetMinus1( i ); j++ )1569 #endif1570 1524 { 1571 1525 Bool subLayerDpbInfoPresentFlag = false; 1572 #if H_MV_HLS_8_MIS_Q0102_30 || H_MV_HLS_8_DBP_NODOC_421573 1526 assert( vps.getNumLayersInIdList( currLsIdx ) == targetDecLayerIdList.size() ); 1574 1527 for( Int k = 0; k < vps.getNumLayersInIdList( currLsIdx ); k++ ) 1575 #else1576 assert( vps.getNumSubDpbs( vps.olsIdxToLsIdx( i ) ) == targetDecLayerIdList.size() );1577 for( Int k = 0; k < vps.getNumSubDpbs( vps.olsIdxToLsIdx( i )); k++ )1578 #endif1579 1528 { 1580 1529 Int layerIdInVps = vps.getLayerIdInVps( targetDecLayerIdList[k] ); 1581 #if H_MV_HLS7_GEN1582 // TBD. Some derivation based on output layer set might be added here.1583 #endif1584 1530 dpbSize->setMaxVpsDecPicBufferingMinus1( i, k, j, m_maxDecPicBufferingMvc[ layerIdInVps ][ j ] - 1 ); 1585 1531 if ( j > 0 ) … … 1642 1588 // Additional output layer sets + profileLevelTierIdx 1643 1589 vps.setDefaultOutputLayerIdc ( m_defaultOutputLayerIdc ); 1644 #if H_MV_HLS_8_SYN_39_191645 1590 vps.setNumAddLayerSets ( 0 ); 1646 1591 vps.setNumAddOlss ( numAddOuputLayerSets ); 1647 #else1648 vps.setNumAddLayerSets ( numAddOuputLayerSets );1649 #endif1650 1592 vps.initTargetLayerIdLists(); 1651 1593 … … 1696 1638 vps.setProfileLevelTierIdx( olsIdx, m_profileLevelTierIdx[ olsIdx ] ); 1697 1639 } 1698 #if H_MV_HLS_7_VPS_P0300_27 1640 1699 1641 if ( vps.getNumOutputLayersInOutputLayerSet( olsIdx ) == 1 && 1700 1642 vps.getNumDirectRefLayers( vps.getOlsHighestOutputLayerId( olsIdx ) ) ) … … 1710 1652 } 1711 1653 } 1712 #else1713 vps.setAltOutputLayerFlag( olsIdx , false);1714 #endif1715 1654 } 1716 1655 } … … 1869 1808 1870 1809 #if H_3D_ARP 1871 #if QC_IV_PRED_CONSTRAINT_H01371872 1810 vps.setUseAdvRP ( layer, ( isDepth || isLayerZero || !vps.getNumDirectRefLayers(layer) ) ? 0 : m_uiUseAdvResPred ); 1873 1811 vps.setARPStepNum ( layer, ( isDepth || isLayerZero || !vps.getNumDirectRefLayers(layer) ) ? 1 : H_3D_ARP_WFNR ); 1874 #else1875 vps.setUseAdvRP ( layer, ( isDepth || isLayerZero ) ? 0 : m_uiUseAdvResPred );1876 vps.setARPStepNum ( layer, ( isDepth || isLayerZero ) ? 1 : H_3D_ARP_WFNR );1877 #endif1878 1812 #endif 1879 1813 #if H_3D_SPIVMP … … 1893 1827 1894 1828 #if H_3D_IV_MERGE 1895 #if QC_IV_PRED_CONSTRAINT_H01371896 1829 if( !vps.getNumDirectRefLayers(layer) ) 1897 1830 { … … 1900 1833 else 1901 1834 { 1902 #endif 1903 if( isDepth ) 1904 { 1905 vps.setIvMvPredFlag ( layer, (layer != 1) && m_ivMvPredFlag[1] ); 1906 } 1907 else 1908 { 1909 vps.setIvMvPredFlag ( layer, !isLayerZero && m_ivMvPredFlag[0] ); 1910 } 1911 #if QC_IV_PRED_CONSTRAINT_H0137 1912 } 1913 #endif 1835 if( isDepth ) 1836 { 1837 vps.setIvMvPredFlag ( layer, (layer != 1) && m_ivMvPredFlag[1] ); 1838 } 1839 else 1840 { 1841 vps.setIvMvPredFlag ( layer, !isLayerZero && m_ivMvPredFlag[0] ); 1842 } 1843 } 1914 1844 #endif 1915 1845 #if H_3D_NBDV_REF … … 1917 1847 #endif 1918 1848 #if H_3D_VSP 1919 #if QC_IV_PRED_CONSTRAINT_H01371920 1849 vps.setViewSynthesisPredFlag( layer, !isLayerZero && !isDepth && vps.getNumDirectRefLayers(layer) && m_viewSynthesisPredFlag ); 1921 #else1922 vps.setViewSynthesisPredFlag( layer, !isLayerZero && !isDepth && m_viewSynthesisPredFlag );1923 #endif1924 1850 #endif 1925 1851 #if H_3D_DBBP -
trunk/source/App/TAppEncoder/TAppEncTop.h
r964 r976 75 75 76 76 TComPicLists m_ivPicLists; ///< picture buffers of encoder instances 77 #if H_MV _HLS_877 #if H_MV 78 78 TComVPS* m_vps; ///< vps 79 79 #else
Note: See TracChangeset for help on using the changeset viewer.