Showing the changes to codec/encoder/core/src/encoder_ext.cpp (1 of 4 files). Show all
Unified · Split
| @@ -2471,7 +2471,8 @@ void PreprocessSliceCoding (sWelsEncCtx* pCtx) { · 2470 unmodified lines | ||
| 2471 | 2471 | if (P_SLICE == pCtx->eSliceType) { |
| 2472 | 2472 | if (kbBaseAvail) { |
| 2473 | 2473 | if (pCtx->pSvcParam->iSpatialLayerNum == (pCurLayer->sLayerInfo.sNalHeaderExt.uiDependencyId + 1)) { // |
| 2474 | − pCtx->pFuncList->pfMotionSearch = WelsMotionEstimateSearchSad; | |
| 2474 | + pCtx->pFuncList->pfMotionSearch = WelsMotionEstimateSearch; | |
| 2475 | + pCtx->pFuncList->pfCalculateSatd = NotCalculateSatdCost; | |
| 2475 | 2476 | pCtx->pFuncList->pfFirstIntraMode = WelsMdFirstIntraMode; |
| 2476 | 2477 | pCtx->pFuncList->pfIntraFineMd = WelsMdIntraFinePartitionVaa; |
| 2477 | 2478 | pCtx->pFuncList->pfInterFineMd = WelsMdInterFinePartitionVaa; |
| @@ -2480,7 +2481,8 @@ void PreprocessSliceCoding (sWelsEncCtx* pCtx) { · 2 unmodified lines | ||
| 2480 | 2481 | pCtx->pFuncList->sSampleDealingFuncs.pfIntra16x16Combined3Sad; |
| 2481 | 2482 | pCtx->pFuncList->sSampleDealingFuncs.pfMdCost = pCtx->pFuncList->sSampleDealingFuncs.pfSampleSad; |
| 2482 | 2483 | } else { |
| 2483 | − pCtx->pFuncList->pfMotionSearch = WelsMotionEstimateSearchSatd; | |
| 2484 | + pCtx->pFuncList->pfMotionSearch = WelsMotionEstimateSearch; | |
| 2485 | + pCtx->pFuncList->pfCalculateSatd = CalculateSatdCost; | |
| 2484 | 2486 | pCtx->pFuncList->pfFirstIntraMode = WelsMdFirstIntraMode; |
| 2485 | 2487 | pCtx->pFuncList->pfIntraFineMd = WelsMdIntraFinePartition; |
| 2486 | 2488 | pCtx->pFuncList->pfInterFineMd = WelsMdInterFinePartition; |
| @@ -2494,7 +2496,8 @@ void PreprocessSliceCoding (sWelsEncCtx* pCtx) { · 7 unmodified lines | ||
| 2494 | 2496 | } else { |
| 2495 | 2497 | //case 3: pBase layer MD + encoding |
| 2496 | 2498 | if (pCurLayer->sLayerInfo.sNalHeaderExt.uiDependencyId + 1 == pCtx->pSvcParam->iSpatialLayerNum) { |
| 2497 | − pCtx->pFuncList->pfMotionSearch = WelsMotionEstimateSearchSad; | |
| 2499 | + pCtx->pFuncList->pfMotionSearch = WelsMotionEstimateSearch; | |
| 2500 | + pCtx->pFuncList->pfCalculateSatd = NotCalculateSatdCost; | |
| 2498 | 2501 | pCtx->pFuncList->pfFirstIntraMode = WelsMdFirstIntraMode; |
| 2499 | 2502 | pCtx->pFuncList->pfIntraFineMd = WelsMdIntraFinePartitionVaa; |
| 2500 | 2503 | pCtx->pFuncList->pfInterFineMd = WelsMdInterFinePartitionVaa; |
| @@ -2503,7 +2506,8 @@ void PreprocessSliceCoding (sWelsEncCtx* pCtx) { · 2 unmodified lines | ||
| 2503 | 2506 | pCtx->pFuncList->sSampleDealingFuncs.pfIntra16x16Combined3Sad; |
| 2504 | 2507 | pCtx->pFuncList->sSampleDealingFuncs.pfIntra8x8Combined3 = pCtx->pFuncList->sSampleDealingFuncs.pfIntra8x8Combined3Sad; |
| 2505 | 2508 | } else { |
| 2506 | − pCtx->pFuncList->pfMotionSearch = WelsMotionEstimateSearchSatd; | |
| 2509 | + pCtx->pFuncList->pfMotionSearch = WelsMotionEstimateSearch; | |
| 2510 | + pCtx->pFuncList->pfCalculateSatd = CalculateSatdCost; | |
| 2507 | 2511 | pCtx->pFuncList->pfFirstIntraMode = WelsMdFirstIntraMode; |
| 2508 | 2512 | pCtx->pFuncList->pfIntraFineMd = WelsMdIntraFinePartition; |
| 2509 | 2513 | pCtx->pFuncList->pfInterFineMd = WelsMdInterFinePartition; |