Aric Stewart : wineqtdecoder: Calculate AvgTimePerFrame for video tracks.
Alexandre Julliard
julliard at winehq.org
Mon Jul 22 14:22:46 CDT 2013
Module: wine
Branch: master
Commit: deff27e23ee9dca1791501c3ba31a0e6cf042c64
URL: http://source.winehq.org/git/wine.git/?a=commit;h=deff27e23ee9dca1791501c3ba31a0e6cf042c64
Author: Aric Stewart <aric at codeweavers.com>
Date: Mon Jul 15 13:04:42 2013 -0500
wineqtdecoder: Calculate AvgTimePerFrame for video tracks.
---
dlls/wineqtdecoder/qtsplitter.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/dlls/wineqtdecoder/qtsplitter.c b/dlls/wineqtdecoder/qtsplitter.c
index 03cc8a9..9aa6314 100644
--- a/dlls/wineqtdecoder/qtsplitter.c
+++ b/dlls/wineqtdecoder/qtsplitter.c
@@ -884,6 +884,10 @@ static HRESULT QT_Process_Video_Track(QTSplitter* filter, Track trk)
int t;
DWORD outputWidth, outputHeight, outputDepth;
Fixed trackWidth, trackHeight;
+ Media videoMedia;
+ long sampleCount;
+ TimeValue64 duration;
+ TimeScale timeScale;
ZeroMemory(&amt, sizeof(amt));
amt.formattype = FORMAT_VideoInfo;
@@ -952,6 +956,12 @@ static HRESULT QT_Process_Video_Track(QTSplitter* filter, Track trk)
return E_FAIL;
}
+ videoMedia = GetTrackMedia(trk);
+ sampleCount = GetMediaSampleCount(videoMedia);
+ timeScale = GetMediaTimeScale(videoMedia);
+ duration = GetMediaDisplayDuration(videoMedia);
+ pvi->AvgTimePerFrame = (100000.0 * sampleCount * timeScale) / duration;
+
piOutput.dir = PINDIR_OUTPUT;
piOutput.pFilter = &filter->filter.IBaseFilter_iface;
lstrcpyW(piOutput.achName,szwVideoOut);
More information about the wine-cvs
mailing list