diff options
author | Hendrik Leppkes <h.leppkes@gmail.com> | 2013-01-05 17:16:46 +0400 |
---|---|---|
committer | Hendrik Leppkes <h.leppkes@gmail.com> | 2013-01-05 17:16:46 +0400 |
commit | 32d6f45c748cc4fba6ae24f95d0f6dc0ff36fa33 (patch) | |
tree | befeffb7dba8f8d739055c405560c99e67b6b043 /demuxer | |
parent | 05a2fc42d10600352151af02139034def56e9edf (diff) |
Support IKeyFrameInfo for MP4 files
Diffstat (limited to 'demuxer')
-rw-r--r-- | demuxer/Demuxers/LAVFDemuxer.cpp | 6 | ||||
-rw-r--r-- | demuxer/Demuxers/LAVFDemuxer.h | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/demuxer/Demuxers/LAVFDemuxer.cpp b/demuxer/Demuxers/LAVFDemuxer.cpp index f7c8fb80..9ef775d3 100644 --- a/demuxer/Demuxers/LAVFDemuxer.cpp +++ b/demuxer/Demuxers/LAVFDemuxer.cpp @@ -86,6 +86,7 @@ CLAVFDemuxer::CLAVFDemuxer(CCritSec *pLock, ILAVFSettingsInternal *settings) , m_bEVO(FALSE) , m_bRM(FALSE) , m_bPMP(FALSE) + , m_bMP4(FALSE) , m_bBluRay(FALSE) , m_pBluRay(NULL) , m_bVC1Correction(FALSE) @@ -373,6 +374,7 @@ STDMETHODIMP CLAVFDemuxer::InitAVFormat(LPCOLESTR pszFileName) m_bEVO = ((extension ? _wcsicmp(extension, L".evo") == 0 : TRUE) && _stricmp(m_pszInputFormat, "mpeg") == 0); m_bRM = (_stricmp(m_pszInputFormat, "rm") == 0); m_bPMP = (_stricmp(m_pszInputFormat, "pmp") == 0); + m_bMP4 = (_stricmp(m_pszInputFormat, "mp4") == 0); if (AVFORMAT_GENPTS) { m_avFormat->flags |= AVFMT_FLAG_GENPTS; @@ -923,7 +925,7 @@ STDMETHODIMP CLAVFDemuxer::GetKeyFrameCount(UINT& nKFs) { if(m_dActiveStreams[video] < 0) { return E_NOTIMPL; } - if (!m_bMatroska && !m_bAVI) { + if (!m_bMatroska && !m_bAVI && !m_bMP4) { return E_FAIL; } @@ -944,7 +946,7 @@ STDMETHODIMP CLAVFDemuxer::GetKeyFrames(const GUID* pFormat, REFERENCE_TIME* pKF if(m_dActiveStreams[video] < 0) { return E_NOTIMPL; } - if (!m_bMatroska && !m_bAVI) { + if (!m_bMatroska && !m_bAVI && !m_bMP4) { return E_FAIL; } diff --git a/demuxer/Demuxers/LAVFDemuxer.h b/demuxer/Demuxers/LAVFDemuxer.h index a80b6b20..f8ad1422 100644 --- a/demuxer/Demuxers/LAVFDemuxer.h +++ b/demuxer/Demuxers/LAVFDemuxer.h @@ -163,6 +163,7 @@ private: BOOL m_bEVO; BOOL m_bRM; BOOL m_bPMP; + BOOL m_bMP4; BOOL m_bVC1Correction; BOOL m_bSubStreams; |