ref: 1173f879f119bee92e4d434ab777323f43ed8c5d
parent: 2b59746c68ba3810154ef1ac4d8d9ce3a1b0246e
author: Haibo Zhu <[email protected]>
date: Mon Aug 24 10:37:32 EDT 2015
Change the SParserBsInfo resolution to actual value
--- a/codec/decoder/core/src/decoder_core.cpp
+++ b/codec/decoder/core/src/decoder_core.cpp
@@ -89,8 +89,10 @@
uint8_t* pNalBs = NULL;
pParser->uiOutBsTimeStamp = (pCurAu->pNalUnitsList [iIdx]) ? pCurAu->pNalUnitsList [iIdx]->uiTimeStamp : 0;
//pParser->iNalNum = 0;
- pParser->iSpsWidthInPixel = (pCtx->pSps->iMbWidth << 4);
- pParser->iSpsHeightInPixel = (pCtx->pSps->iMbHeight << 4);
+ pParser->iSpsWidthInPixel = (pCtx->pSps->iMbWidth << 4) - ((pCtx->pSps->sFrameCrop.iLeftOffset +
+ pCtx->pSps->sFrameCrop.iRightOffset) << 1);
+ pParser->iSpsHeightInPixel = (pCtx->pSps->iMbHeight << 4) - ((pCtx->pSps->sFrameCrop.iTopOffset +
+ pCtx->pSps->sFrameCrop.iBottomOffset) << 1);
if (pCurAu->pNalUnitsList [iIdx]->sNalHeaderExt.bIdrFlag) { //IDR
if (pCtx->bFrameFinish) { //add required sps/pps