Module: wine Branch: master Commit: f66ad4dbe0433b6679d61f6a147b2cb5e3712fae URL: http://source.winehq.org/git/wine.git/?a=commit;h=f66ad4dbe0433b6679d61f6a14...
Author: Maarten Lankhorst m.b.lankhorst@gmail.com Date: Fri Apr 11 16:40:56 2008 -0700
quartz: Make the avi splitter skip index headers.
---
dlls/quartz/avisplit.c | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/dlls/quartz/avisplit.c b/dlls/quartz/avisplit.c index ce44f95..7a7baff 100644 --- a/dlls/quartz/avisplit.c +++ b/dlls/quartz/avisplit.c @@ -138,6 +138,7 @@ static HRESULT AVISplitter_Sample(LPVOID iface, IMediaSample * pSample) WORD streamId; Parser_OutputPin * pOutputPin; BOOL bSyncPoint = TRUE; + BYTE *fcc = (BYTE *)&This->CurrentChunk.fcc;
if (This->CurrentChunkOffset >= tStart) offset_src = (long)BYTES_FROM_MEDIATIME(This->CurrentChunkOffset - tStart) + sizeof(RIFFCHUNK); @@ -196,6 +197,13 @@ static HRESULT AVISplitter_Sample(LPVOID iface, IMediaSample * pSample) #endif }
+ if (fcc[0] == 'i' && fcc[1] == 'x') + { + if (S_FALSE == AVISplitter_NextChunk(&This->CurrentChunkOffset, &This->CurrentChunk, &tStart, &tStop, pbSrcStream, FALSE)) + bMoreData = FALSE; + continue; + } + streamId = StreamFromFOURCC(This->CurrentChunk.fcc);
if (streamId > This->Parser.cStreams)