Showing the changes to codec/encoder/core/src/svc_encode_slice.cpp (1 of 4 files). Show all
Unified · Split
| @@ -1127,18 +1127,16 @@ void InitSliceRefInfoWithBase (SSlice* pSlice, SSlice* pBaseSlice, const uint8_t · 1126 unmodified lines | ||
| 1127 | 1127 | |
| 1128 | 1128 | } |
| 1129 | 1129 | |
| 1130 | −static inline int32_t InitSliceRC (SSlice* pSlice, const int32_t kiGlobalQp, const int32_t kiBitsPerMb) { | |
| 1130 | +static inline int32_t InitSliceRC (SSlice* pSlice, const int32_t kiGlobalQp) { | |
| 1131 | 1131 | |
| 1132 | − if (NULL == pSlice || kiGlobalQp < 0 || kiBitsPerMb < 0) | |
| 1132 | + if (NULL == pSlice || kiGlobalQp < 0) | |
| 1133 | 1133 | return ENC_RETURN_INVALIDINPUT; |
| 1134 | 1134 | |
| 1135 | 1135 | pSlice->sSlicingOverRc.iComplexityIndexSlice = 0; |
| 1136 | 1136 | pSlice->sSlicingOverRc.iCalculatedQpSlice = kiGlobalQp; |
| 1137 | 1137 | pSlice->sSlicingOverRc.iTotalQpSlice = 0; |
| 1138 | 1138 | pSlice->sSlicingOverRc.iTotalMbSlice = 0; |
| 1139 | − pSlice->sSlicingOverRc.iTargetBitsSlice = WELS_DIV_ROUND (kiBitsPerMb * | |
| 1140 | − pSlice->iCountMbNumInSlice, | |
| 1141 | − INT_MULTIPLY); | |
| 1139 | + pSlice->sSlicingOverRc.iTargetBitsSlice = 0; | |
| 1142 | 1140 | pSlice->sSlicingOverRc.iFrameBitsSlice = 0; |
| 1143 | 1141 | pSlice->sSlicingOverRc.iGomBitsSlice = 0; |
| 1144 | 1142 | |
| @@ -1158,8 +1156,6 @@ int32_t ReallocateSliceList (sWelsEncCtx* pCtx, · 13 unmodified lines | ||
| 1158 | 1156 | int32_t iRet = 0; |
| 1159 | 1157 | const int32_t kiCurDid = pCtx->uiDependencyId; |
| 1160 | 1158 | int32_t iMaxSliceBufferSize = (pCtx)->iSliceBufferSize[kiCurDid]; |
| 1161 | − int32_t iBitsPerMb = WELS_DIV_ROUND (pCtx->pWelsSvcRc[kiCurDid].iTargetBits * INT_MULTIPLY, | |
| 1162 | − pCtx->pWelsSvcRc[kiCurDid].iNumberMbFrame); | |
| 1163 | 1159 | bool bIndependenceBsBuffer = (pCtx->pSvcParam->iMultipleThreadIdc > 1 && |
| 1164 | 1160 | SM_SINGLE_SLICE != pSliceArgument->uiSliceMode) ? true : false; |
| 1165 | 1161 | |
| @@ -1211,7 +1207,7 @@ int32_t ReallocateSliceList (sWelsEncCtx* pCtx, · 45 unmodified lines | ||
| 1211 | 1207 | InitSliceHeadWithBase (pSlice, pBaseSlice); |
| 1212 | 1208 | InitSliceRefInfoWithBase (pSlice, pBaseSlice, pCtx->iNumRef0); |
| 1213 | 1209 | |
| 1214 | − iRet = InitSliceRC (pSlice, pCtx->iGlobalQp, iBitsPerMb); | |
| 1210 | + iRet = InitSliceRC (pSlice, pCtx->iGlobalQp); | |
| 1215 | 1211 | if (ENC_RETURN_SUCCESS != iRet) { |
| 1216 | 1212 | FreeSliceBuffer(pNewSliceList, kiMaxSliceNumNew, pMA, "ReallocateSliceList()::InitSliceBsBuffer()"); |
| 1217 | 1213 | return iRet; |
| @@ -1345,6 +1341,7 @@ int32_t ReallocSliceBuffer (sWelsEncCtx* pCtx) { · 127 unmodified lines | ||
| 1345 | 1341 | pMA->WelsFree (pCurLayer->pCountMbNumInSlice, "pCountMbNumInSlice"); |
| 1346 | 1342 | pCurLayer->pCountMbNumInSlice = pCountMbNumInSlice; |
| 1347 | 1343 | |
| 1344 | + | |
| 1348 | 1345 | for (iSliceIdx = 0; iSliceIdx < iMaxSliceNumNew; iSliceIdx++) { |
| 1349 | 1346 | pCurLayer->ppSliceInLayer[iSliceIdx] = pCurLayer->sSliceThreadInfo.pSliceInThread[0] + iSliceIdx; |
| 1350 | 1347 | } |
| @@ -1358,7 +1355,6 @@ int32_t ReallocSliceBuffer (sWelsEncCtx* pCtx) { · 7 unmodified lines | ||
| 1358 | 1355 | return ENC_RETURN_SUCCESS; |
| 1359 | 1356 | } |
| 1360 | 1357 | |
| 1361 | − | |
| 1362 | 1358 | /* |
| 1363 | 1359 | int32_t ReOrderSliceInLayer (SDqLayer* pCurLayer, |
| 1364 | 1360 | const int32_t kiThreadNum, |