Hi!
I'm doing some research about a planned video viewer application. In fact, I already have a
proof-of-concept application using qt4 for the GUI and the Linux xvideo extension for rendering.
This design choice was based on the fact that Linux was the only target platform. Now, the
requirements have changed. The application is now intended to run on Linux and Mac OSX.
Like other video viewers, the application should receive an infinite series of (uncompressed)
images, and display them for a short amount of time.
My problem is, that I'm not too familiar with the performance limitations of the X11 server
design and the resulting details of the QT paint model. As far as I know, the most relevant
bottleneck is the transfer of image data to the x server. I imagine that, once the image
data is transferred, it can be stored as some kind of resource inside the x server, which allows
fast (recurrent) usage. But this is not what I need, as every image is only showed once...
The only options I know, are xvideo extensions (which are probably not compatible with OSX) and
SDL. SDL should run on OSX, but has a "one window/overlay per process" limitation. This is a
problem, because the viewer should display multiple videos in separate (MDI-)windows.
Is there any other solution, using built-in QT features? I know that OpenGL can be utilized for
painting, but, IIRC, this doesn't speed up the image data transfer.
For example, I've found the QGLFramebufferObject in the QT docs. The name sounds like it could be
the thing I'm looking for...
Thanks for any answers. Also, general information (links) about Qt/OSX painting performance are
greatly appreciated.
Bookmarks