History

Add thread decoding support for multi-slice frame. Note: In each call to DecodeFrameNoDelay, iSrcLen must be the byte-size of one coded video frame.

xiaotianshi2 committed 6 years ago

Commit b1ce6991 parent e1b8cd23 files · +29 −8Browse files

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

Unified · Split

codec/decoder/plus/src/welsDecoderExt.cpp+7−0
@@ -1374,6 +1374,13 @@ DECODING_STATE CWelsDecoder::ParseAccessUnit (SWelsDecoderThreadCTX& sThreadCtx) · 1373 unmodified lines
13741374 sThreadCtx.pCtx->iImgHeightInPixel = m_pLastDecThrCtx->pCtx->iImgHeightInPixel;
13751375 }
13761376 }
1377+
1378+ //if threadCount > 1, then each thread must contain exact one complete frame.
1379+ if (GetThreadCount (sThreadCtx.pCtx) > 1) {
1380+ sThreadCtx.pCtx->pAccessUnitList->uiAvailUnitsNum = 0;
1381+ sThreadCtx.pCtx->pAccessUnitList->uiActualUnitsNum = 0;
1382+ }
1383+
13771384 int32_t iRet = DecodeFrame2WithCtx (sThreadCtx.pCtx, sThreadCtx.kpSrc, sThreadCtx.kiSrcLen, sThreadCtx.ppDst,
13781385 &sThreadCtx.sDstInfo);
13791386

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