PDA

View Full Version : QPainter QPaintDevice and QOpenGLFrameBufferObject Possible Incompatibility



gaurav.kumar
13th February 2018, 20:13
Hello,

I am fairly new to QT development and so maybe not good at understanding documentation very well. I am using a QT5.7 and can see that QPainter needs a QPaintDevice for Initialization in one of the constructors which do not have QOpenGLFrameBufferObject specified in the list of "Inherited by" section of QPaintDevice. Same is reflected in the compilation and I get an error if I do so. Everything is as expected until here.

But in the documentation of QOpenGLFrameBufferObject I can see a QPainter can be used to draw on this. Is there any other way to make it working with QPainter.

A bit of task context:
I am using a video and drawing some shaped over it to reflect my research data and for this I implemented QAbstractVideoSurface. The loading of the current frame converted to QPixMap or QImage becomes very slow and so I am trying options with hardware acceleration of OpenGL.

First is it correct thing to try QOpenGL for this problem.
Second if I am missing something in using QOpenGL extension of QT to make it work with QPainter.

Any other hint to make things faster in realtime processing is appreciated.