Showing the changes to codec/decoder/core/src/decode_slice.cpp (1 of 6 files). Show all
Unified · Split
| @@ -1719,16 +1719,12 @@ int32_t WelsDecodeAndConstructSlice (PWelsDecoderContext pCtx) { · 1718 unmodified lines | ||
| 1719 | 1719 | |
| 1720 | 1720 | return ERR_INFO_MB_RECON_FAIL; |
| 1721 | 1721 | } |
| 1722 | − int8_t pNzc[24]; | |
| 1722 | + memcpy (pCtx->pDec->pNzc[pCurDqLayer->iMbXyIndex], pCurDqLayer->pNzc[pCurDqLayer->iMbXyIndex], 24); | |
| 1723 | 1723 | if (pCtx->eSliceType != I_SLICE) { |
| 1724 | − memcpy (pNzc, pCurDqLayer->pNzc[pCurDqLayer->iMbXyIndex], 24); | |
| 1725 | 1724 | pCtx->sBlockFunc.pWelsSetNonZeroCountFunc ( |
| 1726 | − pCurDqLayer->pNzc[pCurDqLayer->iMbXyIndex]); // set all none-zero nzc to 1; dbk can be opti! | |
| 1725 | + pCtx->pDec->pNzc[pCurDqLayer->iMbXyIndex]); // set all none-zero nzc to 1; dbk can be opti! | |
| 1727 | 1726 | } |
| 1728 | 1727 | WelsDeblockingFilterMB (pCurDqLayer, pFilter, iFilterIdc, pDeblockMb); |
| 1729 | − if (pCtx->eSliceType != I_SLICE) { | |
| 1730 | − memcpy (pCurDqLayer->pNzc[pCurDqLayer->iMbXyIndex], pNzc, 24); | |
| 1731 | − } | |
| 1732 | 1728 | if (pCtx->uiNalRefIdc > 0) { |
| 1733 | 1729 | if (pCurDqLayer->iMbX == 0 || pCurDqLayer->iMbX == pCurDqLayer->iMbWidth - 1 || pCurDqLayer->iMbY == 0 |
| 1734 | 1730 | || pCurDqLayer->iMbY == pCurDqLayer->iMbHeight - 1) { |