Changeset 902 in 3DVCSoftware for branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibCommon
- Timestamp:
- 9 Apr 2014, 09:39:39 (11 years ago)
- Location:
- branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibCommon
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibCommon/TComRom.cpp
r872 r902 359 359 360 360 Char g_aucConvertToBit [ MAX_CU_SIZE+1 ]; 361 361 #if MTK_LOW_LATENCY_IC_ENCODING_H0086 362 UInt g_aICEnableCANDIDATE[10] = { 0, }; 363 UInt g_aICEnableNUM[ 10 ] = { 0, }; 364 Int g_lastlayer=0; 365 #endif 362 366 #if ENC_DEC_TRACE 363 367 FILE* g_hTrace = NULL; -
branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibCommon/TComRom.h
r872 r902 189 189 extern Char g_aucConvertToBit [ MAX_CU_SIZE+1 ]; // from width to log2(width)-2 190 190 191 #if MTK_LOW_LATENCY_IC_ENCODING_H0086 192 extern UInt g_aICEnableCANDIDATE[10]; 193 extern UInt g_aICEnableNUM[ 10 ]; //10 layers 194 extern Int g_lastlayer; 195 #endif 196 191 197 #ifndef ENC_DEC_TRACE 192 198 #define ENC_DEC_TRACE 0 -
branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibCommon/TComSlice.cpp
r884 r902 3220 3220 #endif 3221 3221 #if H_3D_IC 3222 #if MTK_LOW_LATENCY_IC_ENCODING_H0086 3223 Void TComSlice::xSetApplyIC(Bool bUseLowLatencyICEnc) 3224 #else 3222 3225 Void TComSlice::xSetApplyIC() 3223 { 3226 #endif 3227 { 3228 #if MTK_LOW_LATENCY_IC_ENCODING_H0086 3229 if(bUseLowLatencyICEnc) 3230 { 3231 Bool existInterViewRef=false; 3232 TComPic* pcCurrPic = getPic(); 3233 TComPic* pcRefPic = NULL; 3234 for ( Int i = 0; (i < getNumRefIdx( REF_PIC_LIST_0 )) && !existInterViewRef; i++ ) 3235 { 3236 pcRefPic = getRefPic( REF_PIC_LIST_0, i ); 3237 if ( pcRefPic != NULL ) 3238 { 3239 if ( pcCurrPic->getViewIndex() != pcRefPic->getViewIndex() ) 3240 { 3241 existInterViewRef = true; 3242 } 3243 } 3244 } 3245 3246 for ( Int i = 0; (i < getNumRefIdx( REF_PIC_LIST_1 )) && !existInterViewRef; i++ ) 3247 { 3248 pcRefPic = getRefPic( REF_PIC_LIST_1, i ); 3249 if ( pcRefPic != NULL ) 3250 { 3251 if ( pcCurrPic->getViewIndex() != pcRefPic->getViewIndex() ) 3252 { 3253 existInterViewRef = true; 3254 } 3255 } 3256 } 3257 3258 if(!existInterViewRef) 3259 { 3260 m_bApplyIC = false; 3261 } 3262 else 3263 { 3264 Int curLayer=getDepth(); 3265 if( curLayer>9) curLayer=9; // Max layer is 10 3266 3267 m_bApplyIC = true; 3268 Int refLayer = curLayer-1; 3269 if( (refLayer>=0) && (g_aICEnableCANDIDATE[refLayer]>0) ) 3270 { 3271 Double ratio=Double(g_aICEnableNUM[refLayer])/Double(g_aICEnableCANDIDATE[refLayer]); 3272 3273 if( ratio > MTK_LOW_LATENCY_IC_ENCODING_THRESHOLD_H0086) 3274 { 3275 m_bApplyIC=true; 3276 } 3277 else 3278 { 3279 m_bApplyIC=false; 3280 } 3281 } 3282 g_aICEnableNUM[curLayer]=0; 3283 g_aICEnableCANDIDATE[curLayer]=0; 3284 g_lastlayer=getDepth(); 3285 } 3286 } 3287 else 3288 { 3289 #endif 3224 3290 Int iMaxPelValue = ( 1 << g_bitDepthY ); 3225 3291 Int *aiRefOrgHist; … … 3295 3361 aiCurrHist = NULL; 3296 3362 aiRefOrgHist = NULL; 3363 #if MTK_LOW_LATENCY_IC_ENCODING_H0086 3364 }//if(bUseLowLatencyICEnc) 3365 #endif 3297 3366 } 3298 3367 #endif -
branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibCommon/TComSlice.h
r884 r902 2179 2179 Bool getApplyIC() { return m_bApplyIC; } 2180 2180 Void xSetApplyIC(); 2181 #if MTK_LOW_LATENCY_IC_ENCODING_H0086 2182 Void xSetApplyIC(Bool bUseLowLatencyICEnc); 2183 #endif 2181 2184 Void setIcSkipParseFlag( Bool b ) { m_icSkipParseFlag = b; } 2182 2185 Bool getIcSkipParseFlag() { return m_icSkipParseFlag; } -
branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibCommon/TypeDef.h
r888 r902 118 118 // MTK_IC_FLAG_CABAC_SIMP_G0061 119 119 // SEC_IC_ARP_SIG_G0072, Disabling IC when ARP is enabled, option 1 in JCT3V-G0072, part 2 in JCT3V-G0121 120 121 #define MTK_LOW_LATENCY_IC_ENCODING_H0086 1 // Low-latency IC encoding in JCT3V-H0086 122 #if MTK_LOW_LATENCY_IC_ENCODING_H0086 123 #define MTK_LOW_LATENCY_IC_ENCODING_THRESHOLD_H0086 0.1 // Threshold for low-latency IC encoding in JCT3V-H0086 124 #endif 120 125 121 126 #if H_3D_NBDV
Note: See TracChangeset for help on using the changeset viewer.