Changeset 1100 in SHVCSoftware for branches/SHM-dev/source/App/TAppDecoder
- Timestamp:
- 6 Jul 2015, 20:20:51 (10 years ago)
- Location:
- branches/SHM-dev/source/App/TAppDecoder
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/App/TAppDecoder/TAppDecTop.cpp
r1089 r1100 1387 1387 pic->getPicYuvRec()->setBorderExtension( false ); 1388 1388 1389 #if RESOLUTION_BASED_DPB1390 dpbStatus.m_numPicsInLayer[layerIdx]--;1391 #endif1392 1389 #if FIX_ALIGN_BUMPING 1393 1390 dpbStatus.m_numPicsInSubDpb[dpbStatus.m_layerIdToSubDpbIdMap[layerId]]--; … … 1532 1529 // Find DPB-information from the VPS 1533 1530 DpbStatus maxDpbLimit; 1534 #if RESOLUTION_BASED_DPB1535 Int targetLsIdx, subDpbIdx;1536 TComVPS *vps = findDpbParametersFromVps(listOfPocs, listOfPocsInEachLayer, listOfPocsPositionInEachLayer, maxDpbLimit);1537 1538 if( getCommonDecoderParams()->getTargetOutputLayerSetIdx() == 0 )1539 {1540 targetLsIdx = 0;1541 subDpbIdx = 0;1542 }1543 else1544 {1545 targetLsIdx = vps->getOutputLayerSetIdx( getCommonDecoderParams()->getTargetOutputLayerSetIdx() );1546 subDpbIdx = vps->getSubDpbAssigned( targetLsIdx, layerIdx );1547 }1548 #else1549 1531 #if FIX_ALIGN_BUMPING 1550 1532 Int subDpbIdx = getCommonDecoderParams()->getTargetOutputLayerSetIdx() == 0 … … 1555 1537 #endif 1556 1538 findDpbParametersFromVps(listOfPocs, listOfPocsInEachLayer, listOfPocsPositionInEachLayer, maxDpbLimit); 1557 #endif1558 1539 // Assume that listOfPocs is sorted in increasing order - if not have to sort it. 1559 1540 while( ifInvokeBumpingBeforeDecoding(dpbStatus, maxDpbLimit, layerIdx, subDpbIdx) ) … … 1747 1728 maxDpbLimit.m_maxLatencyPictures = sps->getMaxLatencyIncrease( highestTId ) + sps->getNumReorderPics( highestTId ) - 1; 1748 1729 } 1749 #if RESOLUTION_BASED_DPB1750 maxDpbLimit.m_numPicsInLayer[0] = sps->getMaxDecPicBuffering( highestTId );1751 #endif1752 1730 maxDpbLimit.m_numPicsInSubDpb[0] = sps->getMaxDecPicBuffering( highestTId ); 1753 1731 } … … 1838 1816 // Number of pictures in each sub-DPB 1839 1817 retVal |= ( dpbStatus.m_numPicsInSubDpb[subDpbIdx] >= dpbLimit.m_numPicsInSubDpb[subDpbIdx] ); 1840 1841 #if RESOLUTION_BASED_DPB1842 // Number of pictures in each layer1843 retVal |= ( dpbStatus.m_numPicsInLayer[layerIdx] >= dpbLimit.m_numPicsInLayer[layerIdx]);1844 #endif1845 1818 1846 1819 return retVal; … … 1909 1882 if( pic->getSlice(0)->isReferenced() || pic->getOutputMark() ) 1910 1883 { 1911 #if RESOLUTION_BASED_DPB1912 dpbStatus.m_numPicsInLayer[i]++; // Count pictures that are "used for reference" or "needed for output"1913 #else1914 1884 dpbStatus.m_numPicsInSubDpb[i]++; // Count pictures that are "used for reference" or "needed for output" 1915 #endif1916 1885 } 1917 1886 #if POC_RESET_IDC_DECODER … … 1949 1918 { 1950 1919 dpbStatus.m_numPicsNotDisplayedInLayer[i] = (Int)listOfPocsInEachLayer[i].size(); 1951 #if RESOLUTION_BASED_DPB1952 dpbStatus.m_numPicsInSubDpb[vps->getSubDpbAssigned(targetLsIdx,i)] += dpbStatus.m_numPicsInLayer[i];1953 dpbStatus.m_numPicsInSubDpb[i] += dpbStatus.m_numPicsInLayer[i];1954 #endif1955 1920 } 1956 1921 assert( dpbStatus.m_numAUsNotDisplayed != -1 ); -
branches/SHM-dev/source/App/TAppDecoder/TAppDecTop.h
r1066 r1100 139 139 Int m_numAUsNotDisplayed; 140 140 Int m_numPicsNotDisplayedInLayer[MAX_LAYERS]; 141 #if RESOLUTION_BASED_DPB142 Int m_numPicsInLayer[MAX_LAYERS]; // Pictures marked as used_for_reference or needed for output in the layer143 #endif144 141 Int m_numPicsInSubDpb[MAX_LAYERS]; // Pictures marked as used_for_reference or needed for output in the sub-DPB 145 142 #if FIX_ALIGN_BUMPING … … 162 159 m_maxLatencyIncrease = false; 163 160 m_maxLatencyPictures = 0; 164 #if RESOLUTION_BASED_DPB165 ::memset( m_numPicsInLayer, 0, sizeof(m_numPicsInLayer) );166 #endif167 161 ::memset( m_numPicsInSubDpb, 0, sizeof(m_numPicsInSubDpb) ); 168 162 ::memset(m_numPicsNotDisplayedInLayer, 0, sizeof(m_numPicsNotDisplayedInLayer) );
Note: See TracChangeset for help on using the changeset viewer.