|
Void | setAdaptiveSearchRange (Int iDir, Int iRefIdx, Int iSearchRange) |
| set ME search range More...
|
|
ChromaFormat | getChromaFormat () const |
|
Pel * | getPredictorPtr (const ComponentID compID, const Bool bUseFilteredPredictions) |
|
Void | initIntraPatternChType (TComTU &rTu, const ComponentID compID, const Bool bFilterRefSamples) |
| set parameters from CU data for accessing intra data More...
|
|
| TComPrediction () |
|
virtual | ~TComPrediction () |
|
Void | initTempBuff (ChromaFormat chromaFormatIDC) |
|
Void | motionCompensation (TComDataCU *pcCU, TComYuv *pcYuvPred, RefPicList eRefPicList=REF_PIC_LIST_X, Int iPartIdx=-1) |
|
Void | getMvPredAMVP (TComDataCU *pcCU, UInt uiPartIdx, UInt uiPartAddr, RefPicList eRefPicList, TComMv &rcMvPred) |
|
Void | predIntraAng (const ComponentID compID, UInt uiDirMode, Pel *piOrg, UInt uiOrgStride, Pel *piPred, UInt uiStride, TComTU &rTu, const Bool bUseFilteredPredSamples, const Bool bUseLosslessDPCM=false) |
|
Pel | predIntraGetPredValDC (const Pel *pSrc, Int iSrcStride, UInt iWidth, UInt iHeight) |
|
Bool | checkTMctsMvp (TComDataCU *pcCU, Int partIdx=-1) |
|
| TComWeightPrediction () |
|
Void | getWpScaling (TComDataCU *const pcCU, const Int iRefIdx0, const Int iRefIdx1, WPScalingParam *&wp0, WPScalingParam *&wp1) |
| derivation of wp tables More...
|
|
Void | addWeightBi (const TComYuv *pcYuvSrc0, const TComYuv *pcYuvSrc1, const BitDepths &bitDepths, const UInt iPartUnitIdx, const UInt uiWidth, const UInt uiHeight, const WPScalingParam *const wp0, const WPScalingParam *const wp1, TComYuv *const rpcYuvDst, const Bool bRoundLuma=true) |
| weighted averaging for bi-pred More...
|
|
Void | addWeightUni (const TComYuv *const pcYuvSrc0, const BitDepths &bitDepths, const UInt iPartUnitIdx, const UInt uiWidth, const UInt uiHeight, const WPScalingParam *const wp0, TComYuv *const rpcYuvDst) |
| weighted averaging for uni-pred More...
|
|
Void | xWeightedPredictionUni (TComDataCU *const pcCU, const TComYuv *const pcYuvSrc, const UInt uiPartAddr, const Int iWidth, const Int iHeight, const RefPicList eRefPicList, TComYuv *pcYuvPred, const Int iRefIdx=-1) |
| weighted prediction for uni-pred More...
|
|
Void | xWeightedPredictionBi (TComDataCU *const pcCU, const TComYuv *const pcYuvSrc0, const TComYuv *const pcYuvSrc1, const Int iRefIdx0, const Int iRefIdx1, const UInt uiPartIdx, const Int iWidth, const Int iHeight, TComYuv *pcYuvDst) |
| weighted prediction for bi-pred More...
|
|
|
Void | setDistParamComp (ComponentID compIdx) |
|
Void | xGetLLSPrediction (const Pel *pSrc0, Int iSrcStride, Pel *pDst0, Int iDstStride, UInt uiWidth, UInt uiHeight, UInt uiExt0, const ChromaFormat chFmt) |
|
Void | xPredIntraAng (Int bitDepth, const Pel *pSrc, Int srcStride, Pel *pDst, Int dstStride, UInt width, UInt height, ChannelType channelType, UInt dirMode, const Bool bEnableEdgeFilters) |
|
Void | xPredIntraPlanar (const Pel *pSrc, Int srcStride, Pel *rpDst, Int dstStride, UInt width, UInt height) |
|
Void | xPredInterUni (TComDataCU *pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, RefPicList eRefPicList, TComYuv *pcYuvPred, Bool bi=false) |
|
Void | xPredInterBi (TComDataCU *pcCU, UInt uiPartAddr, Int iWidth, Int iHeight, TComYuv *pcYuvPred) |
|
Void | xPredInterBlk (const ComponentID compID, TComDataCU *cu, TComPicYuv *refPic, UInt partAddr, TComMv *mv, Int width, Int height, TComYuv *dstPic, Bool bi, const Int bitDepth) |
| Generate motion-compensated block. More...
|
|
Void | xWeightedAverage (TComYuv *pcYuvSrc0, TComYuv *pcYuvSrc1, Int iRefIdx0, Int iRefIdx1, UInt uiPartAddr, Int iWidth, Int iHeight, TComYuv *pcYuvDst, const BitDepths &clipBitDepths) |
|
Void | xDCPredFiltering (const Pel *pSrc, Int iSrcStride, Pel *pDst, Int iDstStride, Int iWidth, Int iHeight, ChannelType channelType) |
|
Bool | xCheckIdenticalMotion (TComDataCU *pcCU, UInt PartAddr) |
|
Void | destroy () |
|
|
TCoeff ** | m_ppcQTTempCoeff [MAX_NUM_COMPONENT] |
|
TCoeff ** | m_ppcQTTempArlCoeff [MAX_NUM_COMPONENT] |
|
UChar * | m_puhQTTempTrIdx |
|
UChar * | m_puhQTTempCbf [MAX_NUM_COMPONENT] |
|
TComYuv * | m_pcQTTempTComYuv |
|
TComYuv | m_tmpYuvPred |
|
SChar * | m_phQTTempCrossComponentPredictionAlpha [MAX_NUM_COMPONENT] |
|
Pel * | m_pSharedPredTransformSkip [MAX_NUM_COMPONENT] |
|
TCoeff * | m_pcQTTempTUCoeff [MAX_NUM_COMPONENT] |
|
UChar * | m_puhQTTempTransformSkipFlag [MAX_NUM_COMPONENT] |
|
TComYuv | m_pcQTTempTransformSkipTComYuv |
|
TCoeff * | m_ppcQTTempTUArlCoeff [MAX_NUM_COMPONENT] |
|
| TEncSearch () |
|
virtual | ~TEncSearch () |
|
Void | init (TEncCfg *pcEncCfg, TComTrQuant *pcTrQuant, Int iSearchRange, Int bipredSearchRange, MESearchMethod motionEstimationSearchMethod, const UInt maxCUWidth, const UInt maxCUHeight, const UInt maxTotalCUDepth, TEncEntropy *pcEntropyCoder, TComRdCost *pcRdCost, TEncSbac ***pppcRDSbacCoder, TEncSbac *pcRDGoOnSbacCoder) |
|
Void | destroy () |
|
Void | estIntraPredLumaQT (TComDataCU *pcCU, TComYuv *pcOrgYuv, TComYuv *pcPredYuv, TComYuv *pcResiYuv, TComYuv *pcRecoYuv, Pel resiLuma[NUMBER_OF_STORED_RESIDUAL_TYPES][MAX_CU_SIZE *MAX_CU_SIZE]) |
|
Void | estIntraPredChromaQT (TComDataCU *pcCU, TComYuv *pcOrgYuv, TComYuv *pcPredYuv, TComYuv *pcResiYuv, TComYuv *pcRecoYuv, Pel resiLuma[NUMBER_OF_STORED_RESIDUAL_TYPES][MAX_CU_SIZE *MAX_CU_SIZE]) |
|
Void | predInterSearch (TComDataCU *pcCU, TComYuv *pcOrgYuv, TComYuv *pcPredYuv, TComYuv *pcResiYuv, TComYuv *pcRecoYuv, Bool bUseRes=false, Bool bUseMRG=false) |
| encoder estimation - inter prediction (non-skip) More...
|
|
Void | encodeResAndCalcRdInterCU (TComDataCU *pcCU, TComYuv *pcYuvOrg, TComYuv *pcYuvPred, TComYuv *pcYuvResi, TComYuv *pcYuvResiBest, TComYuv *pcYuvRec, Bool bSkipResidual) |
| encode residual and compute rd-cost for inter mode More...
|
|
Void | xEncPCM (TComDataCU *pcCU, UInt uiAbsPartIdx, Pel *piOrg, Pel *piPCM, Pel *piPred, Pel *piResi, Pel *piReco, UInt uiStride, UInt uiWidth, UInt uiHeight, const ComponentID compID) |
|
Void | IPCMSearch (TComDataCU *pcCU, TComYuv *pcOrgYuv, TComYuv *rpcPredYuv, TComYuv *rpcResiYuv, TComYuv *rpcRecoYuv) |
| Function for PCM mode estimation. More...
|
|
Distortion | xPatternRefinement (TComPattern *pcPatternKey, TComMv baseRefMv, Int iFrac, TComMv &rcMvFrac, Bool bAllowUseOfHadamard) |
| sub-function for motion vector refinement used in fractional-pel accuracy More...
|
|
__inline Void | xTZSearchHelp (const TComPattern *const pcPatternKey, IntTZSearchStruct &rcStruct, const Int iSearchX, const Int iSearchY, const UChar ucPointNr, const UInt uiDistance) |
|
__inline Void | xTZ2PointSearch (const TComPattern *const pcPatternKey, IntTZSearchStruct &rcStruct, const TComMv *const pcMvSrchRngLT, const TComMv *const pcMvSrchRngRB) |
|
__inline Void | xTZ8PointSquareSearch (const TComPattern *const pcPatternKey, IntTZSearchStruct &rcStruct, const TComMv *const pcMvSrchRngLT, const TComMv *const pcMvSrchRngRB, const Int iStartX, const Int iStartY, const Int iDist) |
|
__inline Void | xTZ8PointDiamondSearch (const TComPattern *const pcPatternKey, IntTZSearchStruct &rcStruct, const TComMv *const pcMvSrchRngLT, const TComMv *const pcMvSrchRngRB, const Int iStartX, const Int iStartY, const Int iDist, const Bool bCheckCornersAtDist1) |
|
Void | xGetInterPredictionError (TComDataCU *pcCU, TComYuv *pcYuvOrg, Int iPartIdx, Distortion &ruiSAD, Bool Hadamard) |
|
Void | xEncSubdivCbfQT (TComTU &rTu, Bool bLuma, Bool bChroma) |
|
Void | xEncCoeffQT (TComTU &rTu, ComponentID component, Bool bRealCoeff) |
|
Void | xEncIntraHeader (TComDataCU *pcCU, UInt uiTrDepth, UInt uiAbsPartIdx, Bool bLuma, Bool bChroma) |
|
UInt | xGetIntraBitsQT (TComTU &rTu, Bool bLuma, Bool bChroma, Bool bRealCoeff) |
|
UInt | xGetIntraBitsQTChroma (TComTU &rTu, ComponentID compID, Bool bRealCoeff) |
|
Void | xIntraCodingTUBlock (TComYuv *pcOrgYuv, TComYuv *pcPredYuv, TComYuv *pcResiYuv, Pel resiLuma[NUMBER_OF_STORED_RESIDUAL_TYPES][MAX_CU_SIZE *MAX_CU_SIZE], const Bool checkCrossCPrediction, Distortion &ruiDist, const ComponentID compID, TComTU &rTu, Int default0Save1Load2=0) |
|
Void | xRecurIntraCodingLumaQT (TComYuv *pcOrgYuv, TComYuv *pcPredYuv, TComYuv *pcResiYuv, Pel resiLuma[NUMBER_OF_STORED_RESIDUAL_TYPES][MAX_CU_SIZE *MAX_CU_SIZE], Distortion &ruiDistY, Bool bCheckFirst, Double &dRDCost, TComTU &rTu) |
|
Void | xSetIntraResultLumaQT (TComYuv *pcRecoYuv, TComTU &rTu) |
|
Void | xStoreCrossComponentPredictionResult (Pel *pResiLuma, const Pel *pBestLuma, TComTU &rTu, const Int xOffset, const Int yOffset, const Int strideResi, const Int strideBest) |
|
SChar | xCalcCrossComponentPredictionAlpha (TComTU &rTu, const ComponentID compID, const Pel *piResiL, const Pel *piResiC, const Int width, const Int height, const Int strideL, const Int strideC) |
|
Void | xRecurIntraChromaCodingQT (TComYuv *pcOrgYuv, TComYuv *pcPredYuv, TComYuv *pcResiYuv, Pel resiLuma[NUMBER_OF_STORED_RESIDUAL_TYPES][MAX_CU_SIZE *MAX_CU_SIZE], Distortion &ruiDist, TComTU &rTu) |
|
Void | xSetIntraResultChromaQT (TComYuv *pcRecoYuv, TComTU &rTu) |
|
Void | xStoreIntraResultQT (const ComponentID compID, TComTU &rTu) |
|
Void | xLoadIntraResultQT (const ComponentID compID, TComTU &rTu) |
|
Void | xEstimateMvPredAMVP (TComDataCU *pcCU, TComYuv *pcOrgYuv, UInt uiPartIdx, RefPicList eRefPicList, Int iRefIdx, TComMv &rcMvPred, Bool bFilled=false, Distortion *puiDistBiP=0) |
|
Void | xCheckBestMVP (TComDataCU *pcCU, RefPicList eRefPicList, TComMv cMv, TComMv &rcMvPred, Int &riMVPIdx, UInt &ruiBits, Distortion &ruiCost) |
|
Distortion | xGetTemplateCost (TComDataCU *pcCU, UInt uiPartAddr, TComYuv *pcOrgYuv, TComYuv *pcTemplateCand, TComMv cMvCand, Int iMVPIdx, Int iMVPNum, RefPicList eRefPicList, Int iRefIdx, Int iSizeX, Int iSizeY) |
|
Void | xCopyAMVPInfo (AMVPInfo *pSrc, AMVPInfo *pDst) |
|
UInt | xGetMvpIdxBits (Int iIdx, Int iNum) |
|
Void | xGetBlkBits (PartSize eCUMode, Bool bPSlice, Int iPartIdx, UInt uiLastMode, UInt uiBlkBit[3]) |
|
Void | xMergeEstimation (TComDataCU *pcCU, TComYuv *pcYuvOrg, Int iPartIdx, UInt &uiInterDir, TComMvField *pacMvField, UInt &uiMergeIndex, Distortion &ruiCost, TComMvField *cMvFieldNeighbours, UChar *uhInterDirNeighbours, Int &numValidMergeCand) |
| estimation of best merge coding More...
|
|
Void | xRestrictBipredMergeCand (TComDataCU *pcCU, UInt puIdx, TComMvField *mvFieldNeighbours, UChar *interDirNeighbours, Int numValidMergeCand) |
|
Void | xMotionEstimation (TComDataCU *pcCU, TComYuv *pcYuvOrg, Int iPartIdx, RefPicList eRefPicList, TComMv *pcMvPred, Int iRefIdxPred, TComMv &rcMv, UInt &ruiBits, Distortion &ruiCost, Bool bBi=false) |
|
Void | xTZSearch (const TComDataCU *const pcCU, const TComPattern *const pcPatternKey, const Pel *const piRefY, const Int iRefStride, const TComMv *const pcMvSrchRngLT, const TComMv *const pcMvSrchRngRB, TComMv &rcMv, Distortion &ruiSAD, const TComMv *const pIntegerMv2Nx2NPred, const Bool bExtendedSettings) |
|
Void | xTZSearchSelective (const TComDataCU *const pcCU, const TComPattern *const pcPatternKey, const Pel *const piRefY, const Int iRefStride, const TComMv *const pcMvSrchRngLT, const TComMv *const pcMvSrchRngRB, TComMv &rcMv, Distortion &ruiSAD, const TComMv *const pIntegerMv2Nx2NPred) |
|
Void | xSetSearchRange (const TComDataCU *const pcCU, const TComMv &cMvPred, const Int iSrchRng, TComMv &rcMvSrchRngLT, TComMv &rcMvSrchRngRB, const TComPattern *const pcPatternKey) |
|
Void | xInitTileBorders (const TComDataCU *const pcCU, TComPattern *pcPatternKey) |
|
Void | xPatternSearchFast (const TComDataCU *const pcCU, const TComPattern *const pcPatternKey, const Pel *const piRefY, const Int iRefStride, const TComMv *const pcMvSrchRngLT, const TComMv *const pcMvSrchRngRB, TComMv &rcMv, Distortion &ruiSAD, const TComMv *const pIntegerMv2Nx2NPred) |
|
Void | xPatternSearch (const TComPattern *const pcPatternKey, const Pel *piRefY, const Int iRefStride, const TComMv *const pcMvSrchRngLT, const TComMv *const pcMvSrchRngRB, TComMv &rcMv, Distortion &ruiSAD) |
|
Void | xPatternSearchFracDIF (Bool bIsLosslessCoded, TComPattern *pcPatternKey, Pel *piRefY, Int iRefStride, TComMv *pcMvInt, TComMv &rcMvHalf, TComMv &rcMvQter, Distortion &ruiCost) |
|
Void | xExtDIFUpSamplingH (TComPattern *pcPattern) |
| Generate half-sample interpolated block. More...
|
|
Void | xExtDIFUpSamplingQ (TComPattern *pcPatternKey, TComMv halfPelRef) |
| Generate quarter-sample interpolated blocks. More...
|
|
Void | xEncodeInterResidualQT (const ComponentID compID, TComTU &rTu) |
|
Void | xEstimateInterResidualQT (TComYuv *pcResi, Double &rdCost, UInt &ruiBits, Distortion &ruiDist, Distortion *puiZeroDist, TComTU &rTu) |
|
Void | xSetInterResidualQTData (TComYuv *pcResi, Bool bSpatial, TComTU &rTu) |
|
UInt | xModeBitsIntra (TComDataCU *pcCU, UInt uiMode, UInt uiPartOffset, UInt uiDepth, const ChannelType compID) |
|
UInt | xUpdateCandList (UInt uiMode, Double uiCost, UInt uiFastCandNum, UInt *CandModeList, Double *CandCostList) |
|
Void | xAddSymbolBitsInter (TComDataCU *pcCU, UInt &ruiBits) |
|
Void | setWpScalingDistParam (TComDataCU *pcCU, Int iRefIdx, RefPicList eRefPicListCur) |
| set wp tables More...
|
|