diff options
author | Val Doroshchuk <valentyn.doroshchuk@qt.io> | 2019-04-10 15:50:48 +0200 |
---|---|---|
committer | VaL Doroshchuk <valentyn.doroshchuk@qt.io> | 2019-05-14 07:54:50 +0000 |
commit | c4de056a6aa44567cdbf2ce91a464e597ad4af8f (patch) | |
tree | 57f7c4f7ac91b9b8a5bbede90480070bbe25c88f | |
parent | 14d68efadc43265c640dcd6796d947890d14f15e (diff) | |
download | qtmultimedia-c4de056a6aa44567cdbf2ce91a464e597ad4af8f.tar.gz |
EVR: Remove setting of start/end times in QVideoFrame
Due to unknown bug in IMFTransform->ProcessOutput() when after seeking
sample times are not set correctly to provided IMFSample.
This causes current playback position to be not respected in video samples.
Even if you seeked to higher/lower position, sample time is always counted
from beginning.
Which makes no sense to use this feature because video frame's sample times
are not related to current position.
To test it, need just seek to arbitrary position and check how startTime
is not correlated to new position.
Fixes tst_QMediaPlayerBackend::seekPauseSeek
Task-number: QTBUG-65574
Change-Id: I897d75c055347cdcca38a84dc18f91800d070c09
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
-rw-r--r-- | src/plugins/common/evr/evrd3dpresentengine.cpp | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/src/plugins/common/evr/evrd3dpresentengine.cpp b/src/plugins/common/evr/evrd3dpresentengine.cpp index ab694b795..4ce5a99d7 100644 --- a/src/plugins/common/evr/evrd3dpresentengine.cpp +++ b/src/plugins/common/evr/evrd3dpresentengine.cpp @@ -593,16 +593,6 @@ QVideoFrame D3DPresentEngine::makeVideoFrame(IMFSample *sample) m_surfaceFormat.frameSize(), m_surfaceFormat.pixelFormat()); - // WMF uses 100-nanosecond units, Qt uses microseconds - LONGLONG startTime = -1; - if (SUCCEEDED(sample->GetSampleTime(&startTime))) { - frame.setStartTime(startTime * 0.1); - - LONGLONG duration = -1; - if (SUCCEEDED(sample->GetSampleDuration(&duration))) - frame.setEndTime((startTime + duration) * 0.1); - } - return frame; } |