History

Fix a few more fixes found during creating thread unit tests. 1. set all none-zero pCurDqLayer->pNzc to 1 before a MB deblocking. 2. make ReleaseBufferedReadyPicture to behaviour to be more close between thread and non-thread. 3. Fix a typo "sSliceDecodeFinsh"

xiaotiansf committed 6 years ago

Commit ffdf9121 parent e3882546 files · +93 −39Browse files

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

Unified · Split

codec/decoder/core/src/decode_slice.cpp+9−0
@@ -1719,7 +1719,16 @@ int32_t WelsDecodeAndConstructSlice (PWelsDecoderContext pCtx) { · 1718 unmodified lines
17191719
17201720 return ERR_INFO_MB_RECON_FAIL;
17211721 }
1722+ int8_t pNzc[24];
1723+ if (pCtx->eSliceType != I_SLICE) {
1724+ memcpy (pNzc, pCurDqLayer->pNzc[pCurDqLayer->iMbXyIndex], 24);
1725+ pCtx->sBlockFunc.pWelsSetNonZeroCountFunc (
1726+ pCurDqLayer->pNzc[pCurDqLayer->iMbXyIndex]); // set all none-zero nzc to 1; dbk can be opti!
1727+ }
17221728 WelsDeblockingFilterMB (pCurDqLayer, pFilter, iFilterIdc, pDeblockMb);
1729+ if (pCtx->eSliceType != I_SLICE) {
1730+ memcpy (pCurDqLayer->pNzc[pCurDqLayer->iMbXyIndex], pNzc, 24);
1731+ }
17231732 if (pCtx->uiNalRefIdc > 0) {
17241733 if (pCurDqLayer->iMbX == 0 || pCurDqLayer->iMbX == pCurDqLayer->iMbWidth - 1 || pCurDqLayer->iMbY == 0
17251734 || pCurDqLayer->iMbY == pCurDqLayer->iMbHeight - 1) {

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