shithub: openh264

Download patch

ref: 054b8eeb3abcb19ae2eb39c9d802b21ea2648974
parent: 60b6ce1454db0bf5318a39121cff5f50c4332092
parent: 8b9be2b3dc0017bc584d2cf0b2d88604e382e808
author: HaiboZhu <[email protected]>
date: Thu Dec 4 10:37:10 EST 2014

Merge pull request #1588 from huili2/dec_stat_accumulate

accumulate dec stat

--- a/codec/api/svc/codec_app_def.h
+++ b/codec/api/svc/codec_app_def.h
@@ -621,8 +621,8 @@
   uiAvgEcRatio;                                ///< when EC is on, the average ratio of correct or EC areas, can be an indicator of reconstruction quality
   unsigned int uiEcIDRNum;                     ///< number of actual unintegrity IDR or not received but eced
   unsigned int uiEcFrameNum;                   ///<
-  unsigned int uiIDRLostNum;                   ///< number of lost IDR
-  unsigned int uiFreezingIDRNum;               ///< number of freezing IDR with error
+  unsigned int uiIDRLostNum;                   ///< number of whole lost IDR
+  unsigned int uiFreezingIDRNum;               ///< number of freezing IDR with error (partly received), under resolution change
   unsigned int uiFreezingNonIDRNum;            ///< number of freezing non-IDR with error
   int iAvgLumaQp;                              ///< average luma QP. default: -1, no correct frame outputted
 
--- a/codec/decoder/plus/src/welsDecoderExt.cpp
+++ b/codec/decoder/plus/src/welsDecoderExt.cpp
@@ -373,8 +373,6 @@
 
     pDecoderStatistics->fAverageFrameSpeedInMs = (float) (m_pDecContext->dDecTime) /
         (m_pDecContext->sDecoderStatistics.uiDecodedFrameCount);
-    ResetDecStatNums (&m_pDecContext->sDecoderStatistics);
-    m_pDecContext->dDecTime = 0;
 
     return cmResultSuccess;
   }
@@ -497,8 +495,8 @@
 
     m_pDecContext->sDecoderStatistics.uiDecodedFrameCount++;
     if (m_pDecContext->sDecoderStatistics.uiDecodedFrameCount == 0) { //exceed max value of uint32_t
-        ResetDecStatNums (&m_pDecContext->sDecoderStatistics);
-        m_pDecContext->sDecoderStatistics.uiDecodedFrameCount++;
+      ResetDecStatNums (&m_pDecContext->sDecoderStatistics);
+      m_pDecContext->sDecoderStatistics.uiDecodedFrameCount++;
     }
 
     if ((m_pDecContext->sDecoderStatistics.uiWidth != (unsigned int) pDstInfo->UsrData.sSystemBuffer.iWidth)