History

remove pSliceConsumeTime in SSliceCtx and pSliceThreading

huade committed 10 years ago

Commit b0017851 parent 2d3071e8 files · +36 −72Browse files

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

Unified · Split

codec/encoder/core/src/encoder_ext.cpp+2−14
@@ -3507,7 +3507,7 @@ int32_t GetSubSequenceId (sWelsEncCtx* pCtx, EVideoFrameType eFrameType) { · 3506 unmodified lines
3507// writing parasets for (simulcast) svc3507// writing parasets for (simulcast) svc
3508int32_t WriteSsvcParaset (sWelsEncCtx* pCtx, const int32_t kiSpatialNum,3508int32_t WriteSsvcParaset (sWelsEncCtx* pCtx, const int32_t kiSpatialNum,
3509 SLayerBSInfo*& pLayerBsInfo, int32_t& iLayerNum, int32_t& iFrameSize) {3509 SLayerBSInfo*& pLayerBsInfo, int32_t& iLayerNum, int32_t& iFrameSize) {
3510 int32_t iNonVclSize = 0, iCountNal = 0, iReturn;3510 int32_t iNonVclSize = 0, iCountNal = 0, iReturn = 0;
3511 iReturn = WelsWriteParameterSets (pCtx, &pLayerBsInfo->pNalLengthInByte[0], &iCountNal, &iNonVclSize);3511 iReturn = WelsWriteParameterSets (pCtx, &pLayerBsInfo->pNalLengthInByte[0], &iCountNal, &iNonVclSize);
3512 WELS_VERIFY_RETURN_IFNEQ (iReturn, ENC_RETURN_SUCCESS)3512 WELS_VERIFY_RETURN_IFNEQ (iReturn, ENC_RETURN_SUCCESS)
3513 3513
@@ -4299,8 +4299,7 @@ int32_t WelsEncoderEncodeExt (sWelsEncCtx* pCtx, SFrameBSInfo* pFbi, const SSour · 785 unmodified lines
4299 && pSvcParam->bUseLoadBalancing4299 && pSvcParam->bUseLoadBalancing
4300 && pSvcParam->iMultipleThreadIdc > 1 &&4300 && pSvcParam->iMultipleThreadIdc > 1 &&
4301 pSvcParam->iMultipleThreadIdc >= pParam->sSliceArgument.uiSliceNum) {4301 pSvcParam->iMultipleThreadIdc >= pParam->sSliceArgument.uiSliceNum) {
4302 CalcSliceComplexRatio (pCtx->pSliceThreading->pSliceComplexRatio[iCurDid], pCtx->pCurDqLayer,4302 CalcSliceComplexRatio (pCtx->pSliceThreading->pSliceComplexRatio[iCurDid], pCtx->pCurDqLayer);
4303 pCtx->pSliceThreading->pSliceConsumeTime[iCurDid]);
4304#if defined(MT_DEBUG)4303#if defined(MT_DEBUG)
4305 TrackSliceComplexities (pCtx, iCurDid);4304 TrackSliceComplexities (pCtx, iCurDid);
4306#endif//#if defined(MT_DEBUG)4305#endif//#if defined(MT_DEBUG)
@@ -4814,17 +4813,6 @@ int32_t DynSliceRealloc (sWelsEncCtx* pCtx, · 507 unmodified lines
4814 pMA->WelsFree (pCurLayer->sSliceEncCtx.pCountMbNumInSlice, "pSliceSeg->pCountMbNumInSlice");4813 pMA->WelsFree (pCurLayer->sSliceEncCtx.pCountMbNumInSlice, "pSliceSeg->pCountMbNumInSlice");
4815 pCurLayer->sSliceEncCtx.pCountMbNumInSlice = pCountMbNumInSlice;4814 pCurLayer->sSliceEncCtx.pCountMbNumInSlice = pCountMbNumInSlice;
4816 4815
4817 uint32_t* pSliceConsumeTime = (uint32_t*)pMA->WelsMalloc (iMaxSliceNum * sizeof (uint32_t),
4818 "pSliceSeg->pSliceConsumeTime");
4819 if (NULL == pSliceConsumeTime) {
4820 WelsLog (& (pCtx->sLogCtx), WELS_LOG_ERROR,
4821 "CWelsH264SVCEncoder::DynSliceRealloc: realloc pSliceConsumeTime not successful");
4822 return ENC_RETURN_MEMALLOCERR;
4823 }
4824 memcpy (pSliceConsumeTime, pCurLayer->sSliceEncCtx.pSliceConsumeTime, sizeof (int32_t) * iMaxSliceNumOld);
4825 pMA->WelsFree (pCurLayer->sSliceEncCtx.pSliceConsumeTime, "pSliceSeg->pSliceConsumeTime");
4826 pCurLayer->sSliceEncCtx.pSliceConsumeTime = pSliceConsumeTime;
4827
4828 //deal with rate control variables4816 //deal with rate control variables
4829 const int32_t kiCurDid = pCtx->uiDependencyId;4817 const int32_t kiCurDid = pCtx->uiDependencyId;
4830 SRCSlicing* pSlcingOverRc = (SRCSlicing*)pMA->WelsMalloc (iMaxSliceNum * sizeof (SRCSlicing), "SlicingOverRC");4818 SRCSlicing* pSlcingOverRc = (SRCSlicing*)pMA->WelsMalloc (iMaxSliceNum * sizeof (SRCSlicing), "SlicingOverRC");

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