diff options
author | v0lt <v0lt@users.sourceforge.net> | 2012-04-07 22:07:12 +0400 |
---|---|---|
committer | v0lt <v0lt@users.sourceforge.net> | 2012-04-07 22:07:12 +0400 |
commit | 67aa4877ccb95e0d07901a4e82939d0e427724b2 (patch) | |
tree | b75fe294c53a19dc6c205d0a36c53ddf510255cc | |
parent | 37f49b11560289fcf9ccfcdd724f50933fb69e19 (diff) |
MatroskaSplitter: added support for QT video formats in matroska v.1
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@4282 10f7b99b-c216-0410-bff0-8a66a9350fd8
-rw-r--r-- | src/filters/parser/MatroskaSplitter/MatroskaSplitter.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/filters/parser/MatroskaSplitter/MatroskaSplitter.cpp b/src/filters/parser/MatroskaSplitter/MatroskaSplitter.cpp index d284afab0..4e8f6cbf7 100644 --- a/src/filters/parser/MatroskaSplitter/MatroskaSplitter.cpp +++ b/src/filters/parser/MatroskaSplitter/MatroskaSplitter.cpp @@ -381,7 +381,12 @@ avcsuccess: mts.Add(mt);
bHasVideo = true;
} else if (CodecID == "V_QUICKTIME" && pTE->CodecPrivate.GetCount() >= 8) {
- DWORD* type = (DWORD*)(pTE->CodecPrivate.GetData() + 4);
+ DWORD* type;
+ if (m_pFile->m_ebml.DocTypeReadVersion == 1) {
+ type = (DWORD*)(pTE->CodecPrivate.GetData());
+ } else {
+ type = (DWORD*)(pTE->CodecPrivate.GetData() + 4);
+ }
if (*type == MAKEFOURCC('S','V','Q','3') || *type == MAKEFOURCC('S','V','Q','1') || *type == MAKEFOURCC('c','v','i','d')) {
mt.subtype = FOURCCMap(*type);
mt.formattype = FORMAT_VideoInfo;
|