Showing the changes to codec/encoder/core/src/svc_encode_slice.cpp (1 of 20 files). Show all
Unified · Split
| @@ -631,8 +631,9 @@ void WelsPSliceMdEncDynamic (sWelsEncCtx* pEncCtx, SSlice* pSlice, const bool kb · 630 unmodified lines | ||
| 631 | 631 | void WelsCodePSlice (sWelsEncCtx* pEncCtx, SSlice* pSlice) { |
| 632 | 632 | //pSlice-level init should be outside and before this function |
| 633 | 633 | SDqLayer* pCurLayer = pEncCtx->pCurDqLayer; |
| 634 | + | |
| 634 | 635 | const bool kbBaseAvail = pCurLayer->bBaseLayerAvailableFlag; |
| 635 | − const bool kbHighestSpatial = pEncCtx->pSvcParam->iNumDependencyLayer == | |
| 636 | + const bool kbHighestSpatial = pEncCtx->pSvcParam->iSpatialLayerNum == | |
| 636 | 637 | (pCurLayer->sLayerInfo.sNalHeaderExt.uiDependencyId + 1); |
| 637 | 638 | |
| 638 | 639 | //MD switch |
| @@ -649,8 +650,9 @@ void WelsCodePSlice (sWelsEncCtx* pEncCtx, SSlice* pSlice) { · 10 unmodified lines | ||
| 649 | 650 | void WelsCodePOverDynamicSlice (sWelsEncCtx* pEncCtx, SSlice* pSlice) { |
| 650 | 651 | //pSlice-level init should be outside and before this function |
| 651 | 652 | SDqLayer* pCurLayer = pEncCtx->pCurDqLayer; |
| 653 | + | |
| 652 | 654 | const bool kbBaseAvail = pCurLayer->bBaseLayerAvailableFlag; |
| 653 | − const bool kbHighestSpatial = pEncCtx->pSvcParam->iNumDependencyLayer == | |
| 655 | + const bool kbHighestSpatial = pEncCtx->pSvcParam->iSpatialLayerNum == | |
| 654 | 656 | (pCurLayer->sLayerInfo.sNalHeaderExt.uiDependencyId + 1); |
| 655 | 657 | |
| 656 | 658 | //MD switch |
| @@ -681,7 +683,7 @@ void WelsCodeOneSlice (sWelsEncCtx* pEncCtx, const int32_t kiSliceIdx, const int · 24 unmodified lines | ||
| 681 | 683 | SNalUnitHeaderExt* pNalHeadExt = &pCurLayer->sLayerInfo.sNalHeaderExt; |
| 682 | 684 | SSlice* pCurSlice = &pCurLayer->sLayerInfo.pSliceInLayer[kiSliceIdx]; |
| 683 | 685 | SBitStringAux* pBs = pCurSlice->pSliceBsa; |
| 684 | − const int32_t kiDynamicSliceFlag = (pEncCtx->pSvcParam->sDependencyLayers[pEncCtx->uiDependencyId].sMso.uiSliceMode == | |
| 686 | + const int32_t kiDynamicSliceFlag = (pEncCtx->pSvcParam->sDependencyLayers[pEncCtx->uiDependencyId].sSliceCfg.uiSliceMode == | |
| 685 | 687 | SM_DYN_SLICE); |
| 686 | 688 | |
| 687 | 689 | assert (kiSliceIdx == pCurSlice->uiSliceIdx); |
| @@ -916,7 +918,7 @@ void WelsMdInterMbLoop (sWelsEncCtx* pEncCtx, SSlice* pSlice, void* pWelsMd, con · 228 unmodified lines | ||
| 916 | 918 | int32_t iCurMbIdx = -1; |
| 917 | 919 | int32_t iMbSkipRun = 0; |
| 918 | 920 | const int32_t kiTotalNumMb = pCurLayer->iMbWidth * pCurLayer->iMbHeight; |
| 919 | − const int32_t kiMvdInterTableSize = (pEncCtx->pSvcParam->iNumDependencyLayer == 1 ? 648 : 972); | |
| 921 | + const int32_t kiMvdInterTableSize = (pEncCtx->pSvcParam->iSpatialLayerNum == 1 ? 648 : 972); | |
| 920 | 922 | const int32_t kiMvdInterTableStride = 1 + (kiMvdInterTableSize << 1); |
| 921 | 923 | uint16_t* pMvdCostTableInter = &pEncCtx->pMvdCostTableInter[kiMvdInterTableSize]; |
| 922 | 924 | const int32_t kiSliceIdx = pSlice->uiSliceIdx; |
| @@ -999,7 +1001,7 @@ void WelsMdInterMbLoopOverDynamicSlice (sWelsEncCtx* pEncCtx, SSlice* pSlice, vo · 76 unmodified lines | ||
| 999 | 1001 | int32_t iNextMbIdx = kiSliceFirstMbXY; |
| 1000 | 1002 | int32_t iCurMbIdx = -1; |
| 1001 | 1003 | int32_t iMbSkipRun = 0; |
| 1002 | − const int32_t kiMvdInterTableSize = (pEncCtx->pSvcParam->iNumDependencyLayer == 1 ? 648 : 972); | |
| 1004 | + const int32_t kiMvdInterTableSize = (pEncCtx->pSvcParam->iSpatialLayerNum == 1 ? 648 : 972); | |
| 1003 | 1005 | const int32_t kiMvdInterTableStride = 1 + (kiMvdInterTableSize << 1); |
| 1004 | 1006 | uint16_t* pMvdCostTableInter = &pEncCtx->pMvdCostTableInter[kiMvdInterTableSize]; |
| 1005 | 1007 | const int32_t kiSliceIdx = pSlice->uiSliceIdx; |