History

refactor EncoderStatistics and update it in resetting logic

sijchen@cisco.com committed 9 years ago

Commit 724c97e1 parent c4586a24 files · +25 −15Browse files

Showing the changes to codec/encoder/plus/src/welsEncoderExt.cpp (1 of 4 files). Show all

Unified · Split

codec/encoder/plus/src/welsEncoderExt.cpp+9−10
@@ -554,14 +554,13 @@ void CWelsH264SVCEncoder::LogStatistics (const int64_t kiCurrentFrameTs, int32_t · 553 unmodified lines
554554 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_INFO,
555555 "EncoderStatistics: SpatialId = %d,%dx%d, SpeedInMs: %f, fAverageFrameRate=%f, "
556556 "LastFrameRate=%f, LatestBitRate=%d, LastFrameQP=%d, uiInputFrameCount=%d, uiSkippedFrameCount=%d, "
557− "uiResolutionChangeTimes=%d, uIDRReqNum=%d, uIDRSentNum=%d, uLTRSentNum=NA, iTotalEncodedBytes=%" PRId64
558− " at Ts = %" PRId64,
557+ "uiResolutionChangeTimes=%d, uIDRReqNum=%d, uIDRSentNum=%d, uLTRSentNum=NA, iTotalEncodedBytes=%lu at Ts = %" PRId64,
559558 iDid, pStatistics->uiWidth, pStatistics->uiHeight,
560559 pStatistics->fAverageFrameSpeedInMs, pStatistics->fAverageFrameRate,
561560 pStatistics->fLatestFrameRate, pStatistics->uiBitRate, pStatistics->uiAverageFrameQP,
562561 pStatistics->uiInputFrameCount, pStatistics->uiSkippedFrameCount,
563562 pStatistics->uiResolutionChangeTimes, pStatistics->uiIDRReqNum, pStatistics->uiIDRSentNum,
564− m_pEncContext->iTotalEncodedBytes[iDid], kiCurrentFrameTs);
563+ pStatistics->iTotalEncodedBytes, kiCurrentFrameTs);
565564 }
566565 }
567566
@@ -622,18 +621,18 @@ void CWelsH264SVCEncoder::UpdateStatistics (SFrameBSInfo* pBsInfo, · 54 unmodified lines
622621 pStatistics->uiLTRSentNum ++;
623622 }
624623
625− m_pEncContext->iTotalEncodedBytes[iDid] += kiCurrentFrameSize;
624+ pStatistics->iTotalEncodedBytes += kiCurrentFrameSize;
626625
627626 const int32_t kiDeltaFrames = static_cast<int32_t> (pStatistics->uiInputFrameCount -
628− m_pEncContext->iLastStatisticsFrameCount[iDid]);
627+ pStatistics->iLastStatisticsFrameCount);
629628 if (kiDeltaFrames > (m_pEncContext->pSvcParam->fMaxFrameRate * 2)) {
630629 const int64_t kiTimeDiff = kiCurrentFrameTs - pStatistics->iStatisticsTs;
631630 if (kiTimeDiff) {
632631 pStatistics->fLatestFrameRate = static_cast<float> ((pStatistics->uiInputFrameCount -
633− m_pEncContext->iLastStatisticsFrameCount[iDid]) * 1000 /
632+ pStatistics->iLastStatisticsFrameCount) * 1000 /
634633 kiTimeDiff);
635− pStatistics->uiBitRate = static_cast<unsigned int> ((m_pEncContext->iTotalEncodedBytes[iDid] -
636− m_pEncContext->iLastStatisticsBytes[iDid]) * 8 * 1000 / kiTimeDiff);
634+ pStatistics->uiBitRate = static_cast<unsigned int> ((pStatistics->iTotalEncodedBytes -
635+ pStatistics->iLastStatisticsBytes) * 8 * 1000 / kiTimeDiff);
637636
638637 if (WELS_ABS (pStatistics->fLatestFrameRate - m_pEncContext->pSvcParam->fMaxFrameRate) > 30) {
639638 WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_WARNING,
@@ -655,8 +654,8 @@ void CWelsH264SVCEncoder::UpdateStatistics (SFrameBSInfo* pBsInfo, · 15 unmodified lines
655654
656655 // update variables
657656 pStatistics->iStatisticsTs = kiCurrentFrameTs;
658− m_pEncContext->iLastStatisticsBytes[iDid] = m_pEncContext->iTotalEncodedBytes[iDid];
659− m_pEncContext->iLastStatisticsFrameCount[iDid] = pStatistics->uiInputFrameCount;
657+ pStatistics->iLastStatisticsBytes = pStatistics->iTotalEncodedBytes;
658+ pStatistics->iLastStatisticsFrameCount = pStatistics->uiInputFrameCount;
660659
661660 //TODO: the following statistics will be calculated and added later
662661 //pStatistics->uiLTRSentNum

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t