Showing the changes to codec/decoder/plus/src/welsDecoderExt.cpp (1 of 1 file). Show all
Unified · Split
| @@ -285,6 +285,12 @@ long CWelsDecoder::SetOption (DECODER_OPTION eOptID, void* pOption) { · 284 unmodified lines | |||
| 285 | iVal = * ((int*)pOption); // int value for error concealment idc | 285 | iVal = * ((int*)pOption); // int value for error concealment idc |
| 286 | iVal = WELS_CLIP3 (iVal, (int32_t) ERROR_CON_DISABLE, (int32_t) ERROR_CON_SLICE_MV_COPY_CROSS_IDR_FREEZE_RES_CHANGE); | 286 | iVal = WELS_CLIP3 (iVal, (int32_t) ERROR_CON_DISABLE, (int32_t) ERROR_CON_SLICE_MV_COPY_CROSS_IDR_FREEZE_RES_CHANGE); |
| 287 | m_pDecContext->eErrorConMethod = (ERROR_CON_IDC) iVal; | 287 | m_pDecContext->eErrorConMethod = (ERROR_CON_IDC) iVal; |
| 288 | if ((m_pDecContext->bParseOnly) && (m_pDecContext->eErrorConMethod != ERROR_CON_DISABLE)) { | ||
| 289 | WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO, | ||
| 290 | "CWelsDecoder::SetOption for ERROR_CON_IDC = %d not allowd for parse only!.", iVal); | ||
| 291 | return cmInitParaError; | ||
| 292 | } | ||
| 293 | |||
| 288 | InitErrorCon (m_pDecContext); | 294 | InitErrorCon (m_pDecContext); |
| 289 | WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO, | 295 | WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO, |
| 290 | "CWelsDecoder::SetOption for ERROR_CON_IDC = %d.", iVal); | 296 | "CWelsDecoder::SetOption for ERROR_CON_IDC = %d.", iVal); |
| @@ -551,6 +557,7 @@ DECODING_STATE CWelsDecoder::DecodeParser (const unsigned char* kpSrc, · 260 unmodified lines | |||
| 551 | } | 557 | } |
| 552 | 558 | ||
| 553 | m_pDecContext->iErrorCode = dsErrorFree; //initialize at the starting of AU decoding. | 559 | m_pDecContext->iErrorCode = dsErrorFree; //initialize at the starting of AU decoding. |
| 560 | m_pDecContext->eErrorConMethod = ERROR_CON_DISABLE; //add protection to disable EC here. | ||
| 554 | m_pDecContext->pParserBsInfo = pDstInfo; | 561 | m_pDecContext->pParserBsInfo = pDstInfo; |
| 555 | pDstInfo->iNalNum = 0; | 562 | pDstInfo->iNalNum = 0; |
| 556 | pDstInfo->iSpsWidthInPixel = pDstInfo->iSpsHeightInPixel = 0; | 563 | pDstInfo->iSpsWidthInPixel = pDstInfo->iSpsHeightInPixel = 0; |