[webkit-qt] Performance workaround?

Gordon Schumacher gordons at valleyhold.org
Mon Jun 21 09:25:53 PDT 2010

I wanted to try to pick people's brains on the performance issues
described at http://trac.webkit.org/wiki/QtWebKitMediaElementSupport -
primarily that HTML5 video rendering is happening via software, in order
to avoid rendering issues.  On Windows, performance is reasonable, but
on OSX it is pretty awful (on the order of 30% of the performance of the
same video displayed in the QuickTime plugin).

I understand that QtMultimedia is the real solution, but I wanted to see
if anyone could think of some workarounds for the time being.  I'm going
to have control over the content being displayed for this project, so
not being able to render elements which overlap the video is not an
issue for me.  If there's not an existing way to work around it, I
wonder if it would be reasonable to add a flag (perhaps via
QWebSettings?) for "I need hardware rendering - damn the torpedoes, full
speed ahead!", with the understanding that the framework is no longer
responsible for rendering issues.  Alternately, perhaps the way to
signal QtWebKit to use hardware rendering could be for it to check
whether its parent is a QGLWidget?

If there's an existing way to accomplish a workaround, that would of
course be best, but my understanding from chatting on IRC is that the
Phonon::VideoPlayer QWidget which is created to play HTML5 video has
been equipped with a super-secret invisibilty field, and is thus not
visible to the QObject hierarchy - which would make it difficult to be
able to clear the WA_DontShowOnScreen flag.  Any thoughts welcome!

More information about the webkit-qt mailing list