Set IDR frame independently for simulcast AVC
Showing the changes to codec/encoder/plus/src/welsEncoderExt.cpp (1 of 7 files). Show all
Unified · Split
| @@ -472,16 +472,14 @@ int CWelsH264SVCEncoder::EncodeParameterSets (SFrameBSInfo* pBsInfo) { · 471 unmodified lines | |||
| 472 | /* | 472 | /* |
| 473 | * Force key frame | 473 | * Force key frame |
| 474 | */ | 474 | */ |
| 475 | int CWelsH264SVCEncoder::ForceIntraFrame (bool bIDR) { | 475 | int CWelsH264SVCEncoder::ForceIntraFrame (bool bIDR, int iLayerId) { |
| 476 | if (! (m_pEncContext && m_bInitialFlag)) { | 476 | if (! (m_pEncContext && m_bInitialFlag)) { |
| 477 | return 1; | 477 | return 1; |
| 478 | } | 478 | } |
| 479 | //WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO, | 479 | //WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO, |
| 480 | // "CWelsH264SVCEncoder::ForceIntraFrame(), bIDR= %d", bIDR); | 480 | // "CWelsH264SVCEncoder::ForceIntraFrame(), bIDR= %d", bIDR); |
| 481 | 481 | ||
| 482 | ForceCodingIDR (m_pEncContext); | 482 | ForceCodingIDR (m_pEncContext, iLayerId); |
| 483 | |||
| 484 | m_pEncContext->sEncoderStatistics[0].uiIDRReqNum++; | ||
| 485 | 483 | ||
| 486 | return 0; | 484 | return 0; |
| 487 | } | 485 | } |