Changeset 125 in SHVCSoftware for trunk/source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h
- Timestamp:
- 16 Apr 2013, 06:39:31 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/Lib/TLibEncoder/TEncSampleAdaptiveOffset.h
r2 r125 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 2, ITU/ISO/IEC6 * Copyright (c) 2010-2013, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 32 32 */ 33 33 34 /** \file TEncAdaptiveLoopFilter.h 34 /** 35 \file TEncSampleAdaptiveOffset.h 35 36 \brief estimation part of sample adaptive offset class (header) 36 37 */ … … 71 72 Int64 ***m_iOffset; //[MAX_NUM_SAO_PART][MAX_NUM_SAO_TYPE][MAX_NUM_SAO_CLASS]; 72 73 Int64 ***m_iOffsetOrg; //[MAX_NUM_SAO_PART][MAX_NUM_SAO_TYPE]; 73 #if SAO_LCU_BOUNDARY74 74 Int64 ****m_count_PreDblk; //[LCU][YCbCr][MAX_NUM_SAO_TYPE][MAX_NUM_SAO_CLASS]; 75 75 Int64 ****m_offsetOrg_PreDblk; //[LCU][YCbCr][MAX_NUM_SAO_TYPE][MAX_NUM_SAO_CLASS]; 76 #endif77 76 Int64 **m_iRate; //[MAX_NUM_SAO_PART][MAX_NUM_SAO_TYPE]; 78 77 Int64 **m_iDist; //[MAX_NUM_SAO_PART][MAX_NUM_SAO_TYPE]; … … 81 80 Int64 *m_iDistOrg; //[MAX_NUM_SAO_PART]; 82 81 Int *m_iTypePartBest; //[MAX_NUM_SAO_PART]; 83 Int m_iOffsetTh; 82 Int m_iOffsetThY; 83 Int m_iOffsetThC; 84 84 Bool m_bUseSBACRD; 85 85 #if SAO_ENCODING_CHOICE … … 108 108 #endif 109 109 110 #if PICTURE_SAO_RDO_FIX111 110 Void runQuadTreeDecision(SAOQTPart *psQTPart, Int iPartIdx, Double &dCostFinal, Int iMaxLevel, Double dLambda, Int yCbCr); 112 111 Void rdoSaoOnePart(SAOQTPart *psQTPart, Int iPartIdx, Double dLambda, Int yCbCr); 113 #else114 Void runQuadTreeDecision(SAOQTPart *psQTPart, Int iPartIdx, Double &dCostFinal, Int iMaxLevel, Double dLambda);115 Void rdoSaoOnePart(SAOQTPart *psQTPart, Int iPartIdx, Double dLambda);116 #endif117 112 118 113 Void disablePartTree(SAOQTPart *psQTPart, Int iPartIdx); 119 114 Void getSaoStats(SAOQTPart *psQTPart, Int iYCbCr); 120 115 Void calcSaoStatsCu(Int iAddr, Int iPartIdx, Int iYCbCr); 121 Void calcSaoStatsBlock( Pel* pRecStart, Pel* pOrgStart, Int stride, Int64** ppStats, Int64** ppCount, UInt width, UInt height, Bool* pbBorderAvail );116 Void calcSaoStatsBlock( Pel* pRecStart, Pel* pOrgStart, Int stride, Int64** ppStats, Int64** ppCount, UInt width, UInt height, Bool* pbBorderAvail, Int iYCbCr); 122 117 Void calcSaoStatsCuOrg(Int iAddr, Int iPartIdx, Int iYCbCr); 123 #if SAO_LCU_BOUNDARY124 118 Void calcSaoStatsCu_BeforeDblk( TComPic* pcPic ); 125 #endif126 119 Void destroyEncBuffer(); 127 120 Void createEncBuffer(); … … 133 126 Void rdoSaoUnitAll(SAOParam *saoParam, Double lambda, Double lambdaChroma); 134 127 #endif 135 #if SAO_SINGLE_MERGE136 128 Void saoComponentParamDist(Int allowMergeLeft, Int allowMergeUp, SAOParam *saoParam, Int addr, Int addrUp, Int addrLeft, Int yCbCr, Double lambda, SaoLcuParam *compSaoParam, Double *distortion); 137 #if SAO_TYPE_SHARING138 129 Void sao2ChromaParamDist(Int allowMergeLeft, Int allowMergeUp, SAOParam *saoParam, Int addr, Int addrUp, Int addrLeft, Double lambda, SaoLcuParam *crSaoParam, SaoLcuParam *cbSaoParam, Double *distortion); 139 #endif140 #else141 Void rdoSaoUnit(Int rx, Int ry, SAOParam *saoParam, Int addr, Int addrUp, Int addrLeft, Int yCbCr, Double lambda);142 #endif143 130 inline Int64 estSaoDist(Int64 count, Int64 offset, Int64 offsetOrg, Int shift); 144 inline Int64 estIterOffset(Int typeIdx, Int classIdx, double lambda, Int64 offsetInput, Int64 count, Int64 offsetOrg, Int shift, Int bitIncrease, Int *currentDistortionTableBo, Double *currentRdCostTableBo);131 inline Int64 estIterOffset(Int typeIdx, Int classIdx, Double lambda, Int64 offsetInput, Int64 count, Int64 offsetOrg, Int shift, Int bitIncrease, Int *currentDistortionTableBo, Double *currentRdCostTableBo, Int offsetTh ); 145 132 inline Int64 estSaoTypeDist(Int compIdx, Int typeIdx, Int shift, Double lambda, Int *currentDistortionTableBo, Double *currentRdCostTableBo); 146 133 Void setMaxNumOffsetsPerPic(Int iVal) {m_maxNumOffsetsPerPic = iVal; }
Note: See TracChangeset for help on using the changeset viewer.