Wednesday, August 19, 2015

i.MX6 Qt Quick2 display mirroring and scaling

This is about  screen mirroring and scaling with Qt Quick2 content on the i.MX6.


The way I did it was to use the IPU's to scale and copy out a grabbed screen image to the second display. The event mechanism was triggered by a Quick property in the Window item.

The linked file isn't the exact source code that went into production, but it shows the how  the mirror / scaling can be done. It contains a nasty goto/label thing ... useful in the context since if something breaks, the IPU tasks needs to be shutdown and not to be started again. 

The performance is quite good thanks to the high performance IPU's. There is some load on the CPU when doing the "grab", but it isn't a problem on a Quad i.MX6


 The sourcecode below can be used under the LGPL v2 or later license. The complete code package is available on request.



qsgthreadedrenderloop.cpp

3 comments:

Yatsukura said...

Hello,
I 'd like to try this program "qsgthreadedrenderloop.cpp" .
Can I get the complete package?

Y.Yatsukura ( yatsukura@misnet.co.jp )
Yamashita Systems Corp.
Japan

Unknown said...
This comment has been removed by the author.
Unknown said...

Hi, could you send me the complete package(j_w_song@naver.com) ?
thanks