[Qt-interest] Showstopper for Webkit with Flash video in graphicsview

Luc Devallonné luc.devallonne at mnemis.com
Tue Sep 8 09:40:29 CEST 2009


Hi Andrew,

We spend some time on that particular problem and came to the
following understanding (I assume you are on Windows, on OSX there is
another set of problems and we did not try on Linux yet):

- If a flash content is running in windowless mode, then Qt is able to
render it's content into a scene/view context as the plugin first
renders into an off screen bitmap and as such can be copied into the
scene/view.

- If a flash content is not running in windowless mode, the flash
plugin creates a native windows to render it's content, so Qt has no
chance to render it as neither WebKit nor Qt have control over the
drawing process.

In our case we forced the window mode to opaque and are able to run
embeded Flash content into a scene/view, but if your goal is to render
any flash content from any Intenet page, you will need to find a way
to force the wmode to windowless (not sure how ...).

Nevertheless, on Windows there is a small problem with mouse move
events, and you will have to apply a patch to Qt 4.5.2 to make it work
in window less mod

http://qt.gitorious.org/+mnemis/qt/mnemogit/commit/6374d513dd3186d05a742d50784fa223dea7366f

Hope this helps

Luc

Some background reading:

NPAPI window/windowless spec:
https://developer.mozilla.org/en/Gecko_Plugin_API_Reference:Plug-in_Basics#Windowed%20and%20Windowless%20Plug-ins
Flash wmode howto: http://kb2.adobe.com/cps/142/tn_14201.html

>   2. Showstopper for Webkit with Flash video in        graphicsview
> Date: Tue, 8 Sep 2009 10:55:50 +1000
> From: Andrew Stuart <andrew.stuart at flatraterecruitment.com.au>
> Subject: [Qt-interest] Showstopper for Webkit with Flash video in
>        graphicsview
> To: qt-interest at trolltech.com
> Message-ID:
>        <DB38E75B-F001-41BF-863C-3E8ED08EF135 at flatraterecruitment.com.au>
> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
>
> Hi folks,
>
> Firstly a shout out to the great work of QT developers - thanks for
> the good stuff.
>
> Flash video does not work when webkit is displayed using
> graphicsview.  The audio plays but the video is not shown. It's a real
> problem and it means we can't use graphicsview for our application and
> therefore can't use anything that depends on graphicsview like
> declarative UI.
>
> It's not practical for us to ship an application if Flash video does
> not play - we would have to say to our users: "Here's our app -
> everything works except youtube and all other web video."
>
> We've tried it using 4.6 snapshot as well and the problem remains.
>
> It's a real pity not be able to use graphicsview because of this one
> single showstopper issue.
>
> This has been discussed on this list before but nothing seems to have
> come of it: http://lists.trolltech.com/pipermail/qt-interest/2009-February/002976.html
>
> I'm looking for anything that might suggest that QT is aware of and
> planning to fix it.  If we know that it will be fixed then perhaps we
> can live with it.  If we know that QT does not intend to fix it then
> we'll make an architectural decision not to use graphicsview (which
> unfortunately takes away many juicy bits of QT that we wanted to use).
>
> Thanks again for the great work.
>
> AS




More information about the Qt-interest-old mailing list