Showing the changes to codec/decoder/core/src/decoder_core.cpp (1 of 10 files). Show all
Unified · Split
| @@ -90,6 +90,7 @@ static inline int32_t DecodeFrameConstruction (PWelsDecoderContext pCtx, uint8_t · 89 unmodified lines | |||
| 90 | 90 | ||
| 91 | if (!pCtx->bParseOnly) { | 91 | if (!pCtx->bParseOnly) { |
| 92 | //////output:::normal path | 92 | //////output:::normal path |
| 93 | pDstInfo->uiOutYuvTimeStamp = pPic->uiTimeStamp; | ||
| 93 | ppDst[0] = pPic->pData[0]; | 94 | ppDst[0] = pPic->pData[0]; |
| 94 | ppDst[1] = pPic->pData[1]; | 95 | ppDst[1] = pPic->pData[1]; |
| 95 | ppDst[2] = pPic->pData[2]; | 96 | ppDst[2] = pPic->pData[2]; |
| @@ -1742,7 +1743,7 @@ int32_t ConstructAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBufferI · 1646 unmodified lines | |||
| 1742 | int32_t iIdx = pCurAu->uiStartPos; | 1743 | int32_t iIdx = pCurAu->uiStartPos; |
| 1743 | int32_t iEndIdx = pCurAu->uiEndPos; | 1744 | int32_t iEndIdx = pCurAu->uiEndPos; |
| 1744 | uint8_t* pNalBs = NULL; | 1745 | uint8_t* pNalBs = NULL; |
| 1745 | 1746 | pParser->uiOutBsTimeStamp = (pCurAu->pNalUnitsList [iIdx]) ? pCurAu->pNalUnitsList [iIdx]->uiTimeStamp : 0; | |
| 1746 | pParser->iNalNum = 0; | 1747 | pParser->iNalNum = 0; |
| 1747 | pParser->iSpsWidthInPixel = (pCtx->pSps->iMbWidth << 4); | 1748 | pParser->iSpsWidthInPixel = (pCtx->pSps->iMbWidth << 4); |
| 1748 | pParser->iSpsHeightInPixel = (pCtx->pSps->iMbHeight << 4); | 1749 | pParser->iSpsHeightInPixel = (pCtx->pSps->iMbHeight << 4); |
| @@ -1774,6 +1775,7 @@ int32_t ConstructAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBufferI · 25 unmodified lines | |||
| 1774 | pDstBuf += iNalLen; | 1775 | pDstBuf += iNalLen; |
| 1775 | } | 1776 | } |
| 1776 | } else { //error | 1777 | } else { //error |
| 1778 | pCtx->pParserBsInfo->uiOutBsTimeStamp = 0; | ||
| 1777 | pCtx->pParserBsInfo->iNalNum = 0; | 1779 | pCtx->pParserBsInfo->iNalNum = 0; |
| 1778 | pCtx->pParserBsInfo->iSpsWidthInPixel = 0; | 1780 | pCtx->pParserBsInfo->iSpsWidthInPixel = 0; |
| 1779 | pCtx->pParserBsInfo->iSpsHeightInPixel = 0; | 1781 | pCtx->pParserBsInfo->iSpsHeightInPixel = 0; |
| @@ -1935,6 +1937,7 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBuf · 155 unmodified lines | |||
| 1935 | return ERR_INFO_REF_COUNT_OVERFLOW; | 1937 | return ERR_INFO_REF_COUNT_OVERFLOW; |
| 1936 | } | 1938 | } |
| 1937 | } | 1939 | } |
| 1940 | pCtx->pDec->uiTimeStamp = pNalCur->uiTimeStamp; | ||
| 1938 | 1941 | ||
| 1939 | if (pCtx->iTotalNumMbRec == 0) { //Picture start to decode | 1942 | if (pCtx->iTotalNumMbRec == 0) { //Picture start to decode |
| 1940 | for (int32_t i = 0; i < LAYER_NUM_EXCHANGEABLE; ++ i) | 1943 | for (int32_t i = 0; i < LAYER_NUM_EXCHANGEABLE; ++ i) |