Is opengl with Qt on i.MX6Q is slow?
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!
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?