1
0

Fixed bad time stamp behavior in corner case soft 3:2 clip.

git-svn-id: svn://svn.code.sf.net/p/qsdecoder/code/trunk/IntelQuickSyncDecoder@97 dfccccb7-dd81-40b7-a334-5a7ba89c2b1d
This commit is contained in:
egur 2014-02-04 13:26:45 +00:00
parent b4b645b7c8
commit 2741c2dd26

View File

@ -117,7 +117,7 @@ bool CDecTimeManager::GetSampleTimeStamp(const TFrameVector& frames,
// Check if frame rate has changed
double tmpFrameRate;
if (CalcCurrentFrameRate(tmpFrameRate, frames.size()))
if (!m_bIvtc && CalcCurrentFrameRate(tmpFrameRate, frames.size()))
{
FixFrameRate(tmpFrameRate);
}
@ -225,10 +225,10 @@ bool CDecTimeManager::GetSampleTimeStamp(const TFrameVector& frames,
auto it = m_OutputTimeStamps.begin();
if (it != m_OutputTimeStamps.end())
{
REFERENCE_TIME rtTemp = *(it);
REFERENCE_TIME rtTemp = *it;
// Check if the lowest timetamp is very far (100ms) than the expected timestamp
if (abs(rtTemp - rtStart) > 1000000)
if (!m_bIvtc && abs(rtTemp - rtStart) > 1000000)
{
MSDK_TRACE("QsDecoder: Warning detected long time stamp gap!\n");
rtStart = rtTemp;