History

solve green issue combined with EC and multi-packet input

huili2 committed 12 years ago

Commit d7f33311 parent 4a518654 files · +12 −4Browse files

Showing the changes to codec/decoder/core/src/decoder_core.cpp (1 of 4 files). Show all

Unified · Split

codec/decoder/core/src/decoder_core.cpp+5−4
@@ -1973,9 +1973,8 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 1972 unmodified lines
19731973 return ERR_NONE;
19741974 }
19751975
1976− pCtx->pPreviousDecodedPictureInDpb = pCtx->pDec; //store latest decoded picture for EC
1977−
19781976 if (uiNalRefIdc > 0) {
1977+ pCtx->pPreviousDecodedPictureInDpb = pCtx->pDec; //store latest decoded picture for EC
19791978 iRet = WelsMarkAsRef (pCtx);
19801979 if (iRet != ERR_NONE) {
19811980 if (pCtx->iErrorConMethod == ERROR_CON_DISABLE) {
@@ -2010,8 +2009,10 @@ bool CheckAndDoEC (PWelsDecoderContext pCtx, uint8_t** ppDst, SBufferInfo* pDstI · 28 unmodified lines
20102009 ImplementErrorCon (pCtx);
20112010 pCtx->iTotalNumMbRec = pCtx->pSps->iMbWidth * pCtx->pSps->iMbHeight;
20122011 DecodeFrameConstruction (pCtx, ppDst, pDstInfo);
2013− pCtx->pPreviousDecodedPictureInDpb = pCtx->pDec; //save ECed pic for future use
2014− MarkECFrameAsRef (pCtx);
2012+ if (pCtx->sLastNalHdrExt.sNalUnitHeader.uiNalRefIdc > 0) {
2013+ pCtx->pPreviousDecodedPictureInDpb = pCtx->pDec; //save ECed pic for future use
2014+ MarkECFrameAsRef (pCtx);
2015+ }
20152016 pCtx->iPrevFrameNum = pCtx->sLastSliceHeader.iFrameNum; //save frame_num
20162017 if (pCtx->bLastHasMmco5)
20172018 pCtx->iPrevFrameNum = 0;

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