enable no-delay decoding for MSlice
Showing the changes to codec/decoder/plus/src/welsDecoderExt.cpp (1 of 5 files). Show all
Unified · Split
| @@ -372,6 +372,7 @@ DECODING_STATE CWelsDecoder::DecodeFrame2 (const unsigned char* kpSrc, · 371 unmodified lines | ||
| 372 | 372 | //For application MODE, the error detection should be added for safe. |
| 373 | 373 | //But for CONSOLE MODE, when decoding LAST AU, kiSrcLen==0 && kpSrc==NULL. |
| 374 | 374 | m_pDecContext->bEndOfStreamFlag = true; |
| 375 | + m_pDecContext->bInstantDecFlag = true; | |
| 375 | 376 | } |
| 376 | 377 | |
| 377 | 378 | ppDst[0] = ppDst[1] = ppDst[2] = NULL; |
| @@ -390,7 +391,7 @@ DECODING_STATE CWelsDecoder::DecodeFrame2 (const unsigned char* kpSrc, · 12 unmodified lines | ||
| 390 | 391 | |
| 391 | 392 | WelsDecodeBs (m_pDecContext, kpSrc, kiSrcLen, ppDst, |
| 392 | 393 | pDstInfo); //iErrorCode has been modified in this function |
| 393 | − | |
| 394 | + m_pDecContext->bInstantDecFlag = false; //reset no-delay flag | |
| 394 | 395 | if (m_pDecContext->iErrorCode) { |
| 395 | 396 | ENalUnitType eNalType = |
| 396 | 397 | NAL_UNIT_UNSPEC_0; //for NBR, IDR frames are expected to decode as followed if error decoding an IDR currently |