Showing the changes to codec/encoder/core/src/encoder.cpp (1 of 5 files). Show all
Unified · Split
| @@ -153,6 +153,7 @@ void WelsInitBGDFunc (SWelsFuncPtrList* pFuncList, const bool kbEnableBackground · 152 unmodified lines | ||
| 153 | 153 | */ |
| 154 | 154 | int32_t InitFunctionPointers (SWelsFuncPtrList* pFuncList, SWelsSvcCodingParam* pParam, uint32_t uiCpuFlag) { |
| 155 | 155 | int32_t iReturn = ENC_RETURN_SUCCESS; |
| 156 | + bool bScreenContent = (SCREEN_CONTENT_REAL_TIME == pParam->iUsageType); | |
| 156 | 157 | |
| 157 | 158 | /* Functionality utilization of CPU instructions dependency */ |
| 158 | 159 | pFuncList->pfSetMemZeroSize8 = WelsSetMemZero_c; // confirmed_safe_unsafe_usage |
| @@ -184,13 +185,15 @@ int32_t InitFunctionPointers (SWelsFuncPtrList* pFuncList, SWelsSvcCodingParam* · 25 unmodified lines | ||
| 184 | 185 | WelsInitIntraPredFuncs (pFuncList, uiCpuFlag); |
| 185 | 186 | |
| 186 | 187 | /* ME func */ |
| 187 | − WelsInitMeFunc (pFuncList, uiCpuFlag, SCREEN_CONTENT_REAL_TIME == pParam->iUsageType); | |
| 188 | + WelsInitMeFunc (pFuncList, uiCpuFlag, bScreenContent); | |
| 188 | 189 | |
| 189 | 190 | /* sad, satd, average */ |
| 190 | 191 | WelsInitSampleSadFunc (pFuncList, uiCpuFlag); |
| 191 | 192 | |
| 192 | 193 | // |
| 193 | 194 | WelsInitBGDFunc (pFuncList, pParam->bEnableBackgroundDetection); |
| 195 | + WelsInitScrollingSkipFunc (pFuncList, bScreenContent&&(pParam->bEnableSceneChangeDetect)); | |
| 196 | + | |
| 194 | 197 | // for pfGetVarianceFromIntraVaa function ptr adaptive by CPU features, 6/7/2010 |
| 195 | 198 | InitIntraAnalysisVaaInfo (pFuncList, uiCpuFlag); |
| 196 | 199 | |