Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.1.0 Beta 1, 5.2.1
-
Windows 7, 64 bit using Qt 5.1.0 beta1 msvc2010 opengl x86, nvidia Geforce GTX 560M, intel i7 processor, 12 GB ram
-
04edeafade9058bde6d6dd58e6b1a89bace2fd50
Description
During developing an application which amongst other things plays back
video files using the Qt 5.1 beta version on Windows 7, I've run into a
serious problem with the media backend.
To reproduce this: use for example "Big buck bunny" from here, http://www.bigbuckbunny.org/index.php/download/
Take the 854x480p h264 file.
Use the CuteTime demo player from here:
https://github.com/nezticle/cutetime
as it shows the same issue that I get in my own player.
Playback starts OK but if you let it play until 3:34, it will play in
"fast-forward", with a mismatch between true video position and the one reported by QMediaplayer. Trying to seek before this happens will make the video hang. Before 3:34 there will be the occational video stutter, with this debug output appearing on the console:
currentPresentTime = 102.334 and sampleTime is 102.249
This only happens using the OpenGL build, not if you use the
Angle-build. The issue always happens at about 3:34 into the film, also
with my own video files. I have not been able to reproduce this using
one of the example players that come with Qt, it seems like it is
somehow triggered by having more than just a video item on the screen
using Quick2 (such as a text label with the current media position).
I've briefly looked into the WMF backend code and found that there is
indeed some ifdef's concerning the use of either OpenGL or Angle.
Quoting Yoann Lopes from the qt mailinglist:
This is a known issue.
Angle and OpenGL builds use different decoding pipelines. With Angle, the plugin can do hardware decoding using DXVA, while when using pure OpenGL it is not possible and the pipeline is setup with a custom video sink (software decoding) that is known to be buggy...
If you can, use the Angle build. Not only you'll get better performance but it will also be much more stable.
The problem you are reporting should probably be fixed anyway, please create a bug report.
Attachments
For Gerrit Dashboard: QTBUG-31800 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
81128,2 | WMF: fix some issues with our custom video sink. | stable | qt/qtmultimedia | Status: MERGED | +2 | 0 |