History

remove macro NO_WAITING_AU for always on

huili2 committed 12 years ago

Commit 0adb3e11 parent 153fa103 files · +2 −16Browse files

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

Unified · Split

codec/decoder/core/src/decoder_core.cpp+2−13
@@ -62,9 +62,8 @@ static inline int32_t DecodeFrameConstruction (PWelsDecoderContext pCtx, uint8_t · 61 unmodified lines
62 pCtx->iTotalNumMbRec, kiTotalNumMbInCurLayer, pCurDq->iMbWidth, pCurDq->iMbHeight);62 pCtx->iTotalNumMbRec, kiTotalNumMbInCurLayer, pCurDq->iMbWidth, pCurDq->iMbHeight);
63 bFrameCompleteFlag = false; //return later after output buffer is done63 bFrameCompleteFlag = false; //return later after output buffer is done
64 }64 }
65#ifdef NO_WAITING_AU65
66 pCtx->iTotalNumMbRec = 0;66 pCtx->iTotalNumMbRec = 0;
67#endif
68 67
69 if (pCtx->bNewSeqBegin) {68 if (pCtx->bNewSeqBegin) {
70 memcpy (& (pCtx->sFrameCrop), & (pCurDq->sLayerInfo.sSliceInLayer.sSliceHeaderExt.sSliceHeader.pSps->sFrameCrop),69 memcpy (& (pCtx->sFrameCrop), & (pCurDq->sLayerInfo.sSliceInLayer.sSliceHeaderExt.sSliceHeader.pSps->sFrameCrop),
@@ -1749,17 +1748,13 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, int3 · 1678 unmodified lines
1749 }1748 }
1750 }1749 }
1751 1750
1752#ifdef NO_WAITING_AU
1753 //For fixing the nal lossing issue1751 //For fixing the nal lossing issue
1754 if ((pCtx->iTotalNumMbRec != 0) &&1752 if ((pCtx->iTotalNumMbRec != 0) &&
1755 (CheckAccessUnitBoundaryExt (&pCtx->sLastNalHdrExt, &pNalCur->sNalHeaderExt, &pCtx->sLastSliceHeader,1753 (CheckAccessUnitBoundaryExt (&pCtx->sLastNalHdrExt, &pNalCur->sNalHeaderExt, &pCtx->sLastSliceHeader,
1756 &pNalCur->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader))) {1754 &pNalCur->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader))) {
1757 pCtx->iTotalNumMbRec = 0;1755 pCtx->iTotalNumMbRec = 0;
1758 }1756 }
1759#else1757
1760 //initialize at the starting of AU.
1761 pCtx->iTotalNumMbRec = 0;
1762#endif
1763 if (pCtx->iTotalNumMbRec == 0) { //Picture start to decode1758 if (pCtx->iTotalNumMbRec == 0) { //Picture start to decode
1764 for (int32_t i = 0; i < LAYER_NUM_EXCHANGEABLE; ++ i)1759 for (int32_t i = 0; i < LAYER_NUM_EXCHANGEABLE; ++ i)
1765 memset (pCtx->sMb.pSliceIdc[i], 0xff, (pCtx->sMb.iMbWidth * pCtx->sMb.iMbHeight * sizeof (int32_t)));1760 memset (pCtx->sMb.pSliceIdc[i], 0xff, (pCtx->sMb.iMbWidth * pCtx->sMb.iMbHeight * sizeof (int32_t)));
@@ -1908,16 +1903,10 @@ int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, int3 · 142 unmodified lines
1908 1903
1909 if (dq_cur->uiLayerDqId == kuiTargetLayerDqId) {1904 if (dq_cur->uiLayerDqId == kuiTargetLayerDqId) {
1910 if (DecodeFrameConstruction (pCtx, ppDst, pDstLen, pWidth, pHeight, pDstInfo)) {1905 if (DecodeFrameConstruction (pCtx, ppDst, pDstLen, pWidth, pHeight, pDstInfo)) {
1911#ifdef NO_WAITING_AU
1912 memcpy (&pCtx->sLastNalHdrExt, &pCurAu->pNalUnitsList[iIdx - 1]->sNalHeaderExt, sizeof (SNalUnitHeaderExt));1906 memcpy (&pCtx->sLastNalHdrExt, &pCurAu->pNalUnitsList[iIdx - 1]->sNalHeaderExt, sizeof (SNalUnitHeaderExt));
1913 memcpy (&pCtx->sLastSliceHeader, &pCurAu->pNalUnitsList[iIdx - 1]->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader,1907 memcpy (&pCtx->sLastSliceHeader, &pCurAu->pNalUnitsList[iIdx - 1]->sNalData.sVclNal.sSliceHeaderExt.sSliceHeader,
1914 sizeof (SSliceHeader));1908 sizeof (SSliceHeader));
1915 return ERR_NONE;1909 return ERR_NONE;
1916#else
1917 pCtx->iErrorCode |= dsBitstreamError;
1918 return -1;
1919#endif
1920
1921 }1910 }
1922 1911
1923 pCtx->pPreviousDecodedPictureInDpb = pCtx->pDec; //store latest decoded picture for EC1912 pCtx->pPreviousDecodedPictureInDpb = pCtx->pDec; //store latest decoded picture for EC

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