diff options
author | Yoann Lopes <yoann.lopes@digia.com> | 2013-09-27 11:24:10 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-01 17:26:21 +0200 |
commit | be7a6241e77f67e4a19c63ac5683dd7fa566e9d2 (patch) | |
tree | ab8b66b5124d4a982d7690cf7893a40650bccc8d /src/multimedia/qtmultimediaquicktools_headers | |
parent | 329d9d4563445d785284a02983e237ff1a07f5dd (diff) |
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>
Diffstat (limited to 'src/multimedia/qtmultimediaquicktools_headers')
-rw-r--r-- | src/multimedia/qtmultimediaquicktools_headers/qsgvideonode_p.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/multimedia/qtmultimediaquicktools_headers/qsgvideonode_p.h b/src/multimedia/qtmultimediaquicktools_headers/qsgvideonode_p.h index 4590e2f96..71230ca35 100644 --- a/src/multimedia/qtmultimediaquicktools_headers/qsgvideonode_p.h +++ b/src/multimedia/qtmultimediaquicktools_headers/qsgvideonode_p.h @@ -69,7 +69,7 @@ private: int m_orientation; }; -class QSGVideoNodeFactoryInterface +class Q_MULTIMEDIAQUICK_EXPORT QSGVideoNodeFactoryInterface { public: virtual QList<QVideoFrame::PixelFormat> supportedPixelFormats(QAbstractVideoBuffer::HandleType handleType) const = 0; @@ -79,7 +79,7 @@ public: #define QSGVideoNodeFactoryInterface_iid "org.qt-project.qt.sgvideonodefactory/5.0" Q_DECLARE_INTERFACE(QSGVideoNodeFactoryInterface, QSGVideoNodeFactoryInterface_iid) -class QSGVideoNodeFactoryPlugin : public QObject, public QSGVideoNodeFactoryInterface +class Q_MULTIMEDIAQUICK_EXPORT QSGVideoNodeFactoryPlugin : public QObject, public QSGVideoNodeFactoryInterface { Q_OBJECT Q_INTERFACES(QSGVideoNodeFactoryInterface) |