Showing the changes to codec/encoder/plus/src/welsEncoderExt.cpp (1 of 1 file). Show all
Unified · Split
| @@ -640,11 +640,13 @@ void CWelsH264SVCEncoder::UpdateStatistics (const int64_t kiCurrentFrameTs, EVid · 639 unmodified lines | ||
| 640 | 640 | |
| 641 | 641 | if (m_pEncContext->iStatisticsLogInterval > 0) { |
| 642 | 642 | int64_t iTimeDiff = kiCurrentFrameTs - m_pEncContext->iLastStatisticsLogTs; |
| 643 | − if (iTimeDiff > m_pEncContext->iStatisticsLogInterval) { | |
| 644 | − pStatistics->fLatestFrameRate = (pStatistics->uiInputFrameCount - m_pEncContext->iLastStatisticsFrameCount) * 1000 / | |
| 645 | − iTimeDiff; | |
| 646 | − pStatistics->uiBitRate = static_cast<unsigned int> ((m_pEncContext->iTotalEncodedBits - | |
| 647 | − m_pEncContext->iLastStatisticsBits) * 1000 / iTimeDiff); | |
| 643 | + if (iTimeDiff > m_pEncContext->iStatisticsLogInterval || 0 == pStatistics->uiInputFrameCount % 300) { | |
| 644 | + if (iTimeDiff) { | |
| 645 | + pStatistics->fLatestFrameRate = (pStatistics->uiInputFrameCount - m_pEncContext->iLastStatisticsFrameCount) * 1000 / | |
| 646 | + iTimeDiff; | |
| 647 | + pStatistics->uiBitRate = static_cast<unsigned int> ((m_pEncContext->iTotalEncodedBits - | |
| 648 | + m_pEncContext->iLastStatisticsBits) * 1000 / iTimeDiff); | |
| 649 | + } | |
| 648 | 650 | |
| 649 | 651 | // update variables |
| 650 | 652 | m_pEncContext->iLastStatisticsLogTs = kiCurrentFrameTs; |