History

add scc rate control

ruil2 committed 12 years ago

Commit 66e38cc1 parent 25cad576 files · +8671 −8500Browse files

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

Unified · Split

codec/encoder/core/src/encoder_ext.cpp+4−3
@@ -2950,7 +2950,8 @@ int32_t GetSubSequenceId (sWelsEncCtx* pCtx, EVideoFrameType eFrameType) { · 2949 unmodified lines
29502950 }
29512951
29522952 //loop each layer to check if have skip frame when RC and frame skip enable (maxbr>0)
2953−bool CheckFrameSkipBasedMaxbr (sWelsEncCtx* pCtx, int32_t iSpatialNum) {
2953+bool CheckFrameSkipBasedMaxbr (sWelsEncCtx* pCtx, int32_t iSpatialNum, EVideoFrameType eFrameType,
2954+ const uint32_t uiTimeStamp) {
29542955 SSpatialPicIndex* pSpatialIndexMap = &pCtx->sSpatialIndexMap[0];
29552956 bool bSkipMustFlag = false;
29562957 if (pCtx->pSvcParam->bEnableFrameSkip) {
@@ -2960,7 +2961,7 @@ bool CheckFrameSkipBasedMaxbr (sWelsEncCtx* pCtx, int32_t iSpatialNum) { · 3 unmodified lines
29602961 break;
29612962 }
29622963 pCtx->uiDependencyId = (uint8_t) (pSpatialIndexMap + i)->iDid;
2963− pCtx->pFuncList->pfRc.pfWelsRcPicDelayJudge (pCtx);
2964+ pCtx->pFuncList->pfRc.pfWelsRcPicDelayJudge (pCtx, eFrameType, uiTimeStamp);
29642965 if (true == pCtx->pWelsSvcRc[pCtx->uiDependencyId].bSkipFlag) {
29652966 bSkipMustFlag = true;
29662967 break;
@@ -3034,7 +3035,7 @@ int32_t WelsEncoderEncodeExt (sWelsEncCtx* pCtx, SFrameBSInfo* pFbi, const SSour · 67 unmodified lines
30343035 }
30353036
30363037 //loop each layer to check if have skip frame when RC and frame skip enable
3037− if (CheckFrameSkipBasedMaxbr (pCtx, iSpatialNum)) {
3038+ if (CheckFrameSkipBasedMaxbr (pCtx, iSpatialNum, eFrameType, (uint32_t)pSrcPic->uiTimeStamp)) {
30383039 pFbi->eFrameType = videoFrameTypeSkip;
30393040 return ENC_RETURN_SUCCESS;
30403041 }

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