ref: 0c82b4b46f6d5ab92515f555fbe33ad5e62f3f10
parent: 163fe6fe242bc84faae7d92f4d8a4ba486e17b17
parent: 9f0f8b0a684b1f9ed6c42b31abd6b63faa548869
author: ruil2 <[email protected]>
date: Thu Nov 3 05:47:21 EDT 2016
Merge pull request #2588 from shihuade/BugFixed_V1 Bug fixed
--- a/codec/encoder/core/src/encoder_ext.cpp
+++ b/codec/encoder/core/src/encoder_ext.cpp
@@ -4202,7 +4202,7 @@
if ((pCtx->iActiveThreadsNum > 1) && (MAX_NAL_UNITS_IN_LAYER < pFbi->sLayerInfo[k].iNalCount)) {
WelsLog (& pCtx->sLogCtx, WELS_LOG_ERROR,
"WelsEncoderEncodeExt(), iCountNumNals(%d) > MAX_NAL_UNITS_IN_LAYER(%d) under multi-thread(%d) NOT supported!",
- pFbi->sLayerInfo[k].iNalCount, MAX_NAL_UNITS_IN_LAYER), pCtx->iActiveThreadsNum;
+ pFbi->sLayerInfo[k].iNalCount, MAX_NAL_UNITS_IN_LAYER, pCtx->iActiveThreadsNum);
return ENC_RETURN_UNEXPECTED;
}
}
--- a/codec/encoder/plus/src/welsEncoderExt.cpp
+++ b/codec/encoder/plus/src/welsEncoderExt.cpp
@@ -473,13 +473,16 @@
* Force key frame
*/
int CWelsH264SVCEncoder::ForceIntraFrame (bool bIDR, int iLayerId) {
- if (! (m_pEncContext && m_bInitialFlag)) {
- return 1;
- }
- //WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
- // "CWelsH264SVCEncoder::ForceIntraFrame(), bIDR= %d", bIDR);
+ if ( bIDR ) {
+ if (! (m_pEncContext && m_bInitialFlag)) {
+ return 1;
+ }
- ForceCodingIDR (m_pEncContext, iLayerId);
+ ForceCodingIDR(m_pEncContext, iLayerId);
+ } else {
+ WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
+ "CWelsH264SVCEncoder::ForceIntraFrame(),nothing to do as bIDR set to false");
+ }
return 0;
}