Changeset 1307 in SHVCSoftware for branches/SHM-dev/source/Lib/TLibEncoder
- Timestamp:
- 21 Jul 2015, 01:21:46 (10 years ago)
- Location:
- branches/SHM-dev/source/Lib/TLibEncoder
- Files:
-
- 23 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/Lib/TLibEncoder/SEIEncoder.cpp
r1303 r1307 225 225 sopDescriptionSEI->m_sopDescVclNaluType[i] = m_pcEncGOP->getNalUnitType(sopCurrPOC, lastIdr, slice->getPic()->isField()); 226 226 sopDescriptionSEI->m_sopDescTemporalId[i] = m_pcCfg->getGOPEntry(j).m_temporalId; 227 sopDescriptionSEI->m_sopDescStRpsIdx[i] = m_pcEncTop->getReferencePictureSetIdxForSOP(s lice, sopCurrPOC, j);227 sopDescriptionSEI->m_sopDescStRpsIdx[i] = m_pcEncTop->getReferencePictureSetIdxForSOP(sopCurrPOC, j); 228 228 sopDescriptionSEI->m_sopDescPocDelta[i] = deltaPOC; 229 229 … … 416 416 } 417 417 418 Void SEIEncoder::initSEIChromaSamplingFilterHint(SEIChromaSamplingFilterHint *seiChromaSamplingFilterHint, Bool bChromaLocInfoPresent,Int iHorFilterIndex, Int iVerFilterIndex)418 Void SEIEncoder::initSEIChromaSamplingFilterHint(SEIChromaSamplingFilterHint *seiChromaSamplingFilterHint, Int iHorFilterIndex, Int iVerFilterIndex) 419 419 { 420 420 assert (m_isInitialized); -
branches/SHM-dev/source/Lib/TLibEncoder/SEIEncoder.h
r1287 r1307 79 79 Void initSEITempMotionConstrainedTileSets (SEITempMotionConstrainedTileSets *sei, const TComPPS *pps); 80 80 Void initSEIKneeFunctionInfo(SEIKneeFunctionInfo *sei); 81 Void initSEIChromaSamplingFilterHint(SEIChromaSamplingFilterHint *sei, Bool bChromaLocInfoPresent,Int iHorFilterIndex, Int iVerFilterIndex);81 Void initSEIChromaSamplingFilterHint(SEIChromaSamplingFilterHint *sei, Int iHorFilterIndex, Int iVerFilterIndex); 82 82 Void initSEITimeCode(SEITimeCode *sei); 83 83 -
branches/SHM-dev/source/Lib/TLibEncoder/SEIwrite.cpp
r1273 r1307 142 142 break; 143 143 case SEI::TEMP_MOTION_CONSTRAINED_TILE_SETS: 144 xWriteSEITempMotionConstrainedTileSets( bs,*static_cast<const SEITempMotionConstrainedTileSets*>(&sei));144 xWriteSEITempMotionConstrainedTileSets(*static_cast<const SEITempMotionConstrainedTileSets*>(&sei)); 145 145 break; 146 146 case SEI::TIME_CODE: … … 729 729 } 730 730 731 Void SEIWriter::xWriteSEINoDisplay(const SEINoDisplay &sei)731 Void SEIWriter::xWriteSEINoDisplay(const SEINoDisplay& /*sei*/) 732 732 { 733 733 } … … 798 798 } 799 799 800 Void SEIWriter::xWriteSEITempMotionConstrainedTileSets( TComBitIf& bs,const SEITempMotionConstrainedTileSets& sei)800 Void SEIWriter::xWriteSEITempMotionConstrainedTileSets(const SEITempMotionConstrainedTileSets& sei) 801 801 { 802 802 //UInt code; -
branches/SHM-dev/source/Lib/TLibEncoder/SEIwrite.h
r1273 r1307 89 89 Void xWriteSEIScalableNesting(TComBitIf& bs, const SEIScalableNesting& sei, const TComSPS *sps); 90 90 #endif 91 Void xWriteSEITempMotionConstrainedTileSets( TComBitIf& bs,const SEITempMotionConstrainedTileSets& sei);91 Void xWriteSEITempMotionConstrainedTileSets(const SEITempMotionConstrainedTileSets& sei); 92 92 Void xWriteSEITimeCode(const SEITimeCode& sei); 93 93 Void xWriteSEIChromaSamplingFilterHint(const SEIChromaSamplingFilterHint& sei/*, TComSPS *sps*/); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp
r1259 r1307 106 106 * \param binValue bin value 107 107 */ 108 Void TEncBinCABACCounter::encodeBinEP( UInt binValue)108 Void TEncBinCABACCounter::encodeBinEP( UInt /*binValue*/ ) 109 109 { 110 110 m_uiBinsCoded += m_binCountIncrement; … … 118 118 * \param numBins number of bins 119 119 */ 120 Void TEncBinCABACCounter::encodeBinsEP( UInt binValues, Int numBins )120 Void TEncBinCABACCounter::encodeBinsEP( UInt /*binValues*/, Int numBins ) 121 121 { 122 122 m_uiBinsCoded += numBins & -m_binCountIncrement; -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.cpp
r1291 r1307 82 82 // ==================================================================================================================== 83 83 84 Void TEncCavlc::resetEntropy(const TComSlice *pSlice) 85 { 86 } 87 88 89 Void TEncCavlc::codeDFFlag(UInt uiCode, const Char *pSymbolName) 90 { 91 WRITE_FLAG(uiCode, pSymbolName); 92 } 93 Void TEncCavlc::codeDFSvlc(Int iCode, const Char *pSymbolName) 94 { 95 WRITE_SVLC(iCode, pSymbolName); 96 } 84 Void TEncCavlc::resetEntropy(const TComSlice* /*pSlice*/) 85 { 86 } 87 97 88 98 89 Void TEncCavlc::codeShortTermRefPicSet( const TComReferencePictureSet* rps, Bool calledFromSliceHeader, Int idx) … … 1496 1487 } 1497 1488 1498 Void TEncCavlc::codeTerminatingBit ( UInt uilsLast)1489 Void TEncCavlc::codeTerminatingBit ( UInt /*uilsLast*/ ) 1499 1490 { 1500 1491 } … … 1504 1495 } 1505 1496 1506 Void TEncCavlc::codeMVPIdx ( TComDataCU* pcCU, UInt uiAbsPartIdx, RefPicList eRefList)1497 Void TEncCavlc::codeMVPIdx ( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/, RefPicList /*eRefList*/ ) 1507 1498 { 1508 1499 assert(0); 1509 1500 } 1510 1501 1511 Void TEncCavlc::codePartSize( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth)1502 Void TEncCavlc::codePartSize( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/, UInt /*uiDepth*/ ) 1512 1503 { 1513 1504 assert(0); 1514 1505 } 1515 1506 1516 Void TEncCavlc::codePredMode( TComDataCU* pcCU, UInt uiAbsPartIdx)1507 Void TEncCavlc::codePredMode( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1517 1508 { 1518 1509 assert(0); 1519 1510 } 1520 1511 1521 Void TEncCavlc::codeMergeFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx)1512 Void TEncCavlc::codeMergeFlag ( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1522 1513 { 1523 1514 assert(0); 1524 1515 } 1525 1516 1526 Void TEncCavlc::codeMergeIndex ( TComDataCU* pcCU, UInt uiAbsPartIdx)1517 Void TEncCavlc::codeMergeIndex ( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1527 1518 { 1528 1519 assert(0); 1529 1520 } 1530 1521 1531 Void TEncCavlc::codeInterModeFlag( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth, UInt uiEncMode)1522 Void TEncCavlc::codeInterModeFlag( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/, UInt /*uiDepth*/, UInt /*uiEncMode*/ ) 1532 1523 { 1533 1524 assert(0); 1534 1525 } 1535 1526 1536 Void TEncCavlc::codeCUTransquantBypassFlag( TComDataCU* pcCU, UInt uiAbsPartIdx)1527 Void TEncCavlc::codeCUTransquantBypassFlag( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1537 1528 { 1538 1529 assert(0); 1539 1530 } 1540 1531 1541 Void TEncCavlc::codeSkipFlag( TComDataCU* pcCU, UInt uiAbsPartIdx)1532 Void TEncCavlc::codeSkipFlag( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1542 1533 { 1543 1534 assert(0); 1544 1535 } 1545 1536 1546 Void TEncCavlc::codeSplitFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth)1537 Void TEncCavlc::codeSplitFlag ( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/, UInt /*uiDepth*/ ) 1547 1538 { 1548 1539 assert(0); 1549 1540 } 1550 1541 1551 Void TEncCavlc::codeTransformSubdivFlag( UInt uiSymbol, UInt uiCtx)1542 Void TEncCavlc::codeTransformSubdivFlag( UInt /*uiSymbol*/, UInt /*uiCtx*/ ) 1552 1543 { 1553 1544 assert(0); 1554 1545 } 1555 1546 1556 Void TEncCavlc::codeQtCbf( TComTU &rTu, const ComponentID compID, const Bool lowestLevel)1547 Void TEncCavlc::codeQtCbf( TComTU& /*rTu*/, const ComponentID /*compID*/, const Bool /*lowestLevel*/ ) 1557 1548 { 1558 1549 assert(0); 1559 1550 } 1560 1551 1561 Void TEncCavlc::codeQtRootCbf( TComDataCU* pcCU, UInt uiAbsPartIdx)1552 Void TEncCavlc::codeQtRootCbf( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1562 1553 { 1563 1554 assert(0); 1564 1555 } 1565 1556 1566 Void TEncCavlc::codeQtCbfZero( TComTU &rTu, const ChannelType chType)1557 Void TEncCavlc::codeQtCbfZero( TComTU& /*rTu*/, const ChannelType /*chType*/ ) 1567 1558 { 1568 1559 assert(0); 1569 1560 } 1570 Void TEncCavlc::codeQtRootCbfZero( TComDataCU* pcCU)1561 Void TEncCavlc::codeQtRootCbfZero( ) 1571 1562 { 1572 1563 assert(0); 1573 1564 } 1574 1565 1575 Void TEncCavlc::codeTransformSkipFlags (TComTU &rTu, ComponentID component)1566 Void TEncCavlc::codeTransformSkipFlags (TComTU& /*rTu*/, ComponentID /*component*/ ) 1576 1567 { 1577 1568 assert(0); … … 1583 1574 * \returns Void 1584 1575 */ 1585 Void TEncCavlc::codeIPCMInfo( TComDataCU* pcCU, UInt uiAbsPartIdx)1576 Void TEncCavlc::codeIPCMInfo( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1586 1577 { 1587 1578 assert(0); 1588 1579 } 1589 1580 1590 Void TEncCavlc::codeIntraDirLumaAng( TComDataCU* pcCU, UInt uiAbsPartIdx, Bool isMultiple)1581 Void TEncCavlc::codeIntraDirLumaAng( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/, Bool /*isMultiple*/) 1591 1582 { 1592 1583 assert(0); 1593 1584 } 1594 1585 1595 Void TEncCavlc::codeIntraDirChroma( TComDataCU* pcCU, UInt uiAbsPartIdx)1586 Void TEncCavlc::codeIntraDirChroma( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1596 1587 { 1597 1588 assert(0); 1598 1589 } 1599 1590 1600 Void TEncCavlc::codeInterDir( TComDataCU* pcCU, UInt uiAbsPartIdx)1591 Void TEncCavlc::codeInterDir( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1601 1592 { 1602 1593 assert(0); 1603 1594 } 1604 1595 1605 Void TEncCavlc::codeRefFrmIdx( TComDataCU* pcCU, UInt uiAbsPartIdx, RefPicList eRefList)1596 Void TEncCavlc::codeRefFrmIdx( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/, RefPicList /*eRefList*/ ) 1606 1597 { 1607 1598 assert(0); 1608 1599 } 1609 1600 1610 Void TEncCavlc::codeMvd( TComDataCU* pcCU, UInt uiAbsPartIdx, RefPicList eRefList)1601 Void TEncCavlc::codeMvd( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/, RefPicList /*eRefList*/ ) 1611 1602 { 1612 1603 assert(0); … … 1634 1625 } 1635 1626 1636 Void TEncCavlc::codeChromaQpAdjustment( TComDataCU* pcCU, UInt uiAbsPartIdx)1627 Void TEncCavlc::codeChromaQpAdjustment( TComDataCU* /*pcCU*/, UInt /*uiAbsPartIdx*/ ) 1637 1628 { 1638 1629 assert(0); 1639 1630 } 1640 1631 1641 Void TEncCavlc::codeCoeffNxN ( TComTU &rTu, TCoeff* pcCoef, const ComponentID compID)1632 Void TEncCavlc::codeCoeffNxN ( TComTU& /*rTu*/, TCoeff* /*pcCoef*/, const ComponentID /*compID*/ ) 1642 1633 { 1643 1634 assert(0); 1644 1635 } 1645 1636 1646 Void TEncCavlc::estBit( estBitsSbacStruct* pcEstBitsCabac, Int width, Int height, ChannelType chType)1637 Void TEncCavlc::estBit( estBitsSbacStruct* /*pcEstBitsCabac*/, Int /*width*/, Int /*height*/, ChannelType /*chType*/ ) 1647 1638 { 1648 1639 // printf("error : no VLC mode support in this version\n"); … … 1822 1813 } 1823 1814 1824 Void TEncCavlc::codeExplicitRdpcmMode( TComTU &rTu, const ComponentID compID)1815 Void TEncCavlc::codeExplicitRdpcmMode( TComTU& /*rTu*/, const ComponentID /*compID*/ ) 1825 1816 { 1826 1817 assert(0); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.h
r1291 r1307 79 79 80 80 Void resetEntropy (const TComSlice *pSlice); 81 SliceType determineCabacInitIdx (const TComSlice *pSlice) { assert(0); return I_SLICE; };81 SliceType determineCabacInitIdx (const TComSlice* /*pSlice*/) { assert(0); return I_SLICE; }; 82 82 83 83 Void setBitstream ( TComBitIf* p ) { m_pcBitIf = p; } … … 101 101 102 102 Void codeMVPIdx ( TComDataCU* pcCU, UInt uiAbsPartIdx, RefPicList eRefList ); 103 Void codeSAOBlkParam(SAOBlkParam& saoBlkParam, const BitDepths &bitDepths, Bool* sliceEnabled, Bool leftMergeAvail, Bool aboveMergeAvail, Bool onlyEstMergeInfo= false){printf("only supported in CABAC"); assert(0); exit(-1);}103 Void codeSAOBlkParam(SAOBlkParam& /*saoBlkParam*/, const BitDepths& /*bitDepths*/, Bool* /*sliceEnabled*/, Bool /*leftMergeAvail*/, Bool /*aboveMergeAvail*/, Bool /*onlyEstMergeInfo*/ = false){printf("only supported in CABAC"); assert(0); exit(-1);} 104 104 Void codeCUTransquantBypassFlag( TComDataCU* pcCU, UInt uiAbsPartIdx ); 105 105 Void codeSkipFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ); … … 107 107 Void codeMergeIndex ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 108 108 109 Void codeAlfCtrlFlag ( ComponentID component, UInt code) {printf("Not supported\n"); assert(0);}109 Void codeAlfCtrlFlag ( ComponentID /*component*/, UInt /*code*/ ) {printf("Not supported\n"); assert(0);} 110 110 Void codeInterModeFlag( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth, UInt uiEncMode ); 111 111 Void codeSplitFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); … … 120 120 Void codeQtRootCbf ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 121 121 Void codeQtCbfZero ( TComTU &rTu, const ChannelType chType ); 122 Void codeQtRootCbfZero ( TComDataCU* pcCU);122 Void codeQtRootCbfZero ( ); 123 123 Void codeIntraDirLumaAng( TComDataCU* pcCU, UInt absPartIdx, Bool isMultiple); 124 124 Void codeIntraDirChroma( TComDataCU* pcCU, UInt uiAbsPartIdx ); … … 141 141 Void codeScalingList ( const TComScalingList &scalingList ); 142 142 Void xCodeScalingList ( const TComScalingList* scalingList, UInt sizeId, UInt listId); 143 Void codeDFFlag ( UInt uiCode, const Char *pSymbolName );144 Void codeDFSvlc ( Int iCode, const Char *pSymbolName );145 143 146 144 Void codeExplicitRdpcmMode( TComTU &rTu, const ComponentID compID ); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCu.cpp
r1290 r1307 969 969 rpcBestCU->copyToPic(uiDepth); // Copy Best data to Picture for next partition prediction. 970 970 971 xCopyYuv2Pic( rpcBestCU->getPic(), rpcBestCU->getCtuRsAddr(), rpcBestCU->getZorderIdxInCtu(), uiDepth, uiDepth , rpcBestCU, uiLPelX, uiTPelY); // Copy Yuv data to picture Yuv971 xCopyYuv2Pic( rpcBestCU->getPic(), rpcBestCU->getCtuRsAddr(), rpcBestCU->getZorderIdxInCtu(), uiDepth, uiDepth ); // Copy Yuv data to picture Yuv 972 972 if (bBoundary) 973 973 { … … 988 988 * \returns Void 989 989 */ 990 Void TEncCu::finishCU( TComDataCU* pcCU, UInt uiAbsPartIdx , UInt uiDepth)990 Void TEncCu::finishCU( TComDataCU* pcCU, UInt uiAbsPartIdx ) 991 991 { 992 992 TComPic* pcPic = pcCU->getPic(); … … 1135 1135 { 1136 1136 m_pcEntropyCoder->encodeMergeIndex( pcCU, uiAbsPartIdx ); 1137 finishCU(pcCU,uiAbsPartIdx ,uiDepth);1137 finishCU(pcCU,uiAbsPartIdx); 1138 1138 return; 1139 1139 } … … 1149 1149 { 1150 1150 // Encode slice finish 1151 finishCU(pcCU,uiAbsPartIdx ,uiDepth);1151 finishCU(pcCU,uiAbsPartIdx); 1152 1152 return; 1153 1153 } … … 1165 1165 1166 1166 // --- write terminating bit --- 1167 finishCU(pcCU,uiAbsPartIdx ,uiDepth);1167 finishCU(pcCU,uiAbsPartIdx); 1168 1168 } 1169 1169 … … 1675 1675 } 1676 1676 } 1677 Void TEncCu::xCopyYuv2Pic(TComPic* rpcPic, UInt uiCUAddr, UInt uiAbsPartIdx, UInt uiDepth, UInt uiSrcDepth , TComDataCU* pcCU, UInt uiLPelX, UInt uiTPelY)1677 Void TEncCu::xCopyYuv2Pic(TComPic* rpcPic, UInt uiCUAddr, UInt uiAbsPartIdx, UInt uiDepth, UInt uiSrcDepth ) 1678 1678 { 1679 1679 UInt uiAbsPartIdxInRaster = g_auiZscanToRaster[uiAbsPartIdx]; -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCu.h
r1259 r1307 123 123 124 124 protected: 125 Void finishCU ( TComDataCU* pcCU, UInt uiAbsPartIdx , UInt uiDepth);125 Void finishCU ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 126 126 #if AMP_ENC_SPEEDUP 127 127 Void xCompressCU ( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, UInt uiDepth DEBUG_STRING_FN_DECLARE(sDebug), PartSize eParentPartSize = NUMBER_OF_PART_SIZES ); … … 156 156 Void xCheckIntraPCM ( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU ); 157 157 Void xCopyAMVPInfo ( AMVPInfo* pSrc, AMVPInfo* pDst ); 158 Void xCopyYuv2Pic (TComPic* rpcPic, UInt uiCUAddr, UInt uiAbsPartIdx, UInt uiDepth, UInt uiSrcDepth , TComDataCU* pcCU, UInt uiLPelX, UInt uiTPelY);158 Void xCopyYuv2Pic (TComPic* rpcPic, UInt uiCUAddr, UInt uiAbsPartIdx, UInt uiDepth, UInt uiSrcDepth ); 159 159 Void xCopyYuv2Tmp ( UInt uhPartUnitIdx, UInt uiDepth ); 160 160 -
branches/SHM-dev/source/Lib/TLibEncoder/TEncEntropy.cpp
r1291 r1307 588 588 } 589 589 590 Void TEncEntropy::encodeQtRootCbfZero( TComDataCU* pcCU)591 { 592 m_pcEntropyCoderIf->codeQtRootCbfZero( pcCU);590 Void TEncEntropy::encodeQtRootCbfZero( ) 591 { 592 m_pcEntropyCoderIf->codeQtRootCbfZero( ); 593 593 } 594 594 -
branches/SHM-dev/source/Lib/TLibEncoder/TEncEntropy.h
r1291 r1307 99 99 virtual Void codeQtRootCbf ( TComDataCU* pcCU, UInt uiAbsPartIdx ) = 0; 100 100 virtual Void codeQtCbfZero ( TComTU &rTu, const ChannelType chType ) = 0; 101 virtual Void codeQtRootCbfZero ( TComDataCU* pcCU) = 0;101 virtual Void codeQtRootCbfZero ( ) = 0; 102 102 virtual Void codeIntraDirLumaAng( TComDataCU* pcCU, UInt uiAbsPartIdx, Bool isMultiplePU ) = 0; 103 103 … … 115 115 virtual Void codeSAOBlkParam (SAOBlkParam& saoBlkParam, const BitDepths &bitDepths, Bool* sliceEnabled, Bool leftMergeAvail, Bool aboveMergeAvail, Bool onlyEstMergeInfo = false) =0; 116 116 virtual Void estBit (estBitsSbacStruct* pcEstBitsSbac, Int width, Int height, ChannelType chType) = 0; 117 118 virtual Void codeDFFlag (UInt uiCode, const Char *pSymbolName) = 0;119 virtual Void codeDFSvlc (Int iCode, const Char *pSymbolName) = 0;120 117 121 118 virtual Void codeExplicitRdpcmMode ( TComTU &rTu, const ComponentID compID ) = 0; … … 176 173 177 174 Void encodeQtCbfZero ( TComTU &rTu, const ChannelType chType ); 178 Void encodeQtRootCbfZero ( TComDataCU* pcCU);175 Void encodeQtRootCbfZero ( ); 179 176 Void encodeQtRootCbf ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 180 177 Void encodeQP ( TComDataCU* pcCU, UInt uiAbsPartIdx, Bool bRD = false ); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.cpp
r1306 r1307 904 904 { 905 905 SEIChromaSamplingFilterHint *seiChromaSamplingFilterHint = new SEIChromaSamplingFilterHint; 906 m_seiEncoder.initSEIChromaSamplingFilterHint(seiChromaSamplingFilterHint, m_pcCfg->getChroma LocInfoPresentFlag(), m_pcCfg->getChromaSamplingHorFilterIdc(), m_pcCfg->getChromaSamplingVerFilterIdc());906 m_seiEncoder.initSEIChromaSamplingFilterHint(seiChromaSamplingFilterHint, m_pcCfg->getChromaSamplingHorFilterIdc(), m_pcCfg->getChromaSamplingVerFilterIdc()); 907 907 seiMessages.push_back(seiChromaSamplingFilterHint); 908 908 } … … 974 974 } 975 975 976 Void TEncGOP::xCreatePictureTimingSEI (Int IRAPGOPid, SEIMessages& seiMessages, SEIMessages& nestedSeiMessages, SEIMessages& duInfoSeiMessages, AccessUnit &accessUnit,TComSlice *slice, Bool isField, std::deque<DUData> &duData)976 Void TEncGOP::xCreatePictureTimingSEI (Int IRAPGOPid, SEIMessages& seiMessages, SEIMessages& nestedSeiMessages, SEIMessages& duInfoSeiMessages, TComSlice *slice, Bool isField, std::deque<DUData> &duData) 977 977 { 978 978 Int picSptDpbOutputDuDelay = 0; … … 1500 1500 AccessUnit::iterator itLocationToPushSliceHeaderNALU; // used to store location where NALU containing slice header is to be inserted 1501 1501 1502 xInitGOP( iPOCLast, iNumPicRcvd, rcListPic, rcListPicYuvRecOut,isField );1502 xInitGOP( iPOCLast, iNumPicRcvd, isField ); 1503 1503 1504 1504 m_iNumPicCoded = 0; … … 1594 1594 m_pcSliceEncoder->setSliceIdx(0); 1595 1595 pcPic->setCurrSliceIdx(0); 1596 1596 1597 #if SVC_EXTENSION 1597 1598 pcPic->setLayerId( m_layerId ); 1598 1599 #endif 1599 m_pcSliceEncoder->initEncSlice ( pcPic, iPOCLast, pocCurr, iNumPicRcvd, iGOPid, pcSlice, isField ); 1600 1601 m_pcSliceEncoder->initEncSlice ( pcPic, iPOCLast, pocCurr, iGOPid, pcSlice, isField ); 1600 1602 1601 1603 //Set Frame/Field coding … … 2842 2844 2843 2845 #if EFFICIENT_FIELD_IRAP 2844 xCreatePictureTimingSEI(effFieldIRAPMap.GetIRAPGOPid(), leadingSeiMessages, nestedSeiMessages, duInfoSeiMessages, accessUnit,pcSlice, isField, duData);2845 #else 2846 xCreatePictureTimingSEI(0, leadingSeiMessages, nestedSeiMessages, duInfoSeiMessages, accessUnit,pcSlice, isField, duData);2846 xCreatePictureTimingSEI(effFieldIRAPMap.GetIRAPGOPid(), leadingSeiMessages, nestedSeiMessages, duInfoSeiMessages, pcSlice, isField, duData); 2847 #else 2848 xCreatePictureTimingSEI(0, leadingSeiMessages, nestedSeiMessages, duInfoSeiMessages, pcSlice, isField, duData); 2847 2849 #endif 2848 2850 if (m_pcCfg->getScalableNestingSEIEnabled()) … … 2992 2994 2993 2995 2994 Void TEncGOP::xInitGOP( Int iPOCLast, Int iNumPicRcvd, TComList<TComPic*>& rcListPic, TComList<TComPicYuv*>& rcListPicYuvRecOut,Bool isField )2996 Void TEncGOP::xInitGOP( Int iPOCLast, Int iNumPicRcvd, Bool isField ) 2995 2997 { 2996 2998 assert( iNumPicRcvd > 0 ); … … 3176 3178 if( (pcPic->isTopField() && isFieldTopFieldFirst) || (!pcPic->isTopField() && !isFieldTopFieldFirst)) 3177 3179 { 3178 xCalculateInterlacedAddPSNR(pcPic, correspondingFieldPic, pcPic->getPicYuvRec(), correspondingFieldPic->getPicYuvRec(), accessUnit, dEncTime,snr_conversion, printFrameMSE );3180 xCalculateInterlacedAddPSNR(pcPic, correspondingFieldPic, pcPic->getPicYuvRec(), correspondingFieldPic->getPicYuvRec(), snr_conversion, printFrameMSE ); 3179 3181 } 3180 3182 else 3181 3183 { 3182 xCalculateInterlacedAddPSNR(correspondingFieldPic, pcPic, correspondingFieldPic->getPicYuvRec(), pcPic->getPicYuvRec(), accessUnit, dEncTime,snr_conversion, printFrameMSE );3184 xCalculateInterlacedAddPSNR(correspondingFieldPic, pcPic, correspondingFieldPic->getPicYuvRec(), pcPic->getPicYuvRec(), snr_conversion, printFrameMSE ); 3183 3185 } 3184 3186 } … … 3199 3201 { 3200 3202 cscd.create(pcPicD->getWidth(COMPONENT_Y), pcPicD->getHeight(COMPONENT_Y), pcPicD->getChromaFormat(), pcPicD->getWidth(COMPONENT_Y), pcPicD->getHeight(COMPONENT_Y), 0, false); 3201 #if SVC_EXTENSION 3202 TVideoIOYuv::ColourSpaceConvert(*pcPicD, cscd, conversion, pcPic->getSlice(0)->getBitDepths().recon, false); 3203 #else 3204 TVideoIOYuv::ColourSpaceConvert(*pcPicD, cscd, conversion, pcPic->getPicSym()->getSPS().getBitDepths().recon, false); 3205 #endif 3203 TVideoIOYuv::ColourSpaceConvert(*pcPicD, cscd, conversion, false); 3206 3204 } 3207 3205 TComPicYuv &picd=(conversion==IPCOLOURSPACE_UNCHANGED)?*pcPicD : cscd; … … 3384 3382 Void TEncGOP::xCalculateInterlacedAddPSNR( TComPic* pcPicOrgFirstField, TComPic* pcPicOrgSecondField, 3385 3383 TComPicYuv* pcPicRecFirstField, TComPicYuv* pcPicRecSecondField, 3386 const AccessUnit& accessUnit, Double dEncTime, constInputColourSpaceConversion conversion, const Bool printFrameMSE )3384 const InputColourSpaceConversion conversion, const Bool printFrameMSE ) 3387 3385 { 3388 3386 #if !SVC_EXTENSION … … 3405 3403 TComPicYuv &reconField=*(apcPicRecFields[fieldNum]); 3406 3404 cscd[fieldNum].create(reconField.getWidth(COMPONENT_Y), reconField.getHeight(COMPONENT_Y), reconField.getChromaFormat(), reconField.getWidth(COMPONENT_Y), reconField.getHeight(COMPONENT_Y), 0, false); 3407 #if SVC_EXTENSION 3408 TVideoIOYuv::ColourSpaceConvert(reconField, cscd[fieldNum], conversion, pcPicOrgFirstField->getSlice(0)->getBitDepths().recon, false); 3409 #else 3410 TVideoIOYuv::ColourSpaceConvert(reconField, cscd[fieldNum], conversion, sps.getBitDepths().recon, false); 3411 #endif 3405 TVideoIOYuv::ColourSpaceConvert(reconField, cscd[fieldNum], conversion, false); 3412 3406 apcPicRecFields[fieldNum]=cscd+fieldNum; 3413 3407 } -
branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.h
r1292 r1307 199 199 200 200 TComList<TComPic*>* getListPic() { return m_pcListPic; } 201 201 202 202 Void printOutSummary ( UInt uiNumAllPicCoded, Bool isField, const Bool printMSEBasedSNR, const Bool printSequenceMSE, const BitDepths &bitDepths ); 203 203 Void preLoopFilterPicAll ( TComPic* pcPic, UInt64& ruiDist ); … … 228 228 protected: 229 229 230 Void xInitGOP ( Int iPOCLast, Int iNumPicRcvd, TComList<TComPic*>& rcListPic, TComList<TComPicYuv*>& rcListPicYuvRecOut,Bool isField );230 Void xInitGOP ( Int iPOCLast, Int iNumPicRcvd, Bool isField ); 231 231 Void xGetBuffer ( TComList<TComPic*>& rcListPic, TComList<TComPicYuv*>& rcListPicYuvRecOut, Int iNumPicRcvd, Int iTimeOffset, TComPic*& rpcPic, TComPicYuv*& rpcPicYuvRecOut, Int pocCurr, Bool isField ); 232 232 … … 235 235 Void xCalculateInterlacedAddPSNR( TComPic* pcPicOrgFirstField, TComPic* pcPicOrgSecondField, 236 236 TComPicYuv* pcPicRecFirstField, TComPicYuv* pcPicRecSecondField, 237 const AccessUnit& accessUnit, Double dEncTime, constInputColourSpaceConversion snr_conversion, const Bool printFrameMSE );237 const InputColourSpaceConversion snr_conversion, const Bool printFrameMSE ); 238 238 239 239 UInt64 xFindDistortionFrame (TComPicYuv* pcPic0, TComPicYuv* pcPic1, const BitDepths &bitDepths); … … 243 243 Void xCreateIRAPLeadingSEIMessages (SEIMessages& seiMessages, const TComSPS *sps, const TComPPS *pps); 244 244 Void xCreatePerPictureSEIMessages (Int picInGOP, SEIMessages& seiMessages, SEIMessages& nestedSeiMessages, TComSlice *slice); 245 Void xCreatePictureTimingSEI (Int IRAPGOPid, SEIMessages& seiMessages, SEIMessages& nestedSeiMessages, SEIMessages& duInfoSeiMessages, AccessUnit &accessUnit,TComSlice *slice, Bool isField, std::deque<DUData> &duData);245 Void xCreatePictureTimingSEI (Int IRAPGOPid, SEIMessages& seiMessages, SEIMessages& nestedSeiMessages, SEIMessages& duInfoSeiMessages, TComSlice *slice, Bool isField, std::deque<DUData> &duData); 246 246 Void xUpdateDuData(AccessUnit &testAU, std::deque<DUData> &duData); 247 247 Void xUpdateTimingSEI(SEIPictureTiming *pictureTimingSEI, std::deque<DUData> &duData, const TComSPS *sps); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.cpp
r1291 r1307 354 354 #endif 355 355 , srcBlk, orgBlk, srcStride, orgStride, (width >> componentScaleX), (height >> componentScaleY) 356 , isLeftAvail, isRightAvail, isAboveAvail, isBelowAvail, isAboveLeftAvail, isAboveRightAvail , isBelowLeftAvail, isBelowRightAvail356 , isLeftAvail, isRightAvail, isAboveAvail, isBelowAvail, isAboveLeftAvail, isAboveRightAvail 357 357 #if SAO_ENCODE_ALLOW_USE_PREDEBLOCK 358 358 , isCalculatePreDeblockSamples … … 442 442 443 443 444 inline Int TEncSampleAdaptiveOffset::estIterOffset(Int typeIdx, Int classIdx,Double lambda, Int offsetInput, Int64 count, Int64 diffSum, Int shift, Int bitIncrease, Int64& bestDist, Double& bestCost, Int offsetTh )444 inline Int TEncSampleAdaptiveOffset::estIterOffset(Int typeIdx, Double lambda, Int offsetInput, Int64 count, Int64 diffSum, Int shift, Int bitIncrease, Int64& bestDist, Double& bestCost, Int offsetTh ) 445 445 { 446 446 Int iterOffset, tempOffset; … … 535 535 if( quantOffsets[classIdx] != 0 ) //iterative adjustment only when derived offset is not zero 536 536 { 537 quantOffsets[classIdx] = estIterOffset( typeIdc, classIdx,m_lambda[compIdx], quantOffsets[classIdx], statData.count[classIdx], statData.diff[classIdx], shift, m_offsetStepLog2[compIdx], classDist , classCost , offsetTh );537 quantOffsets[classIdx] = estIterOffset( typeIdc, m_lambda[compIdx], quantOffsets[classIdx], statData.count[classIdx], statData.diff[classIdx], shift, m_offsetStepLog2[compIdx], classDist , classCost , offsetTh ); 538 538 } 539 539 } … … 552 552 if( quantOffsets[classIdx] != 0 ) //iterative adjustment only when derived offset is not zero 553 553 { 554 quantOffsets[classIdx] = estIterOffset( typeIdc, classIdx,m_lambda[compIdx], quantOffsets[classIdx], statData.count[classIdx], statData.diff[classIdx], shift, m_offsetStepLog2[compIdx], distBOClasses[classIdx], costBOClasses[classIdx], offsetTh );554 quantOffsets[classIdx] = estIterOffset( typeIdc, m_lambda[compIdx], quantOffsets[classIdx], statData.count[classIdx], statData.diff[classIdx], shift, m_offsetStepLog2[compIdx], distBOClasses[classIdx], costBOClasses[classIdx], offsetTh ); 555 555 } 556 556 } … … 933 933 Void TEncSampleAdaptiveOffset::getBlkStats(const ComponentID compIdx, const Int channelBitDepth, SAOStatData* statsDataTypes 934 934 , Pel* srcBlk, Pel* orgBlk, Int srcStride, Int orgStride, Int width, Int height 935 , Bool isLeftAvail, Bool isRightAvail, Bool isAboveAvail, Bool isBelowAvail, Bool isAboveLeftAvail, Bool isAboveRightAvail , Bool isBelowLeftAvail, Bool isBelowRightAvail935 , Bool isLeftAvail, Bool isRightAvail, Bool isAboveAvail, Bool isBelowAvail, Bool isAboveLeftAvail, Bool isAboveRightAvail 936 936 #if SAO_ENCODE_ALLOW_USE_PREDEBLOCK 937 937 , Bool isCalculatePreDeblockSamples -
branches/SHM-dev/source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h
r1287 r1307 126 126 Void decidePicParams(Bool* sliceEnabled, Int picTempLayer); 127 127 Void decideBlkParams(TComPic* pic, Bool* sliceEnabled, SAOStatData*** blkStats, TComPicYuv* srcYuv, TComPicYuv* resYuv, SAOBlkParam* reconParams, SAOBlkParam* codedParams); 128 Void getBlkStats(const ComponentID compIdx, const Int channelBitDepth, SAOStatData* statsDataTypes, Pel* srcBlk, Pel* orgBlk, Int srcStride, Int orgStride, Int width, Int height, Bool isLeftAvail, Bool isRightAvail, Bool isAboveAvail, Bool isBelowAvail, Bool isAboveLeftAvail, Bool isAboveRightAvail , Bool isBelowLeftAvail, Bool isBelowRightAvail128 Void getBlkStats(const ComponentID compIdx, const Int channelBitDepth, SAOStatData* statsDataTypes, Pel* srcBlk, Pel* orgBlk, Int srcStride, Int orgStride, Int width, Int height, Bool isLeftAvail, Bool isRightAvail, Bool isAboveAvail, Bool isBelowAvail, Bool isAboveLeftAvail, Bool isAboveRightAvail 129 129 #if SAO_ENCODE_ALLOW_USE_PREDEBLOCK 130 130 , Bool isCalculatePreDeblockSamples … … 136 136 Void deriveOffsets(ComponentID compIdx, const Int channelBitDepth, Int typeIdc, SAOStatData& statData, Int* quantOffsets, Int& typeAuxInfo); 137 137 inline Int64 estSaoDist(Int64 count, Int64 offset, Int64 diffSum, Int shift); 138 inline Int estIterOffset(Int typeIdx, Int classIdx,Double lambda, Int offsetInput, Int64 count, Int64 diffSum, Int shift, Int bitIncrease, Int64& bestDist, Double& bestCost, Int offsetTh );138 inline Int estIterOffset(Int typeIdx, Double lambda, Int offsetInput, Int64 count, Int64 diffSum, Int shift, Int bitIncrease, Int64& bestDist, Double& bestCost, Int offsetTh ); 139 139 #if SAO_ENCODE_ALLOW_USE_PREDEBLOCK 140 140 Void addPreDBFStatistics(SAOStatData*** blkStats); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncSbac.cpp
r1305 r1307 221 221 } 222 222 223 Void TEncSbac::codeVPS( const TComVPS* pcVPS)223 Void TEncSbac::codeVPS( const TComVPS* /*pcVPS*/ ) 224 224 { 225 225 assert (0); … … 227 227 } 228 228 229 Void TEncSbac::codeSPS( const TComSPS* pcSPS)229 Void TEncSbac::codeSPS( const TComSPS* /*pcSPS*/ ) 230 230 { 231 231 assert (0); … … 234 234 235 235 #if CGS_3D_ASYMLUT 236 Void TEncSbac::codePPS( const TComPPS* pcPPS, TEnc3DAsymLUT * pc3DAsymLUT )236 Void TEncSbac::codePPS( const TComPPS* /*pcPPS*/, TEnc3DAsymLUT * pc3DAsymLUT ) 237 237 #else 238 Void TEncSbac::codePPS( const TComPPS* pcPPS)238 Void TEncSbac::codePPS( const TComPPS* /*pcPPS*/ ) 239 239 #endif 240 240 { … … 243 243 } 244 244 245 Void TEncSbac::codeSliceHeader( TComSlice* pcSlice)245 Void TEncSbac::codeSliceHeader( TComSlice* /*pcSlice*/ ) 246 246 { 247 247 assert (0); … … 249 249 } 250 250 251 Void TEncSbac::codeTilesWPPEntryPoint( TComSlice* pSlice)251 Void TEncSbac::codeTilesWPPEntryPoint( TComSlice* /*pSlice*/ ) 252 252 { 253 253 assert (0); … … 1103 1103 } 1104 1104 1105 Void TEncSbac::codeQtRootCbfZero( TComDataCU* pcCU)1105 Void TEncSbac::codeQtRootCbfZero( ) 1106 1106 { 1107 1107 // this function is only used to estimate the bits when cbf is 0 -
branches/SHM-dev/source/Lib/TLibEncoder/TEncSbac.h
r1305 r1307 124 124 Void xCopyContextsFrom ( const TEncSbac* pSrc ); 125 125 126 Void codeDFFlag( UInt /*uiCode*/, const Char* /*pSymbolName*/ ) {printf("Not supported in codeDFFlag()\n"); assert(0); exit(1);};127 Void codeDFSvlc( Int /*iCode*/, const Char* /*pSymbolName*/ ) {printf("Not supported in codeDFSvlc()\n"); assert(0); exit(1);};128 129 126 protected: 130 127 TComBitIf* m_pcBitIf; … … 148 145 Void codeQtRootCbf ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 149 146 Void codeQtCbfZero ( TComTU &rTu, const ChannelType chType ); 150 Void codeQtRootCbfZero ( TComDataCU* pcCU);147 Void codeQtRootCbfZero ( ); 151 148 Void codeIntraDirLumaAng ( TComDataCU* pcCU, UInt absPartIdx, Bool isMultiple); 152 149 -
branches/SHM-dev/source/Lib/TLibEncoder/TEncSearch.cpp
r1290 r1307 1173 1173 #endif 1174 1174 { 1175 const Bool bUseFilteredPredictions=TComPrediction::filteringIntraReferenceSamples(compID, uiChFinalMode, uiWidth, uiHeight, chFmt, pcCU->getSlice()->getSPS()->getDisableIntraReferenceSmoothing());1175 const Bool bUseFilteredPredictions=TComPrediction::filteringIntraReferenceSamples(compID, uiChFinalMode, uiWidth, uiHeight, chFmt, sps.getDisableIntraReferenceSmoothing()); 1176 1176 1177 1177 initAdiPatternChType( rTu, bAboveAvail, bLeftAvail, compID, bUseFilteredPredictions DEBUG_STRING_PASS_INTO(sDebug) ); … … 2333 2333 2334 2334 // NB xModeBitsIntra will not affect the mode for chroma that may have already been pre-estimated. 2335 iModeBits+=xModeBitsIntra( pcCU, uiMode, uiPartOffset, uiDepth, uiInitTrDepth,CHANNEL_TYPE_LUMA );2335 iModeBits+=xModeBitsIntra( pcCU, uiMode, uiPartOffset, uiDepth, CHANNEL_TYPE_LUMA ); 2336 2336 2337 2337 Double cost = (Double)uiSad + (Double)iModeBits * sqrtLambdaForFirstPass; … … 3623 3623 if(pcCU->getSlice()->getMvdL1ZeroFlag() && eRefPicList==REF_PIC_LIST_1) 3624 3624 { 3625 (*puiDistBiP) = xGetTemplateCost( pcCU, uiPart Idx, uiPartAddr, pcOrgYuv, &m_cYuvPredTemp, rcMvPred, 0, AMVP_MAX_NUM_CANDS, eRefPicList, iRefIdx, iRoiWidth, iRoiHeight);3625 (*puiDistBiP) = xGetTemplateCost( pcCU, uiPartAddr, pcOrgYuv, &m_cYuvPredTemp, rcMvPred, 0, AMVP_MAX_NUM_CANDS, eRefPicList, iRefIdx, iRoiWidth, iRoiHeight); 3626 3626 } 3627 3627 return; … … 3640 3640 { 3641 3641 Distortion uiTmpCost; 3642 uiTmpCost = xGetTemplateCost( pcCU, uiPart Idx, uiPartAddr, pcOrgYuv, &m_cYuvPredTemp, pcAMVPInfo->m_acMvCand[i], i, AMVP_MAX_NUM_CANDS, eRefPicList, iRefIdx, iRoiWidth, iRoiHeight);3642 uiTmpCost = xGetTemplateCost( pcCU, uiPartAddr, pcOrgYuv, &m_cYuvPredTemp, pcAMVPInfo->m_acMvCand[i], i, AMVP_MAX_NUM_CANDS, eRefPicList, iRefIdx, iRoiWidth, iRoiHeight); 3643 3643 if ( uiBestCost > uiTmpCost ) 3644 3644 { … … 3798 3798 3799 3799 Distortion TEncSearch::xGetTemplateCost( TComDataCU* pcCU, 3800 UInt uiPartIdx,3801 3800 UInt uiPartAddr, 3802 3801 TComYuv* pcOrgYuv, … … 3973 3972 else //non ILR reference pic 3974 3973 #endif 3975 xPatternSearchFracDIF( bIsLosslessCoded, pcPatternKey, piRefY, iRefStride, &rcMv, cMvHalf, cMvQter, ruiCost ,bBi );3974 xPatternSearchFracDIF( bIsLosslessCoded, pcPatternKey, piRefY, iRefStride, &rcMv, cMvHalf, cMvQter, ruiCost ); 3976 3975 3977 3976 m_pcRdCost->setCostScale( 0 ); … … 4472 4471 TComMv& rcMvHalf, 4473 4472 TComMv& rcMvQter, 4474 Distortion& ruiCost, 4475 Bool biPred 4473 Distortion& ruiCost 4476 4474 ) 4477 4475 { … … 4486 4484 4487 4485 // Half-pel refinement 4488 xExtDIFUpSamplingH ( &cPatternRoi , biPred);4486 xExtDIFUpSamplingH ( &cPatternRoi ); 4489 4487 4490 4488 rcMvHalf = *pcMvInt; rcMvHalf <<= 1; // for mv-cost … … 4494 4492 m_pcRdCost->setCostScale( 0 ); 4495 4493 4496 xExtDIFUpSamplingQ ( &cPatternRoi, rcMvHalf , biPred);4494 xExtDIFUpSamplingQ ( &cPatternRoi, rcMvHalf ); 4497 4495 baseRefMv = rcMvHalf; 4498 4496 baseRefMv <<= 1; … … 4593 4591 4594 4592 m_pcEntropyCoder->resetBits(); 4595 m_pcEntropyCoder->encodeQtRootCbfZero( pcCU);4593 m_pcEntropyCoder->encodeQtRootCbfZero( ); 4596 4594 const UInt zeroResiBits = m_pcEntropyCoder->getNumberOfWrittenBits(); 4597 4595 const Double zeroCost = (pcCU->isLosslessCoded( 0 )) ? (nonZeroCost+1) : (m_pcRdCost->calcRdCost( zeroResiBits, zeroDistortion )); … … 4626 4624 4627 4625 UInt finalBits = 0; 4628 xAddSymbolBitsInter( pcCU, 0, 0,finalBits );4626 xAddSymbolBitsInter( pcCU, finalBits ); 4629 4627 // we've now encoded the pcCU, and so have a valid bit cost 4630 4628 … … 5458 5456 5459 5457 5460 UInt TEncSearch::xModeBitsIntra( TComDataCU* pcCU, UInt uiMode, UInt uiPartOffset, UInt uiDepth, UInt uiInitTrDepth,const ChannelType chType )5458 UInt TEncSearch::xModeBitsIntra( TComDataCU* pcCU, UInt uiMode, UInt uiPartOffset, UInt uiDepth, const ChannelType chType ) 5461 5459 { 5462 5460 // Reload only contexts required for coding intra mode information … … 5526 5524 * \returns Void 5527 5525 */ 5528 Void TEncSearch::xAddSymbolBitsInter( TComDataCU* pcCU, UInt uiQp, UInt uiTrMode, UInt& ruiBits )5526 Void TEncSearch::xAddSymbolBitsInter( TComDataCU* pcCU, UInt& ruiBits ) 5529 5527 { 5530 5528 if(pcCU->getMergeFlag( 0 ) && pcCU->getPartitionSize( 0 ) == SIZE_2Nx2N && !pcCU->getQtRootCbf( 0 )) … … 5574 5572 * \param biPred Flag indicating whether block is for biprediction 5575 5573 */ 5576 Void TEncSearch::xExtDIFUpSamplingH( TComPattern* pattern , Bool biPred)5574 Void TEncSearch::xExtDIFUpSamplingH( TComPattern* pattern ) 5577 5575 { 5578 5576 Int width = pattern->getROIYWidth(); … … 5621 5619 * \param biPred Flag indicating whether block is for biprediction 5622 5620 */ 5623 Void TEncSearch::xExtDIFUpSamplingQ( TComPattern* pattern, TComMv halfPelRef , Bool biPred)5621 Void TEncSearch::xExtDIFUpSamplingQ( TComPattern* pattern, TComMv halfPelRef ) 5624 5622 { 5625 5623 Int width = pattern->getROIYWidth(); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncSearch.h
r1290 r1307 341 341 342 342 Distortion xGetTemplateCost ( TComDataCU* pcCU, 343 UInt uiPartIdx,344 343 UInt uiPartAddr, 345 344 TComYuv* pcOrgYuv, … … 448 447 TComMv& rcMvHalf, 449 448 TComMv& rcMvQter, 450 Distortion& ruiCost, 451 Bool biPred 449 Distortion& ruiCost 452 450 ); 453 451 454 Void xExtDIFUpSamplingH( TComPattern* pcPattern , Bool biPred);455 Void xExtDIFUpSamplingQ( TComPattern* pcPatternKey, TComMv halfPelRef , Bool biPred);452 Void xExtDIFUpSamplingH( TComPattern* pcPattern ); 453 Void xExtDIFUpSamplingQ( TComPattern* pcPatternKey, TComMv halfPelRef ); 456 454 457 455 // ------------------------------------------------------------------------------------------------------------------- … … 464 462 Void xSetInterResidualQTData( TComYuv* pcResi, Bool bSpatial, TComTU &rTu ); 465 463 466 UInt xModeBitsIntra ( TComDataCU* pcCU, UInt uiMode, UInt uiPartOffset, UInt uiDepth, UInt uiInitTrDepth,const ChannelType compID );464 UInt xModeBitsIntra ( TComDataCU* pcCU, UInt uiMode, UInt uiPartOffset, UInt uiDepth, const ChannelType compID ); 467 465 UInt xUpdateCandList( UInt uiMode, Double uiCost, UInt uiFastCandNum, UInt * CandModeList, Double * CandCostList ); 468 466 … … 472 470 473 471 Void xAddSymbolBitsInter ( TComDataCU* pcCU, 474 UInt uiQp,475 UInt uiTrMode,476 472 UInt& ruiBits); 477 473 -
branches/SHM-dev/source/Lib/TLibEncoder/TEncSlice.cpp
r1305 r1307 236 236 */ 237 237 238 Void TEncSlice::initEncSlice( TComPic* pcPic, Int pocLast, Int pocCurr, Int i NumPicRcvd, Int iGOPid, TComSlice*& rpcSlice, Bool isField )238 Void TEncSlice::initEncSlice( TComPic* pcPic, Int pocLast, Int pocCurr, Int iGOPid, TComSlice*& rpcSlice, Bool isField ) 239 239 { 240 240 Double dQP; … … 1242 1242 1243 1243 Void TEncSlice::calculateBoundingCtuTsAddrForSlice(UInt &startCtuTSAddrSlice, UInt &boundingCtuTSAddrSlice, Bool &haveReachedTileBoundary, 1244 TComPic* pcPic, const Int sliceMode, const Int sliceArgument , const UInt sliceCurEndCtuTSAddr)1244 TComPic* pcPic, const Int sliceMode, const Int sliceArgument) 1245 1245 { 1246 1246 TComSlice* pcSlice = pcPic->getSlice(getSliceIdx()); … … 1343 1343 UInt boundingCtuTsAddrSlice; 1344 1344 calculateBoundingCtuTsAddrForSlice(startCtuTsAddrSlice, boundingCtuTsAddrSlice, haveReachedTileBoundarySlice, pcPic, 1345 m_pcCfg->getSliceMode(), m_pcCfg->getSliceArgument() , pcSlice->getSliceCurEndCtuTsAddr());1345 m_pcCfg->getSliceMode(), m_pcCfg->getSliceArgument()); 1346 1346 pcSlice->setSliceCurEndCtuTsAddr( boundingCtuTsAddrSlice ); 1347 1347 pcSlice->setSliceCurStartCtuTsAddr( startCtuTsAddrSlice ); … … 1352 1352 UInt boundingCtuTsAddrSliceSegment; 1353 1353 calculateBoundingCtuTsAddrForSlice(startCtuTsAddrSliceSegment, boundingCtuTsAddrSliceSegment, haveReachedTileBoundarySliceSegment, pcPic, 1354 m_pcCfg->getSliceSegmentMode(), m_pcCfg->getSliceSegmentArgument() , pcSlice->getSliceSegmentCurEndCtuTsAddr());1354 m_pcCfg->getSliceSegmentMode(), m_pcCfg->getSliceSegmentArgument()); 1355 1355 if (boundingCtuTsAddrSliceSegment>boundingCtuTsAddrSlice) 1356 1356 { -
branches/SHM-dev/source/Lib/TLibEncoder/TEncSlice.h
r1291 r1307 105 105 Void setUpLambda(TComSlice* slice, const Double dLambda, Int iQP); 106 106 #endif 107 Void calculateBoundingCtuTsAddrForSlice(UInt &startCtuTSAddrSlice, UInt &boundingCtuTSAddrSlice, Bool &haveReachedTileBoundary, TComPic* pcPic, const Int sliceMode, const Int sliceArgument , const UInt uiSliceCurEndCtuTSAddr);107 Void calculateBoundingCtuTsAddrForSlice(UInt &startCtuTSAddrSlice, UInt &boundingCtuTSAddrSlice, Bool &haveReachedTileBoundary, TComPic* pcPic, const Int sliceMode, const Int sliceArgument); 108 108 109 109 #if SVC_EXTENSION … … 120 120 121 121 /// preparation of slice encoding (reference marking, QP and lambda) 122 Void initEncSlice ( TComPic* pcPic, Int pocLast, Int pocCurr, Int iNumPicRcvd,122 Void initEncSlice ( TComPic* pcPic, Int pocLast, Int pocCurr, 123 123 Int iGOPid, TComSlice*& rpcSlice, Bool isField ); 124 124 Void resetQP ( TComPic* pic, Int sliceQP, Double lambda ); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncTop.cpp
r1298 r1307 286 286 { 287 287 #if SVC_EXTENSION 288 getTrQuant()->setFlatScalingList( m _cVPS.getChromaFormatIdc(&m_cSPS, m_layerId), maxLog2TrDynamicRange, m_cVPS.getBitDepths(&m_cSPS, m_layerId) );288 getTrQuant()->setFlatScalingList( maxLog2TrDynamicRange, m_cVPS.getBitDepths(&m_cSPS, m_layerId) ); 289 289 #else 290 getTrQuant()->setFlatScalingList(m _cSPS.getChromaFormatIdc(), maxLog2TrDynamicRange, m_cSPS.getBitDepths());290 getTrQuant()->setFlatScalingList(maxLog2TrDynamicRange, m_cSPS.getBitDepths()); 291 291 #endif 292 292 getTrQuant()->setUseScalingList(false); … … 308 308 309 309 // infer the scaling list from the reference layer 310 getTrQuant()->setScalingList( &m_ppcTEncTop[m_cVPS.getLayerIdxInVps(refLayerId)]->getSPS()->getScalingList(), m _cSPS.getChromaFormatIdc(), maxLog2TrDynamicRange, m_cVPS.getBitDepths(&m_cSPS, m_layerId) );310 getTrQuant()->setScalingList( &m_ppcTEncTop[m_cVPS.getLayerIdxInVps(refLayerId)]->getSPS()->getScalingList(), maxLog2TrDynamicRange, m_cVPS.getBitDepths(&m_cSPS, m_layerId) ); 311 311 } 312 312 else … … 317 317 m_cPPS.setScalingListPresentFlag(false); 318 318 319 getTrQuant()->setScalingList(&(m_cSPS.getScalingList()), m_cSPS.getChromaFormatIdc(), maxLog2TrDynamicRange, m_cSPS.getBitDepths()); 319 #if SVC_EXTENSION 320 getTrQuant()->setScalingList(&(m_cSPS.getScalingList()), maxLog2TrDynamicRange, m_cVPS.getBitDepths(&m_cSPS, m_layerId)); 321 #else 322 getTrQuant()->setScalingList(&(m_cSPS.getScalingList()), maxLog2TrDynamicRange, m_cSPS.getBitDepths()); 323 #endif 320 324 #if SVC_EXTENSION 321 325 } … … 337 341 338 342 // infer the scaling list from the reference layer 339 getTrQuant()->setScalingList( &m_ppcTEncTop[m_cVPS.getLayerIdxInVps(refLayerId)]->getSPS()->getScalingList(), m _cSPS.getChromaFormatIdc(), maxLog2TrDynamicRange, m_cVPS.getBitDepths(&m_cSPS, m_layerId) );343 getTrQuant()->setScalingList( &m_ppcTEncTop[m_cVPS.getLayerIdxInVps(refLayerId)]->getSPS()->getScalingList(), maxLog2TrDynamicRange, m_cVPS.getBitDepths(&m_cSPS, m_layerId) ); 340 344 } 341 345 else … … 352 356 m_cSPS.setScalingListPresentFlag(m_cSPS.getScalingList().checkDefaultScalingList()); 353 357 m_cPPS.setScalingListPresentFlag(false); 354 getTrQuant()->setScalingList(&(m_cSPS.getScalingList()), m _cSPS.getChromaFormatIdc(), maxLog2TrDynamicRange, m_cSPS.getBitDepths());358 getTrQuant()->setScalingList(&(m_cSPS.getScalingList()), maxLog2TrDynamicRange, m_cSPS.getBitDepths()); 355 359 #if SVC_EXTENSION 356 360 } … … 1388 1392 } 1389 1393 1390 Int TEncTop::getReferencePictureSetIdxForSOP( TComSlice* slice,Int POCCurr, Int GOPid )1394 Int TEncTop::getReferencePictureSetIdxForSOP(Int POCCurr, Int GOPid ) 1391 1395 { 1392 1396 Int rpsIdx = GOPid; -
branches/SHM-dev/source/Lib/TLibEncoder/TEncTop.h
r1292 r1307 189 189 TEncRateCtrl* getRateCtrl () { return &m_cRateCtrl; } 190 190 Void selectReferencePictureSet(TComSlice* slice, Int POCCurr, Int GOPid ); 191 Int getReferencePictureSetIdxForSOP( TComSlice* slice,Int POCCurr, Int GOPid );191 Int getReferencePictureSetIdxForSOP(Int POCCurr, Int GOPid ); 192 192 // ------------------------------------------------------------------------------------------------------------------- 193 193 // encoder function … … 285 285 286 286 Void printSummary(Bool isField) { m_cGOPEncoder.printOutSummary (m_uiNumAllPicCoded, isField, m_printMSEBasedSequencePSNR, m_printSequenceMSE, m_cSPS.getBitDepths()); } 287 287 288 }; 288 289
Note: See TracChangeset for help on using the changeset viewer.