From fa3c3b8434a9eff02b969fd27dad1aad1be43707 Mon Sep 17 00:00:00 2001 From: Matthew Waters Date: Thu, 10 Jan 2013 01:13:23 +1100 Subject: [PATCH] [642/906] add gstglconfig.h for apps to find out what our capabilites are ie libgstgl can be compiled with any combination of opengl/gles2 --- gst-libs/gst/gl/gstglapi.c | 4 +- gst-libs/gst/gl/gstglapi.h | 12 +++-- gst-libs/gst/gl/gstgldisplay.c | 60 ++++++++++----------- gst-libs/gst/gl/gstgldisplay.h | 4 +- gst-libs/gst/gl/gstgldownload.c | 32 +++++------ gst-libs/gst/gl/gstgldownload.h | 6 +-- gst-libs/gst/gl/gstglfeature.c | 28 +++++----- gst-libs/gst/gl/gstglfilter.c | 4 +- gst-libs/gst/gl/gstglfilter.h | 4 +- gst-libs/gst/gl/gstglmemory.c | 8 +-- gst-libs/gst/gl/gstglshader.c | 24 ++++----- gst-libs/gst/gl/gstglshader.h | 2 +- gst-libs/gst/gl/gstglshadervariables.c | 2 +- gst-libs/gst/gl/gstglupload.c | 30 +++++------ gst-libs/gst/gl/gstglupload.h | 6 +-- gst-libs/gst/gl/gstglwindow.c | 16 +++--- gst-libs/gst/gl/win32/gstglwindow_win32.c | 4 +- gst-libs/gst/gl/x11/gstglwindow_x11.c | 16 +++--- gst/gl/effects/gstgleffectidentity.c | 4 +- gst/gl/effects/gstgleffectmirror.c | 6 +-- gst/gl/effects/gstgleffectsqueeze.c | 6 +-- gst/gl/effects/gstgleffectssources.c | 8 +-- gst/gl/effects/gstgleffectssources.h | 4 +- gst/gl/gltestsrc.c | 6 +-- gst/gl/gstgleffects.c | 10 ++-- gst/gl/gstgleffects.h | 2 +- gst/gl/gstglfiltercube.c | 18 +++---- gst/gl/gstopengl.c | 8 +-- tests/check/pipelines/simple-launch-lines.c | 10 ++-- 29 files changed, 174 insertions(+), 170 deletions(-) diff --git a/gst-libs/gst/gl/gstglapi.c b/gst-libs/gst/gl/gstglapi.c index 86ff505cca..d771d13dab 100644 --- a/gst-libs/gst/gl/gstglapi.c +++ b/gst-libs/gst/gl/gstglapi.c @@ -25,7 +25,7 @@ NULL, #define GST_GL_EXT_END() -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static GstGLFuncs gst_gl = { #include "glprototypes/opengl.h" {NULL,}, @@ -44,7 +44,7 @@ gst_gl_get_opengl_vtable (void) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static GstGLES2Funcs gst_gles2 = { #include "glprototypes/gles1gles2.h" {NULL,}, diff --git a/gst-libs/gst/gl/gstglapi.h b/gst-libs/gst/gl/gstglapi.h index 30efa44683..cdf1c4602a 100644 --- a/gst-libs/gst/gl/gstglapi.h +++ b/gst-libs/gst/gl/gstglapi.h @@ -21,17 +21,19 @@ #ifndef __GST_GL_API_H__ #define __GST_GL_API_H__ +#include "gstglconfig.h" + /* OpenGL 2.0 for Embedded Systems */ -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 # include # include -# if !HAVE_OPENGL +# if !GST_GL_HAVE_OPENGL # include "gstgles2.h" # endif #endif /* OpenGL for desktop systems */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL # if __APPLE__ # include # include @@ -73,7 +75,7 @@ typedef enum ret (*name) args; #define GST_GL_EXT_END() -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL typedef struct _GstGLFuncs { #include "glprototypes/opengl.h" @@ -89,7 +91,7 @@ typedef struct _GstGLFuncs const GstGLFuncs *gst_gl_get_opengl_vtable (void); #endif -#if GST_GL_GLES2 +#if GST_GL_HAVE_GLES2 typedef struct _GstGLES2Funcs { #include "glprototypes/gles1gles2.h" diff --git a/gst-libs/gst/gl/gstgldisplay.c b/gst-libs/gst/gl/gstgldisplay.c index 0e2f91d2f1..a6b89553f4 100644 --- a/gst-libs/gst/gl/gstgldisplay.c +++ b/gst-libs/gst/gl/gstgldisplay.c @@ -67,7 +67,7 @@ static void gst_gl_display_finalize (GObject * object); gpointer gst_gl_display_thread_create_context (GstGLDisplay * display); void gst_gl_display_thread_destroy_context (GstGLDisplay * display); void gst_gl_display_thread_run_generic (GstGLDisplay * display); -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 void gst_gl_display_thread_init_redisplay (GstGLDisplay * display); #endif void gst_gl_display_thread_gen_fbo (GstGLDisplay * display); @@ -88,7 +88,7 @@ void gst_gl_display_del_texture_thread (GstGLDisplay * display, void gst_gl_display_gen_texture_window_cb (GstGLDisplay * display); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void _gen_fbo_opengl (GstGLDisplay * display); void _use_fbo_opengl (GstGLDisplay * display); void _use_fbo_v2_opengl (GstGLDisplay * display); @@ -96,7 +96,7 @@ void _del_fbo_opengl (GstGLDisplay * display); void _gen_shader_opengl (GstGLDisplay * display); void _del_shader_opengl (GstGLDisplay * display); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 void _gen_fbo_gles2 (GstGLDisplay * display); void _use_fbo_gles2 (GstGLDisplay * display); void _use_fbo_v2_gles2 (GstGLDisplay * display); @@ -154,7 +154,7 @@ gst_gl_display_init (GstGLDisplay * display) display->redisplay_texture_width = 0; display->redisplay_texture_height = 0; display->keep_aspect_ratio = FALSE; -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 display->redisplay_shader = NULL; display->redisplay_attr_position_loc = 0; display->redisplay_attr_texture_loc = 0; @@ -213,7 +213,7 @@ gst_gl_display_init (GstGLDisplay * display) display->uploads = NULL; display->downloads = NULL; -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 /* *INDENT-OFF* */ display->redisplay_vertex_shader_str_gles2 = "attribute vec4 a_position; \n" @@ -336,7 +336,7 @@ gst_gl_display_set_error (GstGLDisplay * display, const char *format, ...) display->isAlive = FALSE; } -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static gboolean _create_context_gles2 (GstGLDisplay * display, gint * gl_major, gint * gl_minor) { @@ -375,7 +375,7 @@ _create_context_gles2 (GstGLDisplay * display, gint * gl_major, gint * gl_minor) } #endif -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL gboolean _create_context_opengl (GstGLDisplay * display, gint * gl_major, gint * gl_minor) { @@ -439,10 +439,10 @@ _compiled_api (void) { GstGLAPI ret = GST_GL_API_NONE; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL ret |= GST_GL_API_OPENGL; #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 ret |= GST_GL_API_GLES2; #endif @@ -493,11 +493,11 @@ gst_gl_display_thread_create_context (GstGLDisplay * display) g_free (compiled_api_s); /* gl api specific code */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (!ret && USING_OPENGL(display)) ret = _create_context_opengl (display, &gl_major, NULL); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (!ret && USING_GLES2(display)) ret = _create_context_gles2 (display, &gl_major, NULL); #endif @@ -555,7 +555,7 @@ failure: void gst_gl_display_thread_destroy_context (GstGLDisplay * display) { -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (display->redisplay_shader) { g_object_unref (G_OBJECT (display->redisplay_shader)); display->redisplay_shader = NULL; @@ -575,7 +575,7 @@ gst_gl_display_thread_run_generic (GstGLDisplay * display) display->generic_callback (display, display->data); } -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 /* Called in the gl thread */ void gst_gl_display_thread_init_redisplay (GstGLDisplay * display) @@ -605,7 +605,7 @@ gst_gl_display_thread_init_redisplay (GstGLDisplay * display) } #endif -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void _gen_fbo_opengl (GstGLDisplay * display) { @@ -671,7 +671,7 @@ _gen_fbo_opengl (GstGLDisplay * display) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 void _gen_fbo_gles2 (GstGLDisplay * display) { @@ -732,7 +732,7 @@ _gen_fbo_gles2 (GstGLDisplay * display) #endif /* Called in the gl thread */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void _use_fbo_opengl (GstGLDisplay * display) { @@ -801,7 +801,7 @@ _use_fbo_opengl (GstGLDisplay * display) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 void _use_fbo_gles2 (GstGLDisplay * display) { @@ -842,7 +842,7 @@ _use_fbo_gles2 (GstGLDisplay * display) /* Called in a gl thread * Need full shader support */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void _use_fbo_v2_opengl (GstGLDisplay * display) { @@ -882,7 +882,7 @@ _use_fbo_v2_opengl (GstGLDisplay * display) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 void _use_fbo_v2_gles2 (GstGLDisplay * display) { @@ -919,7 +919,7 @@ _use_fbo_v2_gles2 (GstGLDisplay * display) #endif /* Called in the gl thread */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void _del_fbo_opengl (GstGLDisplay * display) { @@ -936,7 +936,7 @@ _del_fbo_opengl (GstGLDisplay * display) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 void _del_fbo_gles2 (GstGLDisplay * display) { @@ -991,7 +991,7 @@ _gen_shader_opengl (GstGLDisplay * display) } } -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 void _gen_shader_gles2 (GstGLDisplay * display) { @@ -1031,7 +1031,7 @@ _gen_shader_gles2 (GstGLDisplay * display) #endif /* Called in the gl thread */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void _del_shader_opengl (GstGLDisplay * display) { @@ -1044,7 +1044,7 @@ _del_shader_opengl (GstGLDisplay * display) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 void _del_shader_gles2 (GstGLDisplay * display) { @@ -1096,7 +1096,7 @@ gst_gl_display_on_resize (GstGLDisplay * display, gint width, gint height) } else { glViewport (0, 0, width, height); } -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL(display)) { glMatrixMode (GL_PROJECTION); glLoadIdentity (); @@ -1122,7 +1122,7 @@ gst_gl_display_on_draw (GstGLDisplay * display) if (display->colorspace_conversion == GST_GL_DISPLAY_CONVERSION_GLSL) glUseProgramObjectARB (0); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL(display)) glDisable (GL_TEXTURE_RECTANGLE_ARB); #endif @@ -1142,7 +1142,7 @@ gst_gl_display_on_draw (GstGLDisplay * display) } /* default opengl scene */ else { -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL(display)) { glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); @@ -1177,7 +1177,7 @@ gst_gl_display_on_draw (GstGLDisplay * display) glDisable (GL_TEXTURE_RECTANGLE_ARB); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2(display)) { const GLfloat vVertices[] = { 1.0f, 1.0f, 0.0f, 1.0f, 0.0f, @@ -1355,7 +1355,7 @@ gst_gl_display_check_framebuffer_status (void) case GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT: GST_ERROR ("GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS"); break; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL case GL_FRAMEBUFFER_UNDEFINED: GST_ERROR ("GL_FRAMEBUFFER_UNDEFINED"); break; @@ -1413,7 +1413,7 @@ gst_gl_display_redisplay (GstGLDisplay * display, GLuint texture, gst_gl_display_lock (display); if (display->isAlive) { -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2(display)) { if (!display->redisplay_shader) { gst_gl_window_send_message (display->gl_window, diff --git a/gst-libs/gst/gl/gstgldisplay.h b/gst-libs/gst/gl/gstgldisplay.h index 313880f85d..e0d51c2d08 100644 --- a/gst-libs/gst/gl/gstgldisplay.h +++ b/gst-libs/gst/gl/gstgldisplay.h @@ -23,6 +23,8 @@ #ifndef __GST_GL_H__ #define __GST_GL_H__ +#include "gstglconfig.h" + #include typedef struct _GstGLUpload GstGLUpload; @@ -159,7 +161,7 @@ struct _GstGLDisplay GLuint redisplay_texture_width; GLuint redisplay_texture_height; gboolean keep_aspect_ratio; -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 GstGLShader *redisplay_shader; gchar *redisplay_vertex_shader_str_gles2; gchar *redisplay_fragment_shader_str_gles2; diff --git a/gst-libs/gst/gl/gstgldownload.c b/gst-libs/gst/gl/gstgldownload.c index 87dbb39275..3d7946c844 100644 --- a/gst-libs/gst/gl/gstgldownload.c +++ b/gst-libs/gst/gl/gstgldownload.c @@ -58,13 +58,13 @@ static gboolean gst_gl_download_perform_with_data_unlocked (GstGLDownload * static gboolean gst_gl_download_perform_with_data_unlocked_thread (GstGLDownload * download, GLuint texture_id, gpointer data[GST_VIDEO_MAX_PLANES]); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static void _do_download_draw_rgb_opengl (GstGLDisplay * display, GstGLDownload * download); static void _do_download_draw_yuv_opengl (GstGLDisplay * display, GstGLDownload * download); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static void _do_download_draw_rgb_gles2 (GstGLDisplay * display, GstGLDownload * download); static void _do_download_draw_yuv_gles2 (GstGLDisplay * display, @@ -75,7 +75,7 @@ static void _do_download_draw_yuv_gles2 (GstGLDisplay * display, /* YUY2:y2,u,y1,v UYVY:v,y1,u,y2 */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static gchar *text_shader_YUY2_UYVY_opengl = "#extension GL_ARB_texture_rectangle : enable\n" "uniform sampler2DRect tex;\n" @@ -144,9 +144,9 @@ static gchar *text_shader_AYUV_opengl = "}\n"; #define text_vertex_shader_opengl NULL -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static gchar *text_shader_YUY2_UYVY_gles2 = "precision mediump float;\n" "varying vec2 v_texCoord;\n" @@ -214,7 +214,7 @@ static gchar *text_shader_RGB_gles2 = "{ \n" " gl_FragColor = texture2D( s_texture, v_texCoord );\n" "} \n"; -#endif /* HAVE_GLES2 */ +#endif /* GST_GL_HAVE_GLES2 */ /* *INDENT-ON* */ @@ -288,7 +288,7 @@ gst_gl_download_new (GstGLDisplay * display) download->display = g_object_ref (display); priv = download->priv; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (display)) { priv->YUY2_UYVY = text_shader_YUY2_UYVY_opengl; priv->I420_YV12 = text_shader_I420_YV12_opengl; @@ -298,7 +298,7 @@ gst_gl_download_new (GstGLDisplay * display) priv->do_yuv = _do_download_draw_yuv_opengl; } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (display)) { priv->YUY2_UYVY = text_shader_YUY2_UYVY_gles2; priv->I420_YV12 = text_shader_I420_YV12_gles2; @@ -781,7 +781,7 @@ _init_download (GstGLDisplay * display, GstGLDownload * download) /* setup the render buffer for depth */ glGenRenderbuffersEXT (1, &download->depth_buffer); glBindRenderbufferEXT (GL_RENDERBUFFER_EXT, download->depth_buffer); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (display)) { glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT, out_width, out_height); @@ -789,7 +789,7 @@ _init_download (GstGLDisplay * display, GstGLDownload * download) out_width, out_height); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (display)) { glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16, out_width, out_height); @@ -859,7 +859,7 @@ _init_download (GstGLDisplay * display, GstGLDownload * download) glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, download->depth_buffer); -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (display)) { glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_STENCIL_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, @@ -936,7 +936,7 @@ _init_download_shader (GstGLDisplay * display, GstGLDownload * download) case GST_VIDEO_FORMAT_RGB: case GST_VIDEO_FORMAT_BGR: /* color space conversion is not needed */ -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 { if (USING_GLES2 (display)) { /* glGetTexImage2D not available in OpenGL ES 2.0 */ @@ -1093,7 +1093,7 @@ _do_download (GstGLDisplay * display, GstGLDownload * download) } } -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static void _do_download_draw_rgb_opengl (GstGLDisplay * display, GstGLDownload * download) { @@ -1159,7 +1159,7 @@ _do_download_draw_rgb_opengl (GstGLDisplay * display, GstGLDownload * download) #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static void _do_download_draw_rgb_gles2 (GstGLDisplay * display, GstGLDownload * download) { @@ -1243,7 +1243,7 @@ _do_download_draw_rgb_gles2 (GstGLDisplay * display, GstGLDownload * download) } #endif -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static void _do_download_draw_yuv_opengl (GstGLDisplay * display, GstGLDownload * download) { @@ -1428,7 +1428,7 @@ _do_download_draw_yuv_opengl (GstGLDisplay * display, GstGLDownload * download) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static void _do_download_draw_yuv_gles2 (GstGLDisplay * display, GstGLDownload * download) { diff --git a/gst-libs/gst/gl/gstgldownload.h b/gst-libs/gst/gl/gstgldownload.h index a06677361e..f933b09a3a 100644 --- a/gst-libs/gst/gl/gstgldownload.h +++ b/gst-libs/gst/gl/gstgldownload.h @@ -98,12 +98,12 @@ struct _GstGLDownloadClass * * The currently supported formats that can be downloaded */ -#if !HAVE_GLES2 +#if !GST_GL_HAVE_GLES2 # define GST_GL_DOWNLOAD_FORMATS "{ RGB, RGBx, RGBA, BGR, BGRx, BGRA, xRGB, " \ "xBGR, ARGB, ABGR, I420, YV12, YUY2, UYVY, AYUV }" -#else /* HAVE_GLES2 */ +#else /* GST_GL_HAVE_GLES2 */ # define GST_GL_DOWNLOAD_FORMATS "{ RGB, RGBx, RGBA, I420, YV12, YUY2, UYVY, AYUV }" -#endif /* !HAVE_GLES2 */ +#endif /* !GST_GL_HAVE_GLES2 */ /** * GST_GL_DOWNLOAD_VIDEO_CAPS: diff --git a/gst-libs/gst/gl/gstglfeature.c b/gst-libs/gst/gl/gstglfeature.c index 2c924e2233..0dc2ca2138 100644 --- a/gst-libs/gst/gl/gstglfeature.c +++ b/gst-libs/gst/gl/gstglfeature.c @@ -54,7 +54,7 @@ gst_gl_check_extension (const char *name, const gchar * ext) /* Define a set of arrays containing the functions required from GL for each feature */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL #define GST_GL_EXT_BEGIN(name, \ min_gl_major, min_gl_minor, \ gles_availability, \ @@ -83,13 +83,13 @@ gst_gl_check_extension (const char *name, const gchar * ext) static const GstGLFeatureData gst_gl_feature_ext_functions_data_opengl[] = { #include "glprototypes/opengl_functions.h" }; -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ #undef GST_GL_EXT_BEGIN #undef GST_GL_EXT_FUNCTION #undef GST_GL_EXT_END -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 #define GST_GL_EXT_BEGIN(name, \ min_gl_major, min_gl_minor, \ gles_availability, \ @@ -118,7 +118,7 @@ static const GstGLFeatureData gst_gl_feature_ext_functions_data_opengl[] = { static const GstGLFeatureData gst_gl_feature_ext_functions_data_gles2[] = { #include "glprototypes/gles2_functions.h" }; -#endif /* HAVE_GLES2 */ +#endif /* GST_GL_HAVE_GLES2 */ #undef GST_GL_EXT_BEGIN #undef GST_GL_EXT_FUNCTION @@ -132,18 +132,18 @@ _gst_gl_feature_check (GstGLDisplay * display, { const char *suffix = NULL; int func_num; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static const GstGLFuncs *gst_gl = NULL; #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static const GstGLES2Funcs *gst_gles2 = NULL; #endif -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (!gst_gl) gst_gl = gst_gl_get_opengl_vtable (); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (!gst_gles2) gst_gles2 = gst_gl_get_gles2_vtable (); #endif @@ -219,13 +219,13 @@ _gst_gl_feature_check (GstGLDisplay * display, goto error; /* Set the function pointer in the context */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (display->gl_api & GST_GL_API_OPENGL) { *(void **) ((guint8 *) gst_gl + data->functions[func_num].pointer_offset) = func; } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (display->gl_api & GST_GL_API_GLES2) { *(void **) ((guint8 *) gst_gles2 + data->functions[func_num].pointer_offset) = func; @@ -240,13 +240,13 @@ _gst_gl_feature_check (GstGLDisplay * display, * do feature testing by just looking at the function pointers */ error: for (func_num = 0; data->functions[func_num].name; func_num++) { -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (display->gl_api & GST_GL_API_OPENGL) { *(void **) ((guint8 *) gst_gl + data->functions[func_num].pointer_offset) = NULL; } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (display->gl_api & GST_GL_API_GLES2) { *(void **) ((guint8 *) gst_gles2 + data->functions[func_num].pointer_offset) = NULL; @@ -263,7 +263,7 @@ _gst_gl_feature_check_ext_functions (GstGLDisplay * display, { int i; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (display->gl_api & GST_GL_API_OPENGL) { for (i = 0; i < G_N_ELEMENTS (gst_gl_feature_ext_functions_data_opengl); i++) @@ -272,7 +272,7 @@ _gst_gl_feature_check_ext_functions (GstGLDisplay * display, gl_extensions); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (display->gl_api & GST_GL_API_GLES2) { for (i = 0; i < G_N_ELEMENTS (gst_gl_feature_ext_functions_data_gles2); i++) _gst_gl_feature_check (display, "GL", diff --git a/gst-libs/gst/gl/gstglfilter.c b/gst-libs/gst/gl/gstglfilter.c index 9a91a99679..3fd3466ae1 100644 --- a/gst-libs/gst/gl/gstglfilter.c +++ b/gst-libs/gst/gl/gstglfilter.c @@ -1075,7 +1075,7 @@ gst_gl_filter_render_to_target (GstGLFilter * filter, gboolean resize, in_width, 0, in_height, GST_GL_DISPLAY_PROJECTION_ORTHO2D, data); } -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static void _draw_with_shader_cb (gint width, gint height, guint texture, gpointer stuff) { @@ -1156,4 +1156,4 @@ gst_gl_filter_draw_texture (GstGLFilter * filter, GLuint texture, glEnd (); } -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ diff --git a/gst-libs/gst/gl/gstglfilter.h b/gst-libs/gst/gl/gstglfilter.h index 405960393d..dda8dddce3 100644 --- a/gst-libs/gst/gl/gstglfilter.h +++ b/gst-libs/gst/gl/gstglfilter.h @@ -124,12 +124,12 @@ gboolean gst_gl_filter_filter_texture (GstGLFilter * filter, GstBuffer * inbuf, void gst_gl_filter_render_to_target (GstGLFilter *filter, gboolean resize, GLuint input, GLuint target, GLCB func, gpointer data); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void gst_gl_filter_render_to_target_with_shader (GstGLFilter * filter, gboolean resize, GLuint input, GLuint target, GstGLShader *shader); void gst_gl_filter_draw_texture (GstGLFilter *filter, GLuint texture, guint width, guint height); -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ G_END_DECLS diff --git a/gst-libs/gst/gl/gstglmemory.c b/gst-libs/gst/gl/gstglmemory.c index 25db723bec..1c4d89dffd 100644 --- a/gst-libs/gst/gl/gstglmemory.c +++ b/gst-libs/gst/gl/gstglmemory.c @@ -226,7 +226,7 @@ _gl_mem_copy_thread (GstGLDisplay * display, gpointer data) glGenRenderbuffersEXT (1, &rboId); glBindRenderbufferEXT (GL_RENDERBUFFER_EXT, rboId); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (display)) { glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT, width, height); @@ -234,7 +234,7 @@ _gl_mem_copy_thread (GstGLDisplay * display, gpointer data) width, height); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (display)) { glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16, width, height); @@ -244,7 +244,7 @@ _gl_mem_copy_thread (GstGLDisplay * display, gpointer data) glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, rboId); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (display)) { glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_STENCIL_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, rboId); @@ -277,7 +277,7 @@ _gl_mem_copy_thread (GstGLDisplay * display, gpointer data) GST_CAT_ERROR (GST_CAT_GL_MEMORY, "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS"); break; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL case GL_FRAMEBUFFER_UNDEFINED: GST_CAT_ERROR (GST_CAT_GL_MEMORY, "GL_FRAMEBUFFER_UNDEFINED"); break; diff --git a/gst-libs/gst/gl/gstglshader.c b/gst-libs/gst/gl/gstglshader.c index de45884531..1aaa38b302 100644 --- a/gst-libs/gst/gl/gstglshader.c +++ b/gst-libs/gst/gl/gstglshader.c @@ -303,12 +303,12 @@ gst_gl_shader_compile (GstGLShader * shader, GError ** error) glGetObjectParameterivARB (priv->vertex_handle, GL_OBJECT_COMPILE_STATUS_ARB, &status); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (shader->display)) glGetInfoLogARB (priv->vertex_handle, sizeof (info_buffer) - 1, &len, info_buffer); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (shader->display)) glGetShaderInfoLog (priv->vertex_handle, sizeof (info_buffer) - 1, &len, info_buffer); @@ -342,12 +342,12 @@ gst_gl_shader_compile (GstGLShader * shader, GError ** error) glGetObjectParameterivARB (priv->fragment_handle, GL_OBJECT_COMPILE_STATUS_ARB, &status); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (shader->display)) glGetInfoLogARB (priv->fragment_handle, sizeof (info_buffer) - 1, &len, info_buffer); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (shader->display)) glGetShaderInfoLog (priv->fragment_handle, sizeof (info_buffer) - 1, &len, info_buffer); @@ -372,11 +372,11 @@ gst_gl_shader_compile (GstGLShader * shader, GError ** error) /* if nothing failed link shaders */ glLinkProgramARB (priv->program_handle); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (shader->display)) glGetObjectParameterivARB (priv->program_handle, GL_LINK_STATUS, &status); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (shader->display)) glGetProgramiv (priv->program_handle, GL_LINK_STATUS, &status); #endif @@ -419,11 +419,11 @@ gst_gl_shader_release (GstGLShader * shader) if (priv->vertex_handle) { /* not needed but nvidia doesn't care to respect the spec */ GST_TRACE ("finalizing vertex shader %u", priv->vertex_handle); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (shader->display)) glDeleteObjectARB (priv->vertex_handle); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (shader->display)) glDeleteShader (priv->vertex_handle); #endif @@ -438,11 +438,11 @@ gst_gl_shader_release (GstGLShader * shader) GST_TRACE ("finalizing fragment shader %u", priv->fragment_handle); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (shader->display)) glDeleteObjectARB (priv->fragment_handle); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (shader->display)) glDeleteShader (priv->fragment_handle); #endif @@ -820,7 +820,7 @@ gst_gl_shader_set_uniform_matrix_4fv (GstGLShader * shader, const gchar * name, glUniformMatrix4fvARB (location, count, transpose, value); } -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void gst_gl_shader_set_uniform_matrix_2x3fv (GstGLShader * shader, const gchar * name, gint count, gboolean transpose, const gfloat * value) @@ -916,7 +916,7 @@ gst_gl_shader_set_uniform_matrix_4x3fv (GstGLShader * shader, glUniformMatrix4x3fv (location, count, transpose, value); } -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ GLint gst_gl_shader_get_attribute_location (GstGLShader * shader, const gchar * name) diff --git a/gst-libs/gst/gl/gstglshader.h b/gst-libs/gst/gl/gstglshader.h index d92135b046..589594f4d8 100644 --- a/gst-libs/gst/gl/gstglshader.h +++ b/gst-libs/gst/gl/gstglshader.h @@ -105,7 +105,7 @@ void gst_gl_shader_set_uniform_4fv (GstGLShader *shader, const gchar *n void gst_gl_shader_set_uniform_matrix_2fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); void gst_gl_shader_set_uniform_matrix_3fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); void gst_gl_shader_set_uniform_matrix_4fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL void gst_gl_shader_set_uniform_matrix_2x3fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); void gst_gl_shader_set_uniform_matrix_2x4fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); void gst_gl_shader_set_uniform_matrix_3x2fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); diff --git a/gst-libs/gst/gl/gstglshadervariables.c b/gst-libs/gst/gl/gstglshadervariables.c index 1125105124..a9e5c6a4a7 100644 --- a/gst-libs/gst/gl/gstglshadervariables.c +++ b/gst-libs/gst/gl/gstglshadervariables.c @@ -566,7 +566,7 @@ gst_gl_shadervariable_set (GstGLShader * shader, (float *) ret->value); break; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL case _mat2x3: gst_gl_shader_set_uniform_matrix_2x3fv (shader, ret->name, ret->count, 0, (float *) ret->value); diff --git a/gst-libs/gst/gl/gstglupload.c b/gst-libs/gst/gl/gstglupload.c index d1ed9398e3..76a0bf1f16 100644 --- a/gst-libs/gst/gl/gstglupload.c +++ b/gst-libs/gst/gl/gstglupload.c @@ -59,18 +59,18 @@ static gboolean gst_gl_upload_perform_with_data_unlocked (GstGLUpload * upload, static gboolean gst_gl_upload_perform_with_data_unlocked_thread (GstGLUpload * upload, GLuint texture_id, gpointer data[GST_VIDEO_MAX_PLANES]); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static void _do_upload_draw_opengl (GstGLDisplay * display, GstGLUpload * upload); #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static void _do_upload_draw_gles2 (GstGLDisplay * display, GstGLUpload * upload); #endif /* *INDENT-OFF* */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL /* YUY2:r,g,a UYVY:a,b,r */ static gchar *text_shader_YUY2_UYVY_opengl = @@ -133,7 +133,7 @@ static gchar *text_shader_AYUV_opengl = #define text_vertex_shader_opengl NULL #endif -#ifdef HAVE_GLES2 +#if GST_GL_HAVE_GLES2 /* YUY2:r,g,a UYVY:a,b,r */ static gchar *text_shader_YUY2_UYVY_gles2 = @@ -276,7 +276,7 @@ gst_gl_upload_new (GstGLDisplay * display) g_mutex_init (&upload->lock); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (display)) { priv->YUY2_UYVY = text_shader_YUY2_UYVY_opengl; priv->I420_YV12 = text_shader_I420_YV12_opengl; @@ -285,7 +285,7 @@ gst_gl_upload_new (GstGLDisplay * display) priv->draw = _do_upload_draw_opengl; } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (display)) { priv->YUY2_UYVY = text_shader_YUY2_UYVY_gles2; priv->I420_YV12 = text_shader_I420_YV12_gles2; @@ -795,13 +795,13 @@ _init_upload (GstGLDisplay * display, GstGLUpload * upload) case GST_VIDEO_FORMAT_UYVY: { gchar text_shader_UYVY[2048]; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_GLES2 (display)) { sprintf (text_shader_UYVY, upload->priv->YUY2_UYVY, 'a', 'b', 'r'); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (display)) { sprintf (text_shader_UYVY, upload->priv->YUY2_UYVY, 'a', 'r', 'b'); @@ -825,7 +825,7 @@ _init_upload (GstGLDisplay * display, GstGLUpload * upload) case GST_VIDEO_FORMAT_YV12: { gchar text_shader_I420_YV12[2048]; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (display)) { if ((g_ascii_strncasecmp ("ATI", (gchar *) glGetString (GL_VENDOR), 3) == 0) @@ -840,7 +840,7 @@ _init_upload (GstGLDisplay * display, GstGLUpload * upload) "*0.5"); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (display)) g_strlcpy (text_shader_I420_YV12, upload->priv->I420_YV12, 2048); #endif @@ -959,7 +959,7 @@ _init_upload_fbo (GstGLDisplay * display, GstGLUpload * upload) /* setup the render buffer for depth */ glGenRenderbuffersEXT (1, &upload->depth_buffer); glBindRenderbufferEXT (GL_RENDERBUFFER_EXT, upload->depth_buffer); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (display)) { glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT, out_width, out_height); @@ -967,7 +967,7 @@ _init_upload_fbo (GstGLDisplay * display, GstGLUpload * upload) out_width, out_height); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (display)) { glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16, out_width, out_height); @@ -994,7 +994,7 @@ _init_upload_fbo (GstGLDisplay * display, GstGLUpload * upload) glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, upload->depth_buffer); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (display)) { glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_STENCIL_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, upload->depth_buffer); @@ -1379,7 +1379,7 @@ _do_upload_fill (GstGLDisplay * display, GstGLUpload * upload) glBindTexture (GL_TEXTURE_RECTANGLE_ARB, 0); } -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL /* called by _do_upload (in the gl thread) */ static void _do_upload_draw_opengl (GstGLDisplay * display, GstGLUpload * upload) @@ -1625,7 +1625,7 @@ _do_upload_draw_opengl (GstGLDisplay * display, GstGLUpload * upload) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static void _do_upload_draw_gles2 (GstGLDisplay * display, GstGLUpload * upload) { diff --git a/gst-libs/gst/gl/gstglupload.h b/gst-libs/gst/gl/gstglupload.h index cc3d10c8c5..3cd622c7c1 100644 --- a/gst-libs/gst/gl/gstglupload.h +++ b/gst-libs/gst/gl/gstglupload.h @@ -101,12 +101,12 @@ struct _GstGLUploadClass * * The currently supported formats that can be uploaded */ -#if !HAVE_GLES2 +#if !GST_GL_HAVE_GLES2 #define GST_GL_UPLOAD_FORMATS "{ RGB, RGBx, RGBA, BGR, BGRx, BGRA, xRGB, " \ "xBGR, ARGB, ABGR, I420, YV12, YUY2, UYVY, AYUV }" -#else /* HAVE_GLES2 */ +#else /* GST_GL_HAVE_GLES2 */ # define GST_GL_UPLOAD_FORMATS "{ RGB, RGBx, RGBA, I420, YV12, YUY2, UYVY, AYUV }" -#endif /* !HAVE_GLES2 */ +#endif /* !GST_GL_HAVE_GLES2 */ /** * GST_GL_UPLOAD_VIDEO_CAPS: diff --git a/gst-libs/gst/gl/gstglwindow.c b/gst-libs/gst/gl/gstglwindow.c index c51e333aba..3ace45cb65 100644 --- a/gst-libs/gst/gl/gstglwindow.c +++ b/gst-libs/gst/gl/gstglwindow.c @@ -26,16 +26,16 @@ #include "gstglwindow.h" -#ifdef HAVE_WINDOW_X11 +#if GST_GL_HAVE_WINDOW_X11 #include "x11/gstglwindow_x11.h" #endif -#ifdef HAVE_WINDOW_WIN32 +#if GST_GL_HAVE_WINDOW_WIN32 #include "win32/gstglwindow_win32.h" #endif -#ifdef HAVE_WINDOW_COCOA +#if GST_GL_HAVE_WINDOW_COCOA #include "cocoa/gstglwindow_cocoa.h" #endif -#ifdef HAVE_WINDOW_WAYLAND +#if GST_GL_HAVE_WINDOW_WAYLAND #include "wayland/gstglwindow_wayland_egl.h" #endif @@ -83,24 +83,24 @@ gst_gl_window_new (GstGLAPI api, guintptr external_gl_context, GError ** error) user_choice = g_getenv ("GST_GL_WINDOW"); GST_INFO ("creating a window, user choice:%s", user_choice); -#ifdef HAVE_WINDOW_X11 +#if GST_GL_HAVE_WINDOW_X11 if (!window && (!user_choice || g_strstr_len (user_choice, 3, "x11"))) window = GST_GL_WINDOW (gst_gl_window_x11_new (api, external_gl_context, error)); #endif -#ifdef HAVE_WINDOW_WIN32 +#if GST_GL_HAVE_WINDOW_WIN32 if (!window && (!user_choice || g_strstr_len (user_choice, 5, "win32"))) window = GST_GL_WINDOW (gst_gl_window_win32_new (api, external_gl_context, error)); #endif -#ifdef HAVE_WINDOW_COCOA +#if GST_GL_HAVE_WINDOW_COCOA if (!window && (!user_choice || g_strstr_len (user_choice, 5, "cocoa"))) window = GST_GL_WINDOW (gst_gl_window_cocoa_new (api, external_gl_context, error)); #endif -#ifdef HAVE_WINDOW_WAYLAND +#if GST_GL_HAVE_WINDOW_WAYLAND if (!window && (!user_choice || g_strstr_len (user_choice, 7, "wayland"))) window = GST_GL_WINDOW (gst_gl_window_wayland_egl_new (api, diff --git a/gst-libs/gst/gl/win32/gstglwindow_win32.c b/gst-libs/gst/gl/win32/gstglwindow_win32.c index d4ed0dd90a..0ecb1d79ee 100644 --- a/gst-libs/gst/gl/win32/gstglwindow_win32.c +++ b/gst-libs/gst/gl/win32/gstglwindow_win32.c @@ -25,10 +25,10 @@ #include "gstglwindow_win32.h" -#if HAVE_WGL +#if GST_GL_HAVE_PLATFORM_WGL #include "gstglwindow_win32_wgl.h" #endif -#if HAVE_EGL +#if GST_GL_HAVE_PLATFORM_EGL #include "gstglwindow_win32_egl.h" #endif diff --git a/gst-libs/gst/gl/x11/gstglwindow_x11.c b/gst-libs/gst/gl/x11/gstglwindow_x11.c index 022fd9bd01..5c968d82ee 100644 --- a/gst-libs/gst/gl/x11/gstglwindow_x11.c +++ b/gst-libs/gst/gl/x11/gstglwindow_x11.c @@ -30,10 +30,10 @@ #include "gstglwindow_x11.h" -#ifdef HAVE_GLX +#if GST_GL_HAVE_PLATFORM_GLX # include "gstglwindow_x11_glx.h" #endif -#ifdef HAVE_EGL +#if GST_GL_HAVE_PLATFORM_EGL # include "gstglwindow_x11_egl.h" #endif @@ -217,8 +217,8 @@ gst_gl_window_x11_new (GstGLAPI gl_api, guintptr external_gl_context, user_choice = g_getenv ("GST_GL_PLATFORM"); -#ifdef HAVE_GLX -#ifdef HAVE_EGL +#if GST_GL_HAVE_PLATFORM_GLX +#if GST_GL_HAVE_PLATFORM_EGL /* try GLX first for Desktop OpenGL */ if (gl_api & GST_GL_API_OPENGL || gl_api & GST_GL_API_OPENGL3) { if (!window && (!user_choice @@ -243,18 +243,18 @@ gst_gl_window_x11_new (GstGLAPI gl_api, guintptr external_gl_context, GST_GL_WINDOW_X11 (gst_gl_window_x11_glx_new (gl_api, external_gl_context, error)); } -#endif /* HAVE_EGL */ +#endif /* GST_GL_HAVE_PLATFORM_EGL */ if (!window && (!user_choice || g_strstr_len (user_choice, 3, "glx") != NULL)) window = GST_GL_WINDOW_X11 (gst_gl_window_x11_glx_new (gl_api, external_gl_context, error)); -#endif /* HAVE_GLX */ -#ifdef HAVE_EGL +#endif /* GST_GL_HAVE_PLATFORM_GLX */ +#ifdef GST_GL_HAVE_PLATFORM_EGL if (!window && (!user_choice || g_strstr_len (user_choice, 3, "egl") != NULL)) window = GST_GL_WINDOW_X11 (gst_gl_window_x11_egl_new (gl_api, external_gl_context, error)); -#endif /* HAVE_EGL */ +#endif /* GST_GL_HAVE_PLATFORM_EGL */ if (!window) { GST_WARNING ("Failed to create x11 window, user_choice:%s", user_choice ? user_choice : "NULL"); diff --git a/gst/gl/effects/gstgleffectidentity.c b/gst/gl/effects/gstgleffectidentity.c index 1ed38c0d22..77be282ae9 100644 --- a/gst/gl/effects/gstgleffectidentity.c +++ b/gst/gl/effects/gstgleffectidentity.c @@ -33,13 +33,13 @@ gst_gl_effects_identity_callback (gint width, gint height, guint texture, GstGLEffects *effects = GST_GL_EFFECTS (data); GstGLFilter *filter = GST_GL_FILTER (effects); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (filter->display)) { glMatrixMode (GL_PROJECTION); glLoadIdentity (); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (filter->display)) { GstGLShader *shader = g_hash_table_lookup (effects->shaderstable, "identity0"); diff --git a/gst/gl/effects/gstgleffectmirror.c b/gst/gl/effects/gstgleffectmirror.c index 0f02ee5a8e..ec4657152e 100644 --- a/gst/gl/effects/gstgleffectmirror.c +++ b/gst/gl/effects/gstgleffectmirror.c @@ -40,7 +40,7 @@ gst_gl_effects_mirror_callback (gint width, gint height, guint texture, shader = gst_gl_shader_new (filter->display); g_hash_table_insert (effects->shaderstable, "mirror0", shader); -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (filter->display)) { if (shader) { GError *error = NULL; @@ -67,7 +67,7 @@ gst_gl_effects_mirror_callback (gint width, gint height, guint texture, } } #endif -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (filter->display)) { if (!gst_gl_shader_compile_and_check (shader, mirror_fragment_source_opengl, GST_GL_SHADER_FRAGMENT_SOURCE)) { @@ -92,7 +92,7 @@ gst_gl_effects_mirror_callback (gint width, gint height, guint texture, gst_gl_shader_set_uniform_1i (shader, "tex", 0); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (filter->display)) { gst_gl_shader_set_uniform_1f (shader, "width", (gfloat) width / 2.0f); gst_gl_shader_set_uniform_1f (shader, "height", (gfloat) height / 2.0f); diff --git a/gst/gl/effects/gstgleffectsqueeze.c b/gst/gl/effects/gstgleffectsqueeze.c index 640e2f0584..fa9a7724f3 100644 --- a/gst/gl/effects/gstgleffectsqueeze.c +++ b/gst/gl/effects/gstgleffectsqueeze.c @@ -40,7 +40,7 @@ gst_gl_effects_squeeze_callback (gint width, gint height, guint texture, shader = gst_gl_shader_new (filter->display); g_hash_table_insert (effects->shaderstable, "squeeze0", shader); -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (filter->display)) { if (shader) { GError *error = NULL; @@ -68,7 +68,7 @@ gst_gl_effects_squeeze_callback (gint width, gint height, guint texture, } } #endif -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (USING_OPENGL (filter->display)) { if (!gst_gl_shader_compile_and_check (shader, squeeze_fragment_source_opengl, GST_GL_SHADER_FRAGMENT_SOURCE)) { @@ -92,7 +92,7 @@ gst_gl_effects_squeeze_callback (gint width, gint height, guint texture, gst_gl_shader_set_uniform_1i (shader, "tex", 0); -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (USING_GLES2 (filter->display)) { gst_gl_shader_set_uniform_1f (shader, "width", (gfloat) width / 2.0f); gst_gl_shader_set_uniform_1f (shader, "height", (gfloat) height / 2.0f); diff --git a/gst/gl/effects/gstgleffectssources.c b/gst/gl/effects/gstgleffectssources.c index 1bf5b40eca..110c2a630c 100644 --- a/gst/gl/effects/gstgleffectssources.c +++ b/gst/gl/effects/gstgleffectssources.c @@ -80,7 +80,7 @@ const gchar *identity_fragment_source = "}"; /* Mirror effect */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL const gchar *mirror_fragment_source_opengl = "#extension GL_ARB_texture_rectangle : enable\n" "uniform sampler2DRect tex;" @@ -96,7 +96,7 @@ const gchar *mirror_fragment_source_opengl = " gl_FragColor = color * gl_Color;" "}"; #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 const gchar *mirror_fragment_source_gles2 = "precision mediump float;" "varying vec2 v_texCoord;" @@ -111,7 +111,7 @@ const gchar *mirror_fragment_source_gles2 = #endif /* Squeeze effect */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL const gchar *squeeze_fragment_source_opengl = "#extension GL_ARB_texture_rectangle : enable\n" "uniform sampler2DRect tex;" @@ -129,7 +129,7 @@ const gchar *squeeze_fragment_source_opengl = " gl_FragColor = color * gl_Color;" "}"; #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 const gchar *squeeze_fragment_source_gles2 = "precision mediump float;" "varying vec2 v_texCoord;" diff --git a/gst/gl/effects/gstgleffectssources.h b/gst/gl/effects/gstgleffectssources.h index d3b3e555e4..49d0b95f53 100644 --- a/gst/gl/effects/gstgleffectssources.h +++ b/gst/gl/effects/gstgleffectssources.h @@ -27,11 +27,11 @@ extern const gchar *vertex_shader_source; extern const gchar *identity_fragment_source; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL extern const gchar *mirror_fragment_source_opengl; extern const gchar *squeeze_fragment_source_opengl; #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 extern const gchar *mirror_fragment_source_gles2; extern const gchar *squeeze_fragment_source_gles2; #endif diff --git a/gst/gl/gltestsrc.c b/gst/gl/gltestsrc.c index 4a8c5f15fd..996e9d8411 100644 --- a/gst/gl/gltestsrc.c +++ b/gst/gl/gltestsrc.c @@ -83,7 +83,7 @@ gst_gl_test_src_unicolor (GstGLTestSrc * v, GstBuffer * buffer, int w, void gst_gl_test_src_smpte (GstGLTestSrc * v, GstBuffer * buffer, int w, int h) { -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL int i; if (gst_gl_display_get_gl_api_unlocked (v->display) & GST_GL_API_OPENGL) { @@ -191,7 +191,7 @@ gst_gl_test_src_smpte (GstGLTestSrc * v, GstBuffer * buffer, int w, int h) void gst_gl_test_src_snow (GstGLTestSrc * v, GstBuffer * buffer, int w, int h) { -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (gst_gl_display_get_gl_api_unlocked (v->display) & GST_GL_API_OPENGL) { glClearColor (0.0, 0.0, 0.0, 1.0); glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); @@ -218,7 +218,7 @@ static void gst_gl_test_src_unicolor (GstGLTestSrc * v, GstBuffer * buffer, int w, int h, const struct vts_color_struct *color) { -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (gst_gl_display_get_gl_api_unlocked (v->display) & GST_GL_API_OPENGL) { glClearColor (color->R * (1 / 255.0f), color->G * (1 / 255.0f), color->B * (1 / 255.0f), 1.0f); diff --git a/gst/gl/gstgleffects.c b/gst/gl/gstgleffects.c index a2272ce2a1..4f2b35cfa7 100644 --- a/gst/gl/gstgleffects.c +++ b/gst/gl/gstgleffects.c @@ -97,7 +97,7 @@ gst_gl_effects_effect_get_type (void) {GST_GL_EFFECT_IDENTITY, "Do nothing Effect", "identity"}, {GST_GL_EFFECT_MIRROR, "Mirror Effect", "mirror"}, {GST_GL_EFFECT_SQUEEZE, "Squeeze Effect", "squeeze"}, -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL {GST_GL_EFFECT_STRETCH, "Stretch Effect", "stretch"}, {GST_GL_EFFECT_FISHEYE, "FishEye Effect", "fisheye"}, {GST_GL_EFFECT_TWIRL, "Twirl Effect", "twirl"}, @@ -136,7 +136,7 @@ gst_gl_effects_set_effect (GstGLEffects * effects, gint effect_type) case GST_GL_EFFECT_SQUEEZE: effects->effect = (GstGLEffectProcessFunc) gst_gl_effects_squeeze; break; -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL case GST_GL_EFFECT_STRETCH: effects->effect = (GstGLEffectProcessFunc) gst_gl_effects_stretch; break; @@ -270,7 +270,7 @@ void gst_gl_effects_draw_texture (GstGLEffects * effects, GLuint tex, guint width, guint height) { -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (gst_gl_display_get_gl_api_unlocked (GST_GL_FILTER (effects)->display) & GST_GL_API_OPENGL) { glActiveTexture (GL_TEXTURE0); @@ -291,7 +291,7 @@ gst_gl_effects_draw_texture (GstGLEffects * effects, GLuint tex, guint width, glEnd (); } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (gst_gl_display_get_gl_api_unlocked (GST_GL_FILTER (effects)->display) & GST_GL_API_GLES2) { const GLfloat vVertices[] = { @@ -327,7 +327,7 @@ gst_gl_effects_draw_texture (GstGLEffects * effects, GLuint tex, guint width, static void set_horizontal_swap (GstGLDisplay * display, gpointer data) { -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (gst_gl_display_get_gl_api_unlocked (display) & GST_GL_API_OPENGL) { const double mirrormatrix[16] = { -1.0, 0.0, 0.0, 0.0, diff --git a/gst/gl/gstgleffects.h b/gst/gl/gstgleffects.h index b51c49f97f..afc229d8b4 100644 --- a/gst/gl/gstgleffects.h +++ b/gst/gl/gstgleffects.h @@ -71,7 +71,7 @@ struct _GstGLEffects gboolean horizontal_swap; /* switch left to right */ -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 GLint draw_attr_position_loc; GLint draw_attr_texture_loc; #endif diff --git a/gst/gl/gstglfiltercube.c b/gst/gl/gstglfiltercube.c index 815a79d4f3..c991b57d5d 100644 --- a/gst/gl/gstglfiltercube.c +++ b/gst/gl/gstglfiltercube.c @@ -75,20 +75,20 @@ static void gst_gl_filter_cube_get_property (GObject * object, guint prop_id, static gboolean gst_gl_filter_cube_set_caps (GstGLFilter * filter, GstCaps * incaps, GstCaps * outcaps); -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static void gst_gl_filter_cube_reset (GstGLFilter * filter); static gboolean gst_gl_filter_cube_init_shader (GstGLFilter * filter); static void _callback_gles2 (gint width, gint height, guint texture, gpointer stuff); #endif -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static void _callback_opengl (gint width, gint height, guint texture, gpointer stuff); #endif static gboolean gst_gl_filter_cube_filter_texture (GstGLFilter * filter, guint in_tex, guint out_tex); -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 /* vertex source */ static const gchar *cube_v_src = "attribute vec4 a_position; \n" @@ -144,7 +144,7 @@ gst_gl_filter_cube_class_init (GstGLFilterCubeClass * klass) gobject_class->set_property = gst_gl_filter_cube_set_property; gobject_class->get_property = gst_gl_filter_cube_get_property; -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 GST_GL_FILTER_CLASS (klass)->onInitFBO = gst_gl_filter_cube_init_shader; GST_GL_FILTER_CLASS (klass)->onReset = gst_gl_filter_cube_reset; #endif @@ -256,7 +256,7 @@ gst_gl_filter_cube_set_caps (GstGLFilter * filter, GstCaps * incaps, return TRUE; } -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static void gst_gl_filter_cube_reset (GstGLFilter * filter) { @@ -292,11 +292,11 @@ gst_gl_filter_cube_filter_texture (GstGLFilter * filter, guint in_tex, api = gst_gl_display_get_gl_api_unlocked (GST_GL_FILTER (cube_filter)->display); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (api & GST_GL_API_OPENGL) cb = _callback_opengl; #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 if (api & GST_GL_API_GLES2) cb = _callback_gles2; #endif @@ -317,7 +317,7 @@ gst_gl_filter_cube_filter_texture (GstGLFilter * filter, guint in_tex, } /* opengl scene, params: input texture (not the output filter->texture) */ -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL static void _callback_opengl (gint width, gint height, guint texture, gpointer stuff) { @@ -416,7 +416,7 @@ _callback_opengl (gint width, gint height, guint texture, gpointer stuff) } #endif -#if HAVE_GLES2 +#if GST_GL_HAVE_GLES2 static void _callback_gles2 (gint width, gint height, guint texture, gpointer stuff) { diff --git a/gst/gl/gstopengl.c b/gst/gl/gstopengl.c index 001b4632d2..76f9f5e0ba 100644 --- a/gst/gl/gstopengl.c +++ b/gst/gl/gstopengl.c @@ -51,7 +51,7 @@ GType gst_gl_filter_cube_get_type (void); GType gst_gl_effects_get_type (void); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL #include "gstgltestsrc.h" #include "gstglfilterlaplacian.h" #include "gstglfilterglass.h" @@ -86,7 +86,7 @@ GType gst_gl_overlay_get_type (void); #endif /* HAVE_JPEG */ #endif /* HAVE_PNG */ -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ #define GST_CAT_DEFAULT gst_gl_gstgl_debug GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT); @@ -111,7 +111,7 @@ plugin_init (GstPlugin * plugin) GST_RANK_NONE, gst_gl_effects_get_type ())) { return FALSE; } -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL if (!gst_element_register (plugin, "gltestsrc", GST_RANK_NONE, GST_TYPE_GL_TEST_SRC)) { return FALSE; @@ -183,7 +183,7 @@ plugin_init (GstPlugin * plugin) } #endif /* HAVE_JPEG */ #endif /* HAVE_PNG */ -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ return TRUE; } diff --git a/tests/check/pipelines/simple-launch-lines.c b/tests/check/pipelines/simple-launch-lines.c index bf46c3a737..65f4e8a794 100644 --- a/tests/check/pipelines/simple-launch-lines.c +++ b/tests/check/pipelines/simple-launch-lines.c @@ -131,7 +131,7 @@ GST_START_TEST (test_glfiltercube) } GST_END_TEST -#ifdef OPENGL_ES2 +#if GST_GL_HAVE_GLES2 # define N_EFFECTS 3 #else # define N_EFFECTS 16 @@ -154,7 +154,7 @@ GST_START_TEST (test_gleffects) GST_END_TEST #undef N_EFFECTS -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL #define N_SRCS 13 GST_START_TEST (test_gltestsrc) { @@ -311,7 +311,7 @@ GST_START_TEST (test_glfilterapp) GST_END_TEST #endif /* 0 */ -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ #endif /* !GST_DISABLE_PARSE */ Suite * simple_launch_lines_suite (void) { @@ -326,7 +326,7 @@ GST_END_TEST tcase_add_test (tc_chain, test_glimagesink); tcase_add_test (tc_chain, test_glfiltercube); tcase_add_test (tc_chain, test_gleffects); -#if HAVE_OPENGL +#if GST_GL_HAVE_OPENGL tcase_add_test (tc_chain, test_gltestsrc); tcase_add_test (tc_chain, test_glfilterblur); tcase_add_test (tc_chain, test_glfiltersobel); @@ -345,7 +345,7 @@ GST_END_TEST #endif /* HAVE_JPEG */ #endif /* HAVE_PNG */ #endif -#endif /* HAVE_OPENGL */ +#endif /* GST_GL_HAVE_OPENGL */ #endif /* !GST_DISABLE_PARSE */ return s; }