Showing the changes to codec/decoder/core/src/decode_slice.cpp (1 of 1 file). Show all
Unified · Split
| @@ -93,7 +93,11 @@ int32_t WelsTargetSliceConstruction (PWelsDecoderContext pCtx) { · 92 unmodified lines | ||
| 93 | 93 | } |
| 94 | 94 | |
| 95 | 95 | ++iCountNumMb; |
| 96 | − ++pCtx->iTotalNumMbRec; | |
| 96 | + if (!pCurLayer->pMbCorrectlyDecodedFlag[iNextMbXyIndex]) { //already con-ed, overwrite | |
| 97 | + pCurLayer->pMbCorrectlyDecodedFlag[iNextMbXyIndex] = true; | |
| 98 | + ++pCtx->iTotalNumMbRec; | |
| 99 | + } | |
| 100 | + | |
| 97 | 101 | if (iCountNumMb >= iTotalNumMb) { |
| 98 | 102 | break; |
| 99 | 103 | } |
| @@ -394,7 +398,6 @@ int32_t WelsDecodeSlice (PWelsDecoderContext pCtx, bool bFirstSliceInLayer, PNal · 294 unmodified lines | ||
| 394 | 398 | } |
| 395 | 399 | |
| 396 | 400 | ++pSlice->iTotalMbInCurSlice; |
| 397 | − pCurLayer->pMbCorrectlyDecodedFlag[iNextMbXyIndex] = true; | |
| 398 | 401 | |
| 399 | 402 | if (pSliceHeader->pPps->uiNumSliceGroups > 1) { |
| 400 | 403 | iNextMbXyIndex = FmoNextMb (pFmo, iNextMbXyIndex); |