Is opengl with Qt on i.MX6Q is slow?

  • Hi all,

    I am new to embedded with Qt.

    I have a Qt Quick application, in which I am trying is to grab whenever a screen change occurs and this is time critical.

    I tried using Qml grab function as well as QQuickRenderControl grab function.

    Both on i.MX6Q device takes almost 2 seconds. While on PC it takes only ~50 ms.

    The screen resolution which I display my screen is 1920x1080.

    Board is Sabre i.MX6Q with Yocto krogoth.

    It seems like opengl is slow than expected on a sabre board.

    I would like to know if there is any way to grab the screen in a faster method, say in milli seconds.

    Thanks in advance!

  • Lifetime Qt Champion


    Can you describe what exactly you are trying to achieve ?

  • I am trying to make an application that is similar to "desktop presentation in skype".

    My application screen shall be displayed to another device screen connected through network. To make this possible I am trying to grab screen whenever there is a screen update, and send to the latter through network.

    But since grab is very slow, it doesn't feel real time. :(

  • I use for similar solution a modified sources from the ShaderEffect item as a grabber. This grabber item duplicates my desired source item on some other place (e.g. in out of window area), and then I got a frames from this grabber when a source item changes. I know, it is ugly, because it duplicates a source item (but it is fast), but I did not find any other solution.. I had asked this on mailing-list, on some other forums, but without of success. I'm not an OpenGL expert.

  • Are you using QScreen()?

    Is your Linux server using graphical (X11, Wayland) or EGLFS?

Log in to reply

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.