|
| 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...
|
| |