MCPcopy Create free account
hub / github.com/cisco/openh264 / EncodeFrame

Method EncodeFrame

codec/encoder/plus/src/welsEncoderExt.cpp:375–401  ·  view source on GitHub ↗

* SVC core encoding */

Source from the content-addressed store, hash-verified

373 * SVC core encoding
374 */
375int CWelsH264SVCEncoder::EncodeFrame (const SSourcePicture* kpSrcPic, SFrameBSInfo* pBsInfo) {
376 if (! (kpSrcPic && m_bInitialFlag && pBsInfo)) {
377 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_ERROR, "CWelsH264SVCEncoder::EncodeFrame(), cmInitParaError.");
378 return cmInitParaError;
379 }
380 if (kpSrcPic->iColorFormat != videoFormatI420) {
381 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_ERROR, "CWelsH264SVCEncoder::EncodeFrame(), wrong iColorFormat %d",
382 kpSrcPic->iColorFormat);
383 return cmInitParaError;
384 }
385
386 const int32_t kiEncoderReturn = EncodeFrameInternal (kpSrcPic, pBsInfo);
387
388 if (kiEncoderReturn != cmResultSuccess) {
389 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_ERROR, "CWelsH264SVCEncoder::EncodeFrame(), kiEncoderReturn %d",
390 kiEncoderReturn);
391 return kiEncoderReturn;
392 }
393
394#ifdef REC_FRAME_COUNT
395 ++ m_uiCountFrameNum;
396 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
397 "CWelsH264SVCEncoder::EncodeFrame(), m_uiCountFrameNum= %d,", m_uiCountFrameNum);
398#endif//REC_FRAME_COUNT
399
400 return kiEncoderReturn;
401}
402
403
404int CWelsH264SVCEncoder ::EncodeFrameInternal (const SSourcePicture* pSrcPic, SFrameBSInfo* pBsInfo) {

Callers 2

Encode_wMethod · 0.45
ProcessEncodingFunction · 0.45

Calls 1

WelsLogFunction · 0.85

Tested by

no test coverage detected