History

slice buffer variable rename:sSliceThreadInfo replace by sSliceBufferInfo

Huade Shi (huashi) committed 9 years ago

Commit ffb65791 parent 097734e5 files · +79 −81Browse files

Showing the changes to codec/encoder/core/src/svc_encode_slice.cpp (1 of 5 files). Show all

Unified · Split

codec/encoder/core/src/svc_encode_slice.cpp+34−34
@@ -985,7 +985,7 @@ int32_t InitAllSlicesInThread (sWelsEncCtx* pCtx) { · 984 unmodified lines
985985 }
986986
987987 for( ; iTheadIdx < pCtx->iActiveThreadsNum; iTheadIdx++ ) {
988− pCurDqLayer->sSliceThreadInfo[iTheadIdx].iCodedSliceNum = 0;
988+ pCurDqLayer->sSliceBufferInfo[iTheadIdx].iCodedSliceNum = 0;
989989 }
990990
991991 return ENC_RETURN_SUCCESS;
@@ -998,11 +998,11 @@ int32_t InitOneSliceInThread (sWelsEncCtx* pCtx, · 6 unmodified lines
998998 const int32_t kiSliceIdx) {
999999
10001000 if (pCtx->pCurDqLayer->bThreadSlcBufferFlag) {
1001− const int32_t kiCodedNumInThread = pCtx->pCurDqLayer->sSliceThreadInfo[kiThreadIdx].iCodedSliceNum;
1002− assert(kiCodedNumInThread <= pCtx->pCurDqLayer->sSliceThreadInfo[kiThreadIdx].iMaxSliceNum -1 );
1003− pSlice = &pCtx->pCurDqLayer->sSliceThreadInfo [kiThreadIdx].pSliceBuffer[kiCodedNumInThread];
1001+ const int32_t kiCodedNumInThread = pCtx->pCurDqLayer->sSliceBufferInfo[kiThreadIdx].iCodedSliceNum;
1002+ assert(kiCodedNumInThread <= pCtx->pCurDqLayer->sSliceBufferInfo[kiThreadIdx].iMaxSliceNum -1 );
1003+ pSlice = &pCtx->pCurDqLayer->sSliceBufferInfo [kiThreadIdx].pSliceBuffer[kiCodedNumInThread];
10041004 } else {
1005− pSlice = &pCtx->pCurDqLayer->sSliceThreadInfo [0].pSliceBuffer[kiSliceIdx];
1005+ pSlice = &pCtx->pCurDqLayer->sSliceBufferInfo [0].pSliceBuffer[kiSliceIdx];
10061006 }
10071007 pSlice->iSliceIdx = kiSliceIdx;
10081008 pSlice->uiThreadIdx = kiThreadIdx;
@@ -1037,15 +1037,15 @@ int32_t InitSliceThreadInfo (sWelsEncCtx* pCtx, · 28 unmodified lines
10371037 }
10381038
10391039 while (iIdx < iSlcBufferNum) {
1040− pDqLayer->sSliceThreadInfo[iIdx].iMaxSliceNum = iMaxSliceNum;
1041− pDqLayer->sSliceThreadInfo[iIdx].iCodedSliceNum = 0;
1042− pDqLayer->sSliceThreadInfo[iIdx].pSliceBuffer = (SSlice*)pMa->WelsMallocz (sizeof (SSlice) * iMaxSliceNum, "pSliceBuffer");
1043− if (NULL == pDqLayer->sSliceThreadInfo[iIdx].pSliceBuffer) {
1040+ pDqLayer->sSliceBufferInfo[iIdx].iMaxSliceNum = iMaxSliceNum;
1041+ pDqLayer->sSliceBufferInfo[iIdx].iCodedSliceNum = 0;
1042+ pDqLayer->sSliceBufferInfo[iIdx].pSliceBuffer = (SSlice*)pMa->WelsMallocz (sizeof (SSlice) * iMaxSliceNum, "pSliceBuffer");
1043+ if (NULL == pDqLayer->sSliceBufferInfo[iIdx].pSliceBuffer) {
10441044 WelsLog (& (pCtx->sLogCtx), WELS_LOG_ERROR,
10451045 "CWelsH264SVCEncoder::InitSliceThreadInfo: pSliceThreadInfo->pSliceBuffer[iIdx] is NULL");
10461046 return ENC_RETURN_MEMALLOCERR;
10471047 }
1048− iRet = InitSliceList (pDqLayer->sSliceThreadInfo[iIdx].pSliceBuffer,
1048+ iRet = InitSliceList (pDqLayer->sSliceBufferInfo[iIdx].pSliceBuffer,
10491049 &pCtx->pOut->sBsWrite,
10501050 iMaxSliceNum,
10511051 pCtx->iSliceBufferSize[kiDlayerIndex],
@@ -1058,9 +1058,9 @@ int32_t InitSliceThreadInfo (sWelsEncCtx* pCtx, · 6 unmodified lines
10581058 }
10591059
10601060 for (; iIdx < MAX_THREADS_NUM; iIdx++) {
1061− pDqLayer->sSliceThreadInfo[iIdx].iMaxSliceNum = 0;
1062− pDqLayer->sSliceThreadInfo[iIdx].iCodedSliceNum = 0;
1063− pDqLayer->sSliceThreadInfo[iIdx].pSliceBuffer = NULL;
1061+ pDqLayer->sSliceBufferInfo[iIdx].iMaxSliceNum = 0;
1062+ pDqLayer->sSliceBufferInfo[iIdx].iCodedSliceNum = 0;
1063+ pDqLayer->sSliceBufferInfo[iIdx].pSliceBuffer = NULL;
10641064 }
10651065
10661066 return ENC_RETURN_SUCCESS;
@@ -1095,7 +1095,7 @@ int32_t InitSliceInLayer (sWelsEncCtx* pCtx, · 28 unmodified lines
10951095
10961096 pDqLayer->iMaxSliceNum = 0;
10971097 for(iThreadIdx = 0; iThreadIdx < pCtx->iActiveThreadsNum; iThreadIdx++ ) {
1098− pDqLayer->iMaxSliceNum += pDqLayer->sSliceThreadInfo[iThreadIdx].iMaxSliceNum;
1098+ pDqLayer->iMaxSliceNum += pDqLayer->sSliceBufferInfo[iThreadIdx].iMaxSliceNum;
10991099 }
11001100
11011101 pDqLayer->ppSliceInLayer = (SSlice**)pMa->WelsMallocz (sizeof (SSlice*) * pDqLayer->iMaxSliceNum, "ppSliceInLayer");
@@ -1123,11 +1123,11 @@ int32_t InitSliceInLayer (sWelsEncCtx* pCtx, · 21 unmodified lines
11231123
11241124 iStartIdx = 0;
11251125 for(iThreadIdx = 0; iThreadIdx < pCtx->iActiveThreadsNum; iThreadIdx++ ) {
1126− for (iSliceIdx = 0; iSliceIdx < pDqLayer->sSliceThreadInfo[iThreadIdx].iMaxSliceNum; iSliceIdx++ ) {
1127− pDqLayer->ppSliceInLayer[iStartIdx + iSliceIdx] = pDqLayer->sSliceThreadInfo[iThreadIdx].pSliceBuffer+ iSliceIdx;
1126+ for (iSliceIdx = 0; iSliceIdx < pDqLayer->sSliceBufferInfo[iThreadIdx].iMaxSliceNum; iSliceIdx++ ) {
1127+ pDqLayer->ppSliceInLayer[iStartIdx + iSliceIdx] = pDqLayer->sSliceBufferInfo[iThreadIdx].pSliceBuffer+ iSliceIdx;
11281128 }
11291129
1130− iStartIdx += pDqLayer->sSliceThreadInfo[iThreadIdx].iMaxSliceNum;
1130+ iStartIdx += pDqLayer->sSliceBufferInfo[iThreadIdx].iMaxSliceNum;
11311131 }
11321132
11331133 return ENC_RETURN_SUCCESS;
@@ -1301,10 +1301,10 @@ int32_t ReallocateSliceInThread (sWelsEncCtx* pCtx, · 167 unmodified lines
13011301 SDqLayer* pDqLayer,
13021302 const int32_t kiDlayerIdx,
13031303 const int32_t kiThreadIndex) {
1304− int32_t iMaxSliceNum = pDqLayer->sSliceThreadInfo[kiThreadIndex].iMaxSliceNum;
1304+ int32_t iMaxSliceNum = pDqLayer->sSliceBufferInfo[kiThreadIndex].iMaxSliceNum;
13051305 int32_t iMaxSliceNumNew = 0;
13061306 int32_t iRet = 0;
1307− SSlice* pLastCodedSlice = &pDqLayer->sSliceThreadInfo[kiThreadIndex].pSliceBuffer [iMaxSliceNum - 1];
1307+ SSlice* pLastCodedSlice = &pDqLayer->sSliceBufferInfo[kiThreadIndex].pSliceBuffer [iMaxSliceNum - 1];
13081308 SSliceArgument* pSliceArgument = & pCtx->pSvcParam->sSpatialLayers[kiDlayerIdx].sSliceArgument;
13091309
13101310 iRet = CalculateNewSliceNum (pCtx,
@@ -1317,14 +1317,14 @@ int32_t ReallocateSliceInThread (sWelsEncCtx* pCtx, · 6 unmodified lines
13171317
13181318 iRet = ReallocateSliceList (pCtx,
13191319 pSliceArgument,
1320− pDqLayer->sSliceThreadInfo[kiThreadIndex].pSliceBuffer,
1320+ pDqLayer->sSliceBufferInfo[kiThreadIndex].pSliceBuffer,
13211321 iMaxSliceNum,
13221322 iMaxSliceNumNew);
13231323 if (ENC_RETURN_SUCCESS != iRet) {
13241324 return iRet;
13251325 }
13261326
1327− pDqLayer->sSliceThreadInfo[kiThreadIndex].iMaxSliceNum = iMaxSliceNumNew;
1327+ pDqLayer->sSliceBufferInfo[kiThreadIndex].iMaxSliceNum = iMaxSliceNumNew;
13281328
13291329 return ENC_RETURN_SUCCESS;
13301330 }
@@ -1375,14 +1375,14 @@ int32_t ExtendLayerBuffer(sWelsEncCtx* pCtx, · 44 unmodified lines
13751375 int32_t ReallocSliceBuffer (sWelsEncCtx* pCtx) {
13761376
13771377 SDqLayer* pCurLayer = pCtx->pCurDqLayer;
1378− int32_t iMaxSliceNumOld = pCurLayer->sSliceThreadInfo[0].iMaxSliceNum;
1378+ int32_t iMaxSliceNumOld = pCurLayer->sSliceBufferInfo[0].iMaxSliceNum;
13791379 int32_t iMaxSliceNumNew = 0;
13801380 int32_t iRet = 0;
13811381 int32_t iSliceIdx = 0;
13821382 int32_t iThreadIdx = 0;
13831383 int32_t iStartIdx = 0;
13841384 const int32_t kiCurDid = pCtx->uiDependencyId;
1385− SSlice* pLastCodedSlice = pCurLayer->sSliceThreadInfo[0].pSliceBuffer + (iMaxSliceNumOld - 1);
1385+ SSlice* pLastCodedSlice = pCurLayer->sSliceBufferInfo[0].pSliceBuffer + (iMaxSliceNumOld - 1);
13861386 SSliceArgument* pSliceArgument = & pCtx->pSvcParam->sSpatialLayers[kiCurDid].sSliceArgument;
13871387 iRet = CalculateNewSliceNum (pCtx,
13881388 pLastCodedSlice,
@@ -1395,18 +1395,18 @@ int32_t ReallocSliceBuffer (sWelsEncCtx* pCtx) { · 6 unmodified lines
13951395
13961396 iRet = ReallocateSliceList (pCtx,
13971397 pSliceArgument,
1398− pCurLayer->sSliceThreadInfo[0].pSliceBuffer,
1398+ pCurLayer->sSliceBufferInfo[0].pSliceBuffer,
13991399 iMaxSliceNumOld,
14001400 iMaxSliceNumNew);
14011401 if (ENC_RETURN_SUCCESS != iRet) {
14021402 return iRet;
14031403 }
14041404
1405− pCurLayer->sSliceThreadInfo[0].iMaxSliceNum = iMaxSliceNumNew;
1405+ pCurLayer->sSliceBufferInfo[0].iMaxSliceNum = iMaxSliceNumNew;
14061406
14071407 iMaxSliceNumNew = 0;
14081408 for(iThreadIdx = 0; iThreadIdx < pCtx->iActiveThreadsNum; iThreadIdx++ ) {
1409− iMaxSliceNumNew += pCurLayer->sSliceThreadInfo[iThreadIdx].iMaxSliceNum;
1409+ iMaxSliceNumNew += pCurLayer->sSliceBufferInfo[iThreadIdx].iMaxSliceNum;
14101410 }
14111411
14121412 iRet = ExtendLayerBuffer(pCtx, pCurLayer->iMaxSliceNum, iMaxSliceNumNew);
@@ -1415,10 +1415,10 @@ int32_t ReallocSliceBuffer (sWelsEncCtx* pCtx) { · 2 unmodified lines
14151415 }
14161416
14171417 for(iThreadIdx = 0; iThreadIdx < pCtx->iActiveThreadsNum; iThreadIdx++ ) {
1418− for (iSliceIdx = 0; iSliceIdx < pCurLayer->sSliceThreadInfo[iThreadIdx].iMaxSliceNum; iSliceIdx++) {
1419− pCurLayer->ppSliceInLayer[iStartIdx + iSliceIdx] = pCurLayer->sSliceThreadInfo[iThreadIdx].pSliceBuffer + iSliceIdx;
1418+ for (iSliceIdx = 0; iSliceIdx < pCurLayer->sSliceBufferInfo[iThreadIdx].iMaxSliceNum; iSliceIdx++) {
1419+ pCurLayer->ppSliceInLayer[iStartIdx + iSliceIdx] = pCurLayer->sSliceBufferInfo[iThreadIdx].pSliceBuffer + iSliceIdx;
14201420 }
1421− iStartIdx += pCurLayer->sSliceThreadInfo[iThreadIdx].iMaxSliceNum;
1421+ iStartIdx += pCurLayer->sSliceBufferInfo[iThreadIdx].iMaxSliceNum;
14221422 }
14231423
14241424 pCurLayer->iMaxSliceNum = iMaxSliceNumNew;
@@ -1477,10 +1477,10 @@ int32_t ReOrderSliceInLayer (sWelsEncCtx* pCtx, · 52 unmodified lines
14771477 //before encode all slices in layer, slices' index are init with -1
14781478 //pSliceBuffer->iSliceIdx will be set to actual slice index when encode one slice
14791479 for (iThreadIdx = 0; iThreadIdx < kiThreadNum; iThreadIdx++) {
1480− iSliceNumInThread = pCurLayer->sSliceThreadInfo[iThreadIdx].iMaxSliceNum;
1480+ iSliceNumInThread = pCurLayer->sSliceBufferInfo[iThreadIdx].iMaxSliceNum;
14811481
14821482 for(iSliceIdx =0; iSliceIdx < iSliceNumInThread; iSliceIdx++) {
1483− pSliceBuffer = pCurLayer->sSliceThreadInfo[iThreadIdx].pSliceBuffer + iSliceIdx;
1483+ pSliceBuffer = pCurLayer->sSliceBufferInfo[iThreadIdx].pSliceBuffer + iSliceIdx;
14841484 if (NULL == pSliceBuffer) {
14851485 return ENC_RETURN_UNEXPECTED;
14861486 }
@@ -1582,7 +1582,7 @@ int32_t SliceLayerInfoUpdate (sWelsEncCtx* pCtx, · 95 unmodified lines
15821582 int32_t iRet = 0;
15831583
15841584 for ( int32_t iThreadIdx = 0; iThreadIdx < pCtx->iActiveThreadsNum; iThreadIdx++) {
1585− iMaxSliceNum += pCtx->pCurDqLayer->sSliceThreadInfo[iThreadIdx].iMaxSliceNum;
1585+ iMaxSliceNum += pCtx->pCurDqLayer->sSliceBufferInfo[iThreadIdx].iMaxSliceNum;
15861586 }
15871587
15881588 //reallocate ppSliceInLayer if total encoded slice num exceed max slice num
@@ -1678,8 +1678,8 @@ void UpdateMbNeighbourInfoForNextSlice (SDqLayer* pCurDq, · 89 unmodified lines
16781678 void AddSliceBoundary (sWelsEncCtx* pEncCtx, SSlice* pCurSlice, SSliceCtx* pSliceCtx, SMB* pCurMb,
16791679 int32_t iFirstMbIdxOfNextSlice, const int32_t kiLastMbIdxInPartition) {
16801680 SDqLayer* pCurLayer = pEncCtx->pCurDqLayer;
1681− SSlice* pSliceBuffer = pCurLayer->sSliceThreadInfo[pCurSlice->uiThreadIdx].pSliceBuffer;
1682− int32_t iCodedSliceNum = pCurLayer->sSliceThreadInfo[pCurSlice->uiThreadIdx].iCodedSliceNum;
1681+ SSlice* pSliceBuffer = pCurLayer->sSliceBufferInfo[pCurSlice->uiThreadIdx].pSliceBuffer;
1682+ int32_t iCodedSliceNum = pCurLayer->sSliceBufferInfo[pCurSlice->uiThreadIdx].iCodedSliceNum;
16831683 int32_t iCurMbIdx = pCurMb->iMbXY;
16841684 uint16_t iCurSliceIdc = pSliceCtx->pOverallMbMap[ iCurMbIdx ];
16851685 const int32_t kiSliceIdxStep = pEncCtx->iActiveThreadsNum;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t