QNX: Remove most of the CPU overhead for video rendering
authorFabian Bumberger <fbumberger@rim.com>
Fri, 21 Mar 2014 15:02:48 +0000 (16:02 +0100)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Tue, 1 Apr 2014 13:01:41 +0000 (15:01 +0200)
commit36649887e8ba8841b45522a772cf83b5c5130fca
tree123a5a79b8dcb765bfa8dd5dcca59c693ec8fea0
parentd2b54b360ec0cedf2dfd64c72cc8f476fb93bc7c
QNX: Remove most of the CPU overhead for video rendering

This patch uses the GL_OES_EGL_image extension to create a OpenGL Texture handle
for a libscreen pixmap. If the extension is not available it uses the "old"
technique as fallback where the image data is copied into a QImage.

This reduces the CPU load by more than 70% and allows HD videos to be played jitter-free.

Task-number: QTBUG-37752

Change-Id: I4cad22c39390e4cf9eb5be5f0bfe446544a11b9e
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
src/plugins/qnx/camera/bbcamerasession.cpp
src/plugins/qnx/common/windowgrabber.cpp
src/plugins/qnx/common/windowgrabber.h
src/plugins/qnx/mediaplayer/mmrendererplayervideorenderercontrol.cpp
src/plugins/qnx/mediaplayer/mmrendererplayervideorenderercontrol.h
src/qtmultimediaquicktools/qdeclarativevideooutput_render.cpp