Android: refactor video renderer.

Removed the overhead of having to create a shared OpenGL context in the GUI
thread and pre-render the frame into a FBO.

We now directly render the GL_TEXTURE_EXTERNAL_OES in the QtQuick render
thread, using an Android-specific QSGVideoNode.
We also use a callback from the render thread to create the texture from
there and not have to create a separate shared OpenGL context.

Change-Id: I6c8eb94b47d0a03329c912701b8af3fb5ebd1876
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
This commit is contained in:
Yoann Lopes
2013-09-27 11:24:10 +02:00
committed by The Qt Project
parent 329d9d4563
commit be7a6241e7
20 changed files with 554 additions and 299 deletions

View File

@@ -0,0 +1,16 @@
TARGET = qtsgvideonode_android
QT += quick multimedia-private qtmultimediaquicktools-private
PLUGIN_TYPE = video/videonode
PLUGIN_CLASS_NAME = QAndroidSGVideoNodeFactoryPlugin
load(qt_plugin)
HEADERS += \
qandroidsgvideonodeplugin.h \
qandroidsgvideonode.h
SOURCES += \
qandroidsgvideonodeplugin.cpp \
qandroidsgvideonode.cpp
OTHER_FILES += android_videonode.json