gstreamer/ext/qt
Nirbheek Chauhan 0de89c0dbe qt: Don't define GLsync inside gstglfuncs.h
This was originally added for fixing conflicting definitions between
Android and Qt, but times have changed and now this breaks the build
on iOS:

 [...]/OpenGLES.framework/Headers/ES3/gl.h:1006:48: error: unknown type name 'gst_qt_GLsync'
 GL_API void           GL_APIENTRY glGetSynciv (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values)   OPENGLES_DEPRECATED(ios(7.0, 12.0), tvos(9.0, 12.0));
                                               ^
 ../ext/qt/gstqtgl.h:49:16: note: expanded from macro 'GLsync'
 #define GLsync gst_qt_GLsync
                ^
 6 errors generated.

Instead, we simply avoid defining GLsync ourselves if we're using Qt.
2019-02-01 14:28:18 +05:30
..
.gitignore new qt5 qml GL video sink 2015-07-10 15:25:26 +10:00
gstplugin.cc qt: fix build with qmake 2017-09-07 09:39:13 +01:00
gstqsgtexture.cc qt: fix broken build due to commit 2fd84a6c for gstgl 2017-08-22 13:44:20 +01:00
gstqsgtexture.h qmlglsink: Add dummy texture that is shown as placeholder for NULL buffers 2017-05-21 16:52:23 +02:00
gstqtgl.h qt: Don't define GLsync inside gstglfuncs.h 2019-02-01 14:28:18 +05:30
gstqtglutility.cc qmlgl: qmake: fix building for android 2019-01-21 11:55:50 +02:00
gstqtglutility.h qt: implement qmlglsrc for qml view grab 2016-08-03 22:11:11 +10:00
gstqtsink.cc Request minimum buffer even if need_pool is FALSE 2017-09-06 14:19:37 -04:00
gstqtsink.h qt: Use a proxy object for access to the QML widget 2017-07-12 15:51:11 +10:00
gstqtsrc.cc gl/format: use our own GL format enum's instead of gstvideo's 2017-03-13 21:10:58 +11:00
gstqtsrc.h qmlglsrc: some enhancements for qmlglsrc 2016-11-08 02:05:20 +11:00
Makefile.am gl: update plugins to use GstGL from -base 2017-12-19 12:02:31 +00:00
meson.build meson: Fix indentation in qt plugin and add a FIXME comment 2019-02-01 14:28:18 +05:30
qtitem.cc qmlglsink: Expose itemInitialized as property 2017-09-14 15:12:12 +10:00
qtitem.h qmlglsink: Expose itemInitialized as property 2017-09-14 15:12:12 +10:00
qtplugin.pro qmlgl: qmake: add support for MacOS target 2019-01-21 11:55:50 +02:00
qtwindow.cc qt: ensure GL_DRAW_FRAMEBUFFER 2017-08-31 12:41:52 +10:00
qtwindow.h qmlglsrc: use glBlitFramebuffer to copy texture for GLES3.0 2017-01-10 21:34:30 +11:00
README.md qmlgl: add README.md with information on building for non-linux platforms with qmake 2019-01-21 11:55:50 +02:00

Building for non-linux platforms

Compiling the gstqmlgl plugin for non-linux platforms is not so trivial. This file explains the steps that need to be followed for a successful build.

Step 1

Build GStreamer for the target platform using cerbero.

Step 2

Enter the cerbero shell:

./cerbero-uninstalled -c config/<target platform config>.cbc shell

Step 3

Export the following environment variables:

export PATH=/path/to/Qt/<version>/<platform>/bin:$PATH

if you are cross-compiling (ex. for android), also export:

export PKG_CONFIG_SYSROOT_DIR=/

Additionally, if you are building for android:

export ANDROID_NDK_ROOT=$ANDROID_NDK

Note: the ANDROID_NDK variable is set by the cerbero shell; if you are not using this shell, set it to the directory where you have installed the android NDK. Additionally, if you are not building through the cerbero shell, it is also important to have set PKG_CONFIG_LIBDIR to $GSTREAMER_ROOT/lib/pkgconfig.

Step 4

cd to the directory of the gstqmlgl plugin and run:

qmake .
make

Step 5

Copy the built plugin to your $GSTREAMER_ROOT/lib/gstreamer-1.0 or link to it directly if it is compiled statically