Showing the changes to codec/encoder/core/src/encoder_ext.cpp (1 of 5 files). Show all
Unified · Split
| @@ -3071,6 +3071,20 @@ void PreprocessSliceCoding (sWelsEncCtx* pCtx) { · 3070 unmodified lines | ||
| 3071 | 3071 | // update some layer dependent variable to save judgements in mb-level |
| 3072 | 3072 | pCurLayer->bSatdInMdFlag = ((pFuncList->sSampleDealingFuncs.pfMeCost == pFuncList->sSampleDealingFuncs.pfSampleSatd) |
| 3073 | 3073 | && (pFuncList->sSampleDealingFuncs.pfMdCost == pFuncList->sSampleDealingFuncs.pfSampleSatd)); |
| 3074 | + | |
| 3075 | + const int32_t kiCurDid = pCtx->uiDependencyId; | |
| 3076 | + const int32_t kiCurTid = pCtx->uiTemporalId; | |
| 3077 | + if (pCurLayer->bDeblockingParallelFlag && (pCurLayer->iLoopFilterDisableIdc != 1) | |
| 3078 | +#if !defined(ENABLE_FRAME_DUMP) | |
| 3079 | + && ( NRI_PRI_LOWEST != pCtx->eNalPriority ) | |
| 3080 | + && (pCtx->pSvcParam->sDependencyLayers[kiCurDid].iHighestTemporalId == 0 | |
| 3081 | + || kiCurTid < pCtx->pSvcParam->sDependencyLayers[kiCurDid].iHighestTemporalId) | |
| 3082 | +#endif// !ENABLE_FRAME_DUMP | |
| 3083 | + ) { | |
| 3084 | + pFuncList->pfDeblocking.pfDeblockingFilterSlice = DeblockingFilterSliceAvcbase; | |
| 3085 | + } else { | |
| 3086 | + pFuncList->pfDeblocking.pfDeblockingFilterSlice = DeblockingFilterSliceAvcbaseNull; | |
| 3087 | + } | |
| 3074 | 3088 | } |
| 3075 | 3089 | |
| 3076 | 3090 | /*! |