diff --git a/gst-libs/gst/gl/Makefile.am b/gst-libs/gst/gl/Makefile.am index f5ab0ece3d..a3bbc94b05 100644 --- a/gst-libs/gst/gl/Makefile.am +++ b/gst-libs/gst/gl/Makefile.am @@ -67,6 +67,7 @@ libgstgl_@GST_API_VERSION@include_HEADERS = \ gstglquery.h \ gstgl_fwd.h \ gstgl_enums.h \ + gl-prelude.h \ gl.h noinst_HEADERS = \ diff --git a/gst-libs/gst/gl/egl/gstegl.h b/gst-libs/gst/gl/egl/gstegl.h index 0bbda81dce..877e66859e 100644 --- a/gst-libs/gst/gl/egl/gstegl.h +++ b/gst-libs/gst/gl/egl/gstegl.h @@ -22,6 +22,7 @@ #define _GST_EGL_H_ #include +#include #if GST_GL_HAVE_WINDOW_DISPMANX && defined(__GNUC__) #ifndef __VCCOREVER__ @@ -51,7 +52,7 @@ typedef gintptr EGLAttrib; #endif -GST_EXPORT +GST_GL_API const gchar * gst_egl_get_error_string (EGLint err); #endif /* _GST_EGL_H_ */ diff --git a/gst-libs/gst/gl/egl/gsteglimage.h b/gst-libs/gst/gl/egl/gsteglimage.h index b96cc2d3d8..aaebceccf0 100644 --- a/gst-libs/gst/gl/egl/gsteglimage.h +++ b/gst-libs/gst/gl/egl/gsteglimage.h @@ -28,7 +28,7 @@ G_BEGIN_DECLS -GST_EXPORT GType gst_egl_image_get_type (void); +GST_GL_API GType gst_egl_image_get_type (void); #define GST_TYPE_EGL_IMAGE (gst_egl_image_get_type()) #define GST_IS_EGL_IMAGE(obj) (GST_IS_MINI_OBJECT_TYPE(obj, GST_TYPE_EGL_IMAGE)) @@ -68,27 +68,27 @@ struct _GstEGLImage gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstEGLImage * gst_egl_image_new_wrapped (GstGLContext * context, gpointer image, GstGLFormat format, gpointer user_data, GstEGLImageDestroyNotify user_data_destroy); -GST_EXPORT +GST_GL_API gpointer gst_egl_image_get_image (GstEGLImage * image); -GST_EXPORT +GST_GL_API GstEGLImage * gst_egl_image_from_texture (GstGLContext * context, GstGLMemory * gl_mem, guintptr * attribs); #if GST_GL_HAVE_DMABUF -GST_EXPORT +GST_GL_API GstEGLImage * gst_egl_image_from_dmabuf (GstGLContext * context, gint dmabuf, GstVideoInfo * in_info, gint plane, gsize offset); -GST_EXPORT +GST_GL_API gboolean gst_egl_image_export_dmabuf (GstEGLImage *image, int *fd, gint *stride, gsize *offset); #endif diff --git a/gst-libs/gst/gl/egl/gstgldisplay_egl.h b/gst-libs/gst/gl/egl/gstgldisplay_egl.h index 319a047243..c8f832e878 100644 --- a/gst-libs/gst/gl/egl/gstgldisplay_egl.h +++ b/gst-libs/gst/gl/egl/gstgldisplay_egl.h @@ -25,7 +25,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_display_egl_get_type (void); #define GST_TYPE_GL_DISPLAY_EGL (gst_gl_display_egl_get_type()) @@ -63,16 +63,16 @@ struct _GstGLDisplayEGLClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLDisplayEGL *gst_gl_display_egl_new (void); -GST_EXPORT +GST_GL_API GstGLDisplayEGL *gst_gl_display_egl_new_with_egl_display (gpointer display); -GST_EXPORT +GST_GL_API GstGLDisplayEGL *gst_gl_display_egl_from_gl_display (GstGLDisplay * display); -GST_EXPORT +GST_GL_API gpointer gst_gl_display_egl_get_from_native (GstGLDisplayType type, guintptr display); #define GST_GL_DISPLAY_EGL_NAME "gst.gl.display.egl" diff --git a/gst-libs/gst/gl/egl/gstglmemoryegl.h b/gst-libs/gst/gl/egl/gstglmemoryegl.h index 098e7cf0da..967b59b64a 100644 --- a/gst-libs/gst/gl/egl/gstglmemoryegl.h +++ b/gst-libs/gst/gl/egl/gstglmemoryegl.h @@ -30,7 +30,7 @@ G_BEGIN_DECLS #define GST_TYPE_GL_MEMORY_EGL_ALLOCATOR (gst_gl_memory_egl_allocator_get_type()) -GST_EXPORT GType gst_gl_memory_egl_allocator_get_type(void); +GST_GL_API GType gst_gl_memory_egl_allocator_get_type(void); #define GST_IS_GL_MEMORY_EGL_ALLOCATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GL_MEMORY_EGL_ALLOCATOR)) #define GST_IS_GL_MEMORY_EGL_ALLOCATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_GL_MEMORY_EGL_ALLOCATOR)) @@ -61,16 +61,16 @@ struct _GstGLMemoryEGL */ #define GST_GL_MEMORY_EGL_ALLOCATOR_NAME "GLMemoryEGL" -GST_EXPORT +GST_GL_API void gst_gl_memory_egl_init_once (void); -GST_EXPORT +GST_GL_API gboolean gst_is_gl_memory_egl (GstMemory * mem); -GST_EXPORT +GST_GL_API gpointer gst_gl_memory_egl_get_image (GstGLMemoryEGL * mem); -GST_EXPORT +GST_GL_API gpointer gst_gl_memory_egl_get_display (GstGLMemoryEGL * mem); /** diff --git a/gst-libs/gst/gl/gl-prelude.h b/gst-libs/gst/gl/gl-prelude.h new file mode 100644 index 0000000000..bc86ccc269 --- /dev/null +++ b/gst-libs/gst/gl/gl-prelude.h @@ -0,0 +1,31 @@ +/* GStreamer GL Library + * Copyright (C) 2018 GStreamer developers + * + * gl-prelude.h: prelude include header for gst-gl library + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef __GST_GL_PRELUDE_H__ +#define __GST_GL_PRELUDE_H__ + +#include + +#ifndef GST_GL_API +#define GST_GL_API GST_EXPORT +#endif + +#endif /* __GST_GL_PRELUDE_H__ */ diff --git a/gst-libs/gst/gl/gstglapi.h b/gst-libs/gst/gl/gstglapi.h index 1622d90957..53be1ab6ef 100644 --- a/gst-libs/gst/gl/gstglapi.h +++ b/gst-libs/gst/gl/gstglapi.h @@ -22,6 +22,7 @@ #define __GST_GL_API_H__ #include +#include #include @@ -98,14 +99,14 @@ typedef enum GST_GL_PLATFORM_ANY = G_MAXUINT32 } GstGLPlatform; -GST_EXPORT +GST_GL_API gchar * gst_gl_api_to_string (GstGLAPI api); -GST_EXPORT +GST_GL_API GstGLAPI gst_gl_api_from_string (const gchar * api_s); -GST_EXPORT +GST_GL_API gchar * gst_gl_platform_to_string (GstGLPlatform platform); -GST_EXPORT +GST_GL_API GstGLPlatform gst_gl_platform_from_string (const gchar * platform_s); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglbasefilter.h b/gst-libs/gst/gl/gstglbasefilter.h index fa4958d891..27ce6623eb 100644 --- a/gst-libs/gst/gl/gstglbasefilter.h +++ b/gst-libs/gst/gl/gstglbasefilter.h @@ -29,7 +29,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_base_filter_get_type(void); #define GST_TYPE_GL_BASE_FILTER (gst_gl_base_filter_get_type()) #define GST_GL_BASE_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_GL_BASE_FILTER,GstGLBaseFilter)) diff --git a/gst-libs/gst/gl/gstglbasememory.h b/gst-libs/gst/gl/gstglbasememory.h index 175fbf6101..80781a2bdb 100644 --- a/gst-libs/gst/gl/gstglbasememory.h +++ b/gst-libs/gst/gl/gstglbasememory.h @@ -36,11 +36,11 @@ G_BEGIN_DECLS * from the #GstGLBaseMemoryError enumeration */ #define GST_TYPE_GL_BASE_MEMORY (gst_gl_base_memory_get_type()) -GST_EXPORT +GST_GL_API GType gst_gl_base_memory_get_type(void); #define GST_TYPE_GL_BASE_MEMORY_ALLOCATOR (gst_gl_base_memory_allocator_get_type()) -GST_EXPORT +GST_GL_API GType gst_gl_base_memory_allocator_get_type(void); #define GST_IS_GL_BASE_MEMORY_ALLOCATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GL_BASE_MEMORY_ALLOCATOR)) @@ -52,7 +52,7 @@ GType gst_gl_base_memory_allocator_get_type(void); #define GST_GL_BASE_MEMORY_CAST(mem) ((GstGLBaseMemory *)mem) -GST_EXPORT +GST_GL_API GQuark gst_gl_base_memory_error_quark (void); #define GST_GL_BASE_MEMORY_ERROR (gst_gl_base_memory_error_quark ()) @@ -148,7 +148,7 @@ typedef void (*GstGLAllocationParamsCopyFunc) (GstGLAllocationParams * src typedef void (*GstGLAllocationParamsFreeFunc) (gpointer params); #define GST_TYPE_GL_ALLOCATION_PARAMS (gst_gl_allocation_params_get_type()) -GST_EXPORT +GST_GL_API GType gst_gl_allocation_params_get_type (void); /** @@ -219,7 +219,7 @@ struct _GstGLAllocationParams gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API gboolean gst_gl_allocation_params_init (GstGLAllocationParams * params, gsize struct_size, guint alloc_flags, @@ -234,18 +234,18 @@ gboolean gst_gl_allocation_params_init (GstGLAllocationPara GDestroyNotify notify); /* free with gst_gl_allocation_params_free */ -GST_EXPORT +GST_GL_API GstGLAllocationParams * gst_gl_allocation_params_copy (GstGLAllocationParams * src); -GST_EXPORT +GST_GL_API void gst_gl_allocation_params_free (GstGLAllocationParams * params); /* subclass usage */ -GST_EXPORT +GST_GL_API void gst_gl_allocation_params_free_data (GstGLAllocationParams * params); /* subclass usage */ -GST_EXPORT +GST_GL_API void gst_gl_allocation_params_copy_data (GstGLAllocationParams * src, GstGLAllocationParams * dest); @@ -387,13 +387,13 @@ struct _GstGLBaseMemoryAllocatorClass */ #define GST_GL_BASE_MEMORY_ALLOCATOR_NAME "GLBaseMemory" -GST_EXPORT +GST_GL_API void gst_gl_base_memory_init_once (void); -GST_EXPORT +GST_GL_API gboolean gst_is_gl_base_memory (GstMemory * mem); -GST_EXPORT +GST_GL_API void gst_gl_base_memory_init (GstGLBaseMemory * mem, GstAllocator * allocator, GstMemory * parent, @@ -403,16 +403,16 @@ void gst_gl_base_memory_init (GstGLBaseMemory * mem, gpointer user_data, GDestroyNotify notify); -GST_EXPORT +GST_GL_API gboolean gst_gl_base_memory_alloc_data (GstGLBaseMemory * gl_mem); -GST_EXPORT +GST_GL_API gboolean gst_gl_base_memory_memcpy (GstGLBaseMemory * src, GstGLBaseMemory * dest, gssize offset, gssize size); -GST_EXPORT +GST_GL_API GstGLBaseMemory * gst_gl_base_memory_alloc (GstGLBaseMemoryAllocator * allocator, GstGLAllocationParams * params); diff --git a/gst-libs/gst/gl/gstglbuffer.h b/gst-libs/gst/gl/gstglbuffer.h index 52a6576fdf..0450763d14 100644 --- a/gst-libs/gst/gl/gstglbuffer.h +++ b/gst-libs/gst/gl/gstglbuffer.h @@ -26,7 +26,7 @@ G_BEGIN_DECLS #define GST_TYPE_GL_BUFFER_ALLOCATOR (gst_gl_buffer_allocator_get_type()) -GST_EXPORT +GST_GL_API GType gst_gl_buffer_allocator_get_type(void); #define GST_IS_GL_BUFFER_ALLOCATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GL_ALLOCATOR)) @@ -57,7 +57,7 @@ struct _GstGLBuffer typedef struct _GstGLBufferAllocationParams GstGLBufferAllocationParams; #define GST_TYPE_GL_BUFFER_ALLOCATION_PARAMS (gst_gl_buffer_allocation_params_get_type()) -GST_EXPORT +GST_GL_API GType gst_gl_buffer_allocation_params_get_type (void); /** @@ -84,7 +84,7 @@ struct _GstGLBufferAllocationParams gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLBufferAllocationParams * gst_gl_buffer_allocation_params_new (GstGLContext * context, gsize alloc_size, GstAllocationParams * alloc_params, @@ -131,9 +131,9 @@ struct _GstGLBufferAllocatorClass */ #define GST_GL_BUFFER_ALLOCATOR_NAME "GLBuffer" -GST_EXPORT +GST_GL_API void gst_gl_buffer_init_once (void); -GST_EXPORT +GST_GL_API gboolean gst_is_gl_buffer (GstMemory * mem); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglbufferpool.h b/gst-libs/gst/gl/gstglbufferpool.h index 0921464d50..eac61ce81f 100644 --- a/gst-libs/gst/gl/gstglbufferpool.h +++ b/gst-libs/gst/gl/gstglbufferpool.h @@ -29,7 +29,7 @@ G_BEGIN_DECLS /* buffer pool functions */ -GST_EXPORT +GST_GL_API GType gst_gl_buffer_pool_get_type (void); #define GST_TYPE_GL_BUFFER_POOL (gst_gl_buffer_pool_get_type()) #define GST_IS_GL_BUFFER_POOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GL_BUFFER_POOL)) @@ -66,12 +66,12 @@ struct _GstGLBufferPoolClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstBufferPool *gst_gl_buffer_pool_new (GstGLContext * context); -GST_EXPORT +GST_GL_API GstGLAllocationParams * gst_buffer_pool_config_get_gl_allocation_params (GstStructure * config); -GST_EXPORT +GST_GL_API void gst_buffer_pool_config_set_gl_allocation_params (GstStructure * config, GstGLAllocationParams * params); diff --git a/gst-libs/gst/gl/gstglcolorconvert.h b/gst-libs/gst/gl/gstglcolorconvert.h index 76a5247cde..40a4829d57 100644 --- a/gst-libs/gst/gl/gstglcolorconvert.h +++ b/gst-libs/gst/gl/gstglcolorconvert.h @@ -28,7 +28,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_color_convert_get_type (void); #define GST_TYPE_GL_COLOR_CONVERT (gst_gl_color_convert_get_type()) #define GST_GL_COLOR_CONVERT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_GL_COLOR_CONVERT,GstGLColorConvert)) @@ -113,28 +113,28 @@ struct _GstGLColorConvertClass "framerate = " GST_VIDEO_FPS_RANGE ", " \ "texture-target = (string) { 2D, rectangle, external-oes }" -GST_EXPORT +GST_GL_API GstGLColorConvert * gst_gl_color_convert_new (GstGLContext * context); -GST_EXPORT +GST_GL_API GstCaps * gst_gl_color_convert_transform_caps (GstGLContext * context, GstPadDirection direction, GstCaps * caps, GstCaps * filter); -GST_EXPORT +GST_GL_API GstCaps * gst_gl_color_convert_fixate_caps (GstGLContext * context, GstPadDirection direction, GstCaps * caps, GstCaps * other); -GST_EXPORT +GST_GL_API gboolean gst_gl_color_convert_set_caps (GstGLColorConvert * convert, GstCaps * in_caps, GstCaps * out_caps); -GST_EXPORT +GST_GL_API gboolean gst_gl_color_convert_decide_allocation (GstGLColorConvert * convert, GstQuery * query); -GST_EXPORT +GST_GL_API GstBuffer * gst_gl_color_convert_perform (GstGLColorConvert * convert, GstBuffer * inbuf); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglcontext.h b/gst-libs/gst/gl/gstglcontext.h index ab851aee5c..007a6fb82a 100644 --- a/gst-libs/gst/gl/gstglcontext.h +++ b/gst-libs/gst/gl/gstglcontext.h @@ -27,7 +27,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_context_get_type (void); #define GST_TYPE_GL_CONTEXT (gst_gl_context_get_type()) @@ -37,7 +37,7 @@ GType gst_gl_context_get_type (void); #define GST_IS_GL_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), GST_TYPE_GL_CONTEXT)) #define GST_GL_CONTEXT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS((o), GST_TYPE_GL_CONTEXT, GstGLContextClass)) -GST_EXPORT +GST_GL_API GQuark gst_gl_context_error_quark (void); /** @@ -140,75 +140,75 @@ struct _GstGLContextClass { /* methods */ -GST_EXPORT +GST_GL_API GstGLContext * gst_gl_context_new (GstGLDisplay *display); -GST_EXPORT +GST_GL_API GstGLContext * gst_gl_context_new_wrapped (GstGLDisplay *display, guintptr handle, GstGLPlatform context_type, GstGLAPI available_apis); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_activate (GstGLContext *context, gboolean activate); -GST_EXPORT +GST_GL_API GThread * gst_gl_context_get_thread (GstGLContext *context); -GST_EXPORT +GST_GL_API GstGLContext * gst_gl_context_get_current (void); -GST_EXPORT +GST_GL_API GstGLDisplay * gst_gl_context_get_display (GstGLContext *context); -GST_EXPORT +GST_GL_API gpointer gst_gl_context_get_proc_address (GstGLContext *context, const gchar *name); -GST_EXPORT +GST_GL_API GstGLPlatform gst_gl_context_get_gl_platform (GstGLContext *context); -GST_EXPORT +GST_GL_API GstGLAPI gst_gl_context_get_gl_api (GstGLContext *context); -GST_EXPORT +GST_GL_API guintptr gst_gl_context_get_gl_context (GstGLContext *context); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_can_share (GstGLContext * context, GstGLContext *other_context); -GST_EXPORT +GST_GL_API void gst_gl_context_swap_buffers (GstGLContext * context); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_create (GstGLContext *context, GstGLContext *other_context, GError ** error); -GST_EXPORT +GST_GL_API void gst_gl_context_destroy (GstGLContext *context); -GST_EXPORT +GST_GL_API gpointer gst_gl_context_default_get_proc_address (GstGLAPI gl_api, const gchar *name); -GST_EXPORT +GST_GL_API gpointer gst_gl_context_get_proc_address_with_platform (GstGLPlatform context_type, GstGLAPI gl_api, const gchar *name); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_set_window (GstGLContext *context, GstGLWindow *window); -GST_EXPORT +GST_GL_API GstGLWindow * gst_gl_context_get_window (GstGLContext *context); -GST_EXPORT +GST_GL_API void gst_gl_context_get_gl_version (GstGLContext *context, gint *maj, gint *min); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_check_gl_version (GstGLContext * context, GstGLAPI api, gint maj, gint min); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_check_feature (GstGLContext *context, const gchar *feature); -GST_EXPORT +GST_GL_API void gst_gl_context_get_gl_platform_version (GstGLContext * context, gint * major, gint * minor); -GST_EXPORT +GST_GL_API guintptr gst_gl_context_get_current_gl_context (GstGLPlatform context_type); -GST_EXPORT +GST_GL_API GstGLAPI gst_gl_context_get_current_gl_api (GstGLPlatform platform, guint *major, guint *minor); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_is_shared (GstGLContext * context); -GST_EXPORT +GST_GL_API void gst_gl_context_set_shared_with (GstGLContext * context, GstGLContext * share); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_fill_info (GstGLContext * context, GError ** error); /* FIXME: remove */ -GST_EXPORT +GST_GL_API void gst_gl_context_thread_add (GstGLContext * context, GstGLContextThreadFunc func, gpointer data); diff --git a/gst-libs/gst/gl/gstgldebug.h b/gst-libs/gst/gl/gstgldebug.h index 503115544e..99e6ce225b 100644 --- a/gst-libs/gst/gl/gstgldebug.h +++ b/gst-libs/gst/gl/gstgldebug.h @@ -55,17 +55,17 @@ struct _GstGLAsyncDebug gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLAsyncDebug * gst_gl_async_debug_new (void); -GST_EXPORT +GST_GL_API void gst_gl_async_debug_free (GstGLAsyncDebug * ad); -GST_EXPORT +GST_GL_API void gst_gl_async_debug_init (GstGLAsyncDebug * ad); -GST_EXPORT +GST_GL_API void gst_gl_async_debug_unset (GstGLAsyncDebug * ad); -GST_EXPORT +GST_GL_API void gst_gl_async_debug_freeze (GstGLAsyncDebug * ad); -GST_EXPORT +GST_GL_API void gst_gl_async_debug_thaw (GstGLAsyncDebug * ad); /** @@ -119,12 +119,12 @@ GST_GL_ASYNC_CAT_LEVEL_LOG(GstGLAsyncDebug * ad, GstDebugCategory * cat, #if !defined(GST_DISABLE_GST_DEBUG) -GST_EXPORT +GST_GL_API void gst_gl_insert_debug_marker (GstGLContext * context, const gchar * format, ...) G_GNUC_PRINTF (2, 3); -GST_EXPORT +GST_GL_API void gst_gl_async_debug_output_log_msg (GstGLAsyncDebug * ad); -GST_EXPORT +GST_GL_API void gst_gl_async_debug_store_log_msg (GstGLAsyncDebug * ad, GstDebugCategory * cat, GstDebugLevel level, @@ -133,7 +133,7 @@ void gst_gl_async_debug_store_log_msg (GstGLAsyncDebug * ad, gint line, GObject * object, const gchar * format, ...) G_GNUC_PRINTF (8, 9); -GST_EXPORT +GST_GL_API void gst_gl_async_debug_store_log_msg_valist (GstGLAsyncDebug * ad, GstDebugCategory * cat, GstDebugLevel level, diff --git a/gst-libs/gst/gl/gstgldisplay.h b/gst-libs/gst/gl/gstgldisplay.h index abfc7b5f9b..d4c7f4cd55 100644 --- a/gst-libs/gst/gl/gstgldisplay.h +++ b/gst-libs/gst/gl/gstgldisplay.h @@ -28,7 +28,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_display_get_type (void); #define GST_TYPE_GL_DISPLAY (gst_gl_display_get_type()) @@ -100,22 +100,22 @@ struct _GstGLDisplayClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLDisplay *gst_gl_display_new (void); #define gst_gl_display_lock(display) GST_OBJECT_LOCK (display) #define gst_gl_display_unlock(display) GST_OBJECT_UNLOCK (display) -GST_EXPORT +GST_GL_API guintptr gst_gl_display_get_handle (GstGLDisplay * display); -GST_EXPORT +GST_GL_API GstGLDisplayType gst_gl_display_get_handle_type (GstGLDisplay * display); -GST_EXPORT +GST_GL_API void gst_gl_display_filter_gl_api (GstGLDisplay * display, GstGLAPI gl_api); -GST_EXPORT +GST_GL_API GstGLAPI gst_gl_display_get_gl_api (GstGLDisplay * display); -GST_EXPORT +GST_GL_API GstGLAPI gst_gl_display_get_gl_api_unlocked (GstGLDisplay * display); /** @@ -124,26 +124,26 @@ GstGLAPI gst_gl_display_get_gl_api_unlocked (GstGLDisplay * display); * The name used in #GstContext queries for requesting a #GstGLDisplay */ #define GST_GL_DISPLAY_CONTEXT_TYPE "gst.gl.GLDisplay" -GST_EXPORT +GST_GL_API void gst_context_set_gl_display (GstContext * context, GstGLDisplay * display); -GST_EXPORT +GST_GL_API gboolean gst_context_get_gl_display (GstContext * context, GstGLDisplay ** display); -GST_EXPORT +GST_GL_API gboolean gst_gl_display_create_context (GstGLDisplay * display, GstGLContext * other_context, GstGLContext ** p_context, GError **error); -GST_EXPORT +GST_GL_API GstGLContext * gst_gl_display_get_gl_context_for_thread (GstGLDisplay * display, GThread * thread); -GST_EXPORT +GST_GL_API gboolean gst_gl_display_add_context (GstGLDisplay * display, GstGLContext * context); -GST_EXPORT +GST_GL_API GstGLWindow * gst_gl_display_create_window (GstGLDisplay * display); -GST_EXPORT +GST_GL_API gboolean gst_gl_display_remove_window (GstGLDisplay * display, GstGLWindow * window); -GST_EXPORT +GST_GL_API GstGLWindow * gst_gl_display_find_window (GstGLDisplay * display, gpointer data, GCompareFunc compare_func); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglfeature.h b/gst-libs/gst/gl/gstglfeature.h index 2017122571..780f2594fb 100644 --- a/gst-libs/gst/gl/gstglfeature.h +++ b/gst-libs/gst/gl/gstglfeature.h @@ -54,7 +54,7 @@ G_BEGIN_DECLS ((driver_major) > (target_major) || \ ((driver_major) == (target_major) && (driver_minor) >= (target_minor))) -GST_EXPORT +GST_GL_API gboolean gst_gl_check_extension (const char *name, const gchar * ext); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglfilter.h b/gst-libs/gst/gl/gstglfilter.h index 138053d4be..9f70395f95 100644 --- a/gst-libs/gst/gl/gstglfilter.h +++ b/gst-libs/gst/gl/gstglfilter.h @@ -30,7 +30,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_filter_get_type(void); #define GST_TYPE_GL_FILTER (gst_gl_filter_get_type()) #define GST_GL_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_GL_FILTER,GstGLFilter)) @@ -122,23 +122,23 @@ struct _GstGLFilterClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API void gst_gl_filter_add_rgba_pad_templates (GstGLFilterClass *klass); -GST_EXPORT +GST_GL_API gboolean gst_gl_filter_filter_texture (GstGLFilter * filter, GstBuffer * inbuf, GstBuffer * outbuf); -GST_EXPORT +GST_GL_API gboolean gst_gl_filter_render_to_target (GstGLFilter *filter, GstGLMemory * input, GstGLMemory * output, GstGLFilterRenderFunc func, gpointer data); -GST_EXPORT +GST_GL_API void gst_gl_filter_draw_fullscreen_quad (GstGLFilter *filter); -GST_EXPORT +GST_GL_API void gst_gl_filter_render_to_target_with_shader (GstGLFilter * filter, GstGLMemory * input, GstGLMemory * output, diff --git a/gst-libs/gst/gl/gstglformat.h b/gst-libs/gst/gl/gstglformat.h index 2bd667da6d..a799d40eb9 100644 --- a/gst-libs/gst/gl/gstglformat.h +++ b/gst-libs/gst/gl/gstglformat.h @@ -120,27 +120,27 @@ typedef enum GST_GL_DEPTH24_STENCIL8 = 0x88F0, } GstGLFormat; -GST_EXPORT +GST_GL_API guint gst_gl_format_type_n_bytes (guint format, guint type); -GST_EXPORT +GST_GL_API GstGLFormat gst_gl_format_from_video_info (GstGLContext * context, GstVideoInfo * vinfo, guint plane); -GST_EXPORT +GST_GL_API guint gst_gl_sized_gl_format_from_gl_format_type (GstGLContext * context, guint format, guint type); -GST_EXPORT +GST_GL_API GstGLTextureTarget gst_gl_texture_target_from_string (const gchar * str); -GST_EXPORT +GST_GL_API const gchar * gst_gl_texture_target_to_string (GstGLTextureTarget target); -GST_EXPORT +GST_GL_API guint gst_gl_texture_target_to_gl (GstGLTextureTarget target); -GST_EXPORT +GST_GL_API GstGLTextureTarget gst_gl_texture_target_from_gl (guint target); -GST_EXPORT +GST_GL_API const gchar * gst_gl_texture_target_to_buffer_pool_option (GstGLTextureTarget target); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglframebuffer.h b/gst-libs/gst/gl/gstglframebuffer.h index aaf60ec8af..5ab514b825 100644 --- a/gst-libs/gst/gl/gstglframebuffer.h +++ b/gst-libs/gst/gl/gstglframebuffer.h @@ -25,7 +25,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_framebuffer_get_type (void); #define GST_TYPE_GL_FRAMEBUFFER (gst_gl_framebuffer_get_type()) @@ -78,35 +78,35 @@ struct _GstGLFramebufferClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLFramebuffer * gst_gl_framebuffer_new (GstGLContext *context); -GST_EXPORT +GST_GL_API GstGLFramebuffer * gst_gl_framebuffer_new_with_default_depth (GstGLContext *context, guint width, guint height); -GST_EXPORT +GST_GL_API guint gst_gl_framebuffer_get_id (GstGLFramebuffer * fb); -GST_EXPORT +GST_GL_API void gst_gl_framebuffer_attach (GstGLFramebuffer * fb, guint attachment_point, GstGLBaseMemory * mem); -GST_EXPORT +GST_GL_API void gst_gl_framebuffer_bind (GstGLFramebuffer * fb); -GST_EXPORT +GST_GL_API void gst_gl_context_clear_framebuffer (GstGLContext * context); -GST_EXPORT +GST_GL_API void gst_gl_framebuffer_get_effective_dimensions (GstGLFramebuffer * fb, guint * width, guint * height); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_check_framebuffer_status (GstGLContext * context, guint fbo_target); -GST_EXPORT +GST_GL_API gboolean gst_gl_framebuffer_draw_to_texture (GstGLFramebuffer * fb, GstGLMemory * mem, GstGLFramebufferFunc func, diff --git a/gst-libs/gst/gl/gstglmemory.h b/gst-libs/gst/gl/gstglmemory.h index 71dd9999e1..195f6688aa 100644 --- a/gst-libs/gst/gl/gstglmemory.h +++ b/gst-libs/gst/gl/gstglmemory.h @@ -27,7 +27,7 @@ G_BEGIN_DECLS #define GST_TYPE_GL_MEMORY_ALLOCATOR (gst_gl_memory_allocator_get_type()) -GST_EXPORT +GST_GL_API GType gst_gl_memory_allocator_get_type(void); #define GST_IS_GL_MEMORY_ALLOCATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GL_MEMORY_ALLOCATOR)) @@ -91,7 +91,7 @@ struct _GstGLMemory #define GST_TYPE_GL_VIDEO_ALLOCATION_PARAMS (gst_gl_video_allocation_params_get_type()) -GST_EXPORT +GST_GL_API GType gst_gl_video_allocation_params_get_type (void); typedef struct _GstGLVideoAllocationParams GstGLVideoAllocationParams; @@ -126,7 +126,7 @@ struct _GstGLVideoAllocationParams gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API gboolean gst_gl_video_allocation_params_init_full (GstGLVideoAllocationParams * params, gsize struct_size, guint alloc_flags, @@ -143,7 +143,7 @@ gboolean gst_gl_video_allocation_params_init_full (GstGLVideoAlloc gpointer gl_handle, gpointer user_data, GDestroyNotify notify); -GST_EXPORT +GST_GL_API GstGLVideoAllocationParams * gst_gl_video_allocation_params_new (GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, @@ -151,7 +151,7 @@ GstGLVideoAllocationParams * gst_gl_video_allocation_params_new (GstGLContext * GstVideoAlignment * valign, GstGLTextureTarget target, GstGLFormat tex_format); -GST_EXPORT +GST_GL_API GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_data (GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, @@ -163,7 +163,7 @@ GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_data gpointer user_data, GDestroyNotify notify); -GST_EXPORT +GST_GL_API GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_texture (GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, @@ -175,7 +175,7 @@ GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_texture gpointer user_data, GDestroyNotify notify); -GST_EXPORT +GST_GL_API GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_gl_handle (GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, @@ -188,10 +188,10 @@ GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_gl_handl GDestroyNotify notify); /* subclass usage */ -GST_EXPORT +GST_GL_API void gst_gl_video_allocation_params_free_data (GstGLVideoAllocationParams * params); /* subclass usage */ -GST_EXPORT +GST_GL_API void gst_gl_video_allocation_params_copy_data (GstGLVideoAllocationParams * src_vid, GstGLVideoAllocationParams * dest_vid); @@ -237,12 +237,12 @@ struct _GstGLMemoryAllocatorClass */ #define GST_GL_MEMORY_ALLOCATOR_NAME "GLMemory" -GST_EXPORT +GST_GL_API void gst_gl_memory_init_once (void); -GST_EXPORT +GST_GL_API gboolean gst_is_gl_memory (GstMemory * mem); -GST_EXPORT +GST_GL_API void gst_gl_memory_init (GstGLMemory * mem, GstAllocator * allocator, GstMemory * parent, @@ -256,14 +256,14 @@ void gst_gl_memory_init (GstGLMemory * mem, gpointer user_data, GDestroyNotify notify); -GST_EXPORT +GST_GL_API gboolean gst_gl_memory_copy_into (GstGLMemory *gl_mem, guint tex_id, GstGLTextureTarget target, GstGLFormat tex_format, gint width, gint height); -GST_EXPORT +GST_GL_API gboolean gst_gl_memory_copy_teximage (GstGLMemory * src, guint tex_id, GstGLTextureTarget out_target, @@ -271,26 +271,26 @@ gboolean gst_gl_memory_copy_teximage (GstGLMemory * src, gint out_width, gint out_height); -GST_EXPORT +GST_GL_API gboolean gst_gl_memory_read_pixels (GstGLMemory * gl_mem, gpointer read_pointer); -GST_EXPORT +GST_GL_API void gst_gl_memory_texsubimage (GstGLMemory * gl_mem, gpointer read_pointer); /* accessors */ -GST_EXPORT +GST_GL_API gint gst_gl_memory_get_texture_width (GstGLMemory * gl_mem); -GST_EXPORT +GST_GL_API gint gst_gl_memory_get_texture_height (GstGLMemory * gl_mem); -GST_EXPORT +GST_GL_API GstGLFormat gst_gl_memory_get_texture_format (GstGLMemory * gl_mem); -GST_EXPORT +GST_GL_API GstGLTextureTarget gst_gl_memory_get_texture_target (GstGLMemory * gl_mem); -GST_EXPORT +GST_GL_API guint gst_gl_memory_get_texture_id (GstGLMemory * gl_mem); -GST_EXPORT +GST_GL_API gboolean gst_gl_memory_setup_buffer (GstGLMemoryAllocator * allocator, GstBuffer * buffer, GstGLVideoAllocationParams * params, @@ -298,7 +298,7 @@ gboolean gst_gl_memory_setup_buffer (GstGLMemoryAllocato gpointer *wrapped_data, gsize n_wrapped_pointers); -GST_EXPORT +GST_GL_API GstGLMemoryAllocator * gst_gl_memory_allocator_get_default (GstGLContext *context); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglmemorypbo.h b/gst-libs/gst/gl/gstglmemorypbo.h index c57bf17344..e4d44d66ef 100644 --- a/gst-libs/gst/gl/gstglmemorypbo.h +++ b/gst-libs/gst/gl/gstglmemorypbo.h @@ -27,7 +27,7 @@ G_BEGIN_DECLS #define GST_TYPE_GL_MEMORY_PBO_ALLOCATOR (gst_gl_memory_pbo_allocator_get_type()) -GST_EXPORT +GST_GL_API GType gst_gl_memory_pbo_allocator_get_type(void); #define GST_IS_GL_MEMORY_PBO_ALLOCATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GL_MEMORY_PBO_ALLOCATOR)) @@ -59,17 +59,17 @@ struct _GstGLMemoryPBO */ #define GST_GL_MEMORY_PBO_ALLOCATOR_NAME "GLMemoryPBO" -GST_EXPORT +GST_GL_API void gst_gl_memory_pbo_init_once (void); -GST_EXPORT +GST_GL_API gboolean gst_is_gl_memory_pbo (GstMemory * mem); -GST_EXPORT +GST_GL_API void gst_gl_memory_pbo_download_transfer (GstGLMemoryPBO * gl_mem); -GST_EXPORT +GST_GL_API void gst_gl_memory_pbo_upload_transfer (GstGLMemoryPBO * gl_mem); -GST_EXPORT +GST_GL_API gboolean gst_gl_memory_pbo_copy_into_texture (GstGLMemoryPBO *gl_mem, guint tex_id, GstGLTextureTarget target, diff --git a/gst-libs/gst/gl/gstgloverlaycompositor.h b/gst-libs/gst/gl/gstgloverlaycompositor.h index 3bc24620d3..d56e4988d4 100644 --- a/gst-libs/gst/gl/gstgloverlaycompositor.h +++ b/gst-libs/gst/gl/gstgloverlaycompositor.h @@ -33,7 +33,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_overlay_compositor_get_type (void); /** @@ -72,20 +72,20 @@ struct _GstGLOverlayCompositorClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLOverlayCompositor *gst_gl_overlay_compositor_new (GstGLContext * context); -GST_EXPORT +GST_GL_API void gst_gl_overlay_compositor_free_overlays (GstGLOverlayCompositor * compositor); -GST_EXPORT +GST_GL_API void gst_gl_overlay_compositor_upload_overlays (GstGLOverlayCompositor * compositor, GstBuffer * buf); -GST_EXPORT +GST_GL_API void gst_gl_overlay_compositor_draw_overlays (GstGLOverlayCompositor * compositor); -GST_EXPORT +GST_GL_API GstCaps * gst_gl_overlay_compositor_add_caps(GstCaps * caps); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglquery.h b/gst-libs/gst/gl/gstglquery.h index 48634b8091..09950d53fc 100644 --- a/gst-libs/gst/gl/gstglquery.h +++ b/gst-libs/gst/gl/gstglquery.h @@ -59,25 +59,25 @@ struct _GstGLQuery gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API void gst_gl_query_init (GstGLQuery * query, GstGLContext * context, GstGLQueryType query_type); -GST_EXPORT +GST_GL_API void gst_gl_query_unset (GstGLQuery * query); -GST_EXPORT +GST_GL_API GstGLQuery * gst_gl_query_new (GstGLContext * context, GstGLQueryType query_type); -GST_EXPORT +GST_GL_API void gst_gl_query_free (GstGLQuery * query); -GST_EXPORT +GST_GL_API void gst_gl_query_start (GstGLQuery * query); -GST_EXPORT +GST_GL_API void gst_gl_query_end (GstGLQuery * query); -GST_EXPORT +GST_GL_API void gst_gl_query_counter (GstGLQuery * query); -GST_EXPORT +GST_GL_API guint64 gst_gl_query_result (GstGLQuery * query); #define gst_gl_query_start_log_valist(query,cat,level,object,format,varargs) \ diff --git a/gst-libs/gst/gl/gstglrenderbuffer.h b/gst-libs/gst/gl/gstglrenderbuffer.h index 598f0ab9cf..d1eaaee58b 100644 --- a/gst-libs/gst/gl/gstglrenderbuffer.h +++ b/gst-libs/gst/gl/gstglrenderbuffer.h @@ -26,7 +26,7 @@ G_BEGIN_DECLS #define GST_TYPE_GL_RENDERBUFFER_ALLOCATOR (gst_gl_renderbuffer_allocator_get_type()) -GST_EXPORT GType gst_gl_renderbuffer_allocator_get_type(void); +GST_GL_API GType gst_gl_renderbuffer_allocator_get_type(void); #define GST_IS_GL_RENDERBUFFER_ALLOCATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GL_RENDERBUFFER_ALLOCATOR)) #define GST_IS_GL_RENDERBUFFER_ALLOCATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_GL_RENDERBUFFER_ALLOCATOR)) @@ -98,7 +98,7 @@ struct _GstGLRenderbufferAllocatorClass #include -GST_EXPORT GType gst_gl_renderbuffer_allocation_params_get_type (void); +GST_GL_API GType gst_gl_renderbuffer_allocation_params_get_type (void); #define GST_TYPE_RENDERBUFFER_ALLOCATION_PARAMS (gst_gl_renderbuffer_allocation_params_get_type) typedef struct @@ -113,14 +113,14 @@ typedef struct gpointer _padding[GST_PADDING]; } GstGLRenderbufferAllocationParams; -GST_EXPORT +GST_GL_API GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_new (GstGLContext * context, GstAllocationParams * alloc_params, GstGLFormat renderbuffer_format, guint width, guint height); -GST_EXPORT +GST_GL_API GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_new_wrapped (GstGLContext * context, GstAllocationParams * alloc_params, GstGLFormat renderbuffer_format, @@ -130,23 +130,23 @@ GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_ne gpointer user_data, GDestroyNotify notify); -GST_EXPORT +GST_GL_API void gst_gl_renderbuffer_init_once (void); -GST_EXPORT +GST_GL_API gboolean gst_is_gl_renderbuffer (GstMemory * mem); /* accessors */ -GST_EXPORT +GST_GL_API gint gst_gl_renderbuffer_get_width (GstGLRenderbuffer * gl_mem); -GST_EXPORT +GST_GL_API gint gst_gl_renderbuffer_get_height (GstGLRenderbuffer * gl_mem); -GST_EXPORT +GST_GL_API GstGLFormat gst_gl_renderbuffer_get_format (GstGLRenderbuffer * gl_mem); -GST_EXPORT +GST_GL_API guint gst_gl_renderbuffer_get_id (GstGLRenderbuffer * gl_mem); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglshader.h b/gst-libs/gst/gl/gstglshader.h index 9441001d67..4f96f91b3c 100644 --- a/gst-libs/gst/gl/gstglshader.h +++ b/gst-libs/gst/gl/gstglshader.h @@ -26,7 +26,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_shader_get_type (void); #define GST_TYPE_GL_SHADER (gst_gl_shader_get_type()) @@ -53,102 +53,102 @@ struct _GstGLShaderClass { GstObjectClass parent_class; }; -GST_EXPORT +GST_GL_API GstGLShader * gst_gl_shader_new (GstGLContext *context); -GST_EXPORT +GST_GL_API GstGLShader * gst_gl_shader_new_with_stages (GstGLContext * context, GError ** error, ...); -GST_EXPORT +GST_GL_API GstGLShader * gst_gl_shader_new_link_with_stages (GstGLContext * context, GError ** error, ...); -GST_EXPORT +GST_GL_API GstGLShader * gst_gl_shader_new_default (GstGLContext * context, GError ** error); -GST_EXPORT +GST_GL_API gboolean gst_gl_shader_attach (GstGLShader * shader, GstGLSLStage * stage); -GST_EXPORT +GST_GL_API gboolean gst_gl_shader_attach_unlocked (GstGLShader * shader, GstGLSLStage * stage); -GST_EXPORT +GST_GL_API void gst_gl_shader_detach (GstGLShader * shader, GstGLSLStage * stage); -GST_EXPORT +GST_GL_API void gst_gl_shader_detach_unlocked (GstGLShader * shader, GstGLSLStage * stage); -GST_EXPORT +GST_GL_API gboolean gst_gl_shader_compile_attach_stage (GstGLShader * shader, GstGLSLStage *stage, GError ** error); -GST_EXPORT +GST_GL_API gboolean gst_gl_shader_link (GstGLShader * shader, GError ** error); -GST_EXPORT +GST_GL_API gboolean gst_gl_shader_is_linked (GstGLShader *shader); -GST_EXPORT +GST_GL_API int gst_gl_shader_get_program_handle (GstGLShader * shader); -GST_EXPORT +GST_GL_API void gst_gl_shader_release (GstGLShader *shader); -GST_EXPORT +GST_GL_API void gst_gl_shader_release_unlocked (GstGLShader * shader); -GST_EXPORT +GST_GL_API void gst_gl_shader_use (GstGLShader *shader); -GST_EXPORT +GST_GL_API void gst_gl_context_clear_shader (GstGLContext *context); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_1i (GstGLShader *shader, const gchar *name, gint value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_1iv (GstGLShader *shader, const gchar *name, guint count, const gint *value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_1f (GstGLShader *shader, const gchar *name, gfloat value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_1fv (GstGLShader *shader, const gchar *name, guint count, const gfloat *value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_2i (GstGLShader *shader, const gchar *name, gint v0, gint v1); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_2iv (GstGLShader *shader, const gchar *name, guint count, const gint *value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_2f (GstGLShader *shader, const gchar *name, gfloat v0, gfloat v1); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_2fv (GstGLShader *shader, const gchar *name, guint count, const gfloat *value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_3i (GstGLShader *shader, const gchar *name, gint v0, gint v1, gint v2); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_3iv (GstGLShader *shader, const gchar *name, guint count, const gint * value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_3f (GstGLShader *shader, const gchar *name, gfloat v0, gfloat v1, gfloat v2); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_3fv (GstGLShader *shader, const gchar *name, guint count, const gfloat *value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_4i (GstGLShader *shader, const gchar *name, gint v0, gint v1, gint v2, gint v3); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_4iv (GstGLShader *shader, const gchar *name, guint count, const gint *value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_4f (GstGLShader *shader, const gchar *name, gfloat v0, gfloat v1, gfloat v2, gfloat v3); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_4fv (GstGLShader *shader, const gchar *name, guint count, const gfloat *value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_2fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_3fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_4fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_2x3fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_2x4fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_3x2fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_3x4fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_4x2fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API void gst_gl_shader_set_uniform_matrix_4x3fv (GstGLShader *shader, const gchar *name, gint count, gboolean transpose, const gfloat* value); -GST_EXPORT +GST_GL_API gint gst_gl_shader_get_attribute_location (GstGLShader *shader, const gchar *name); -GST_EXPORT +GST_GL_API void gst_gl_shader_bind_attribute_location (GstGLShader * shader, guint index, const gchar * name); -GST_EXPORT +GST_GL_API void gst_gl_shader_bind_frag_data_location (GstGLShader * shader, guint index, const gchar * name); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglshaderstrings.h b/gst-libs/gst/gl/gstglshaderstrings.h index 48ea20085c..2a02241302 100644 --- a/gst-libs/gst/gl/gstglshaderstrings.h +++ b/gst-libs/gst/gl/gstglshaderstrings.h @@ -22,19 +22,20 @@ #define __GST_GL_SHADER_STRINGS_H__ #include +#include G_BEGIN_DECLS -GST_EXPORT +GST_GL_API const gchar *gst_gl_shader_string_vertex_default; -GST_EXPORT +GST_GL_API const gchar *gst_gl_shader_string_fragment_default; -GST_EXPORT +GST_GL_API const gchar *gst_gl_shader_string_vertex_mat4_texture_transform; -GST_EXPORT +GST_GL_API const gchar *gst_gl_shader_string_vertex_mat4_vertex_transform; -GST_EXPORT +GST_GL_API const gchar *gst_gl_shader_string_fragment_external_oes_default; G_END_DECLS diff --git a/gst-libs/gst/gl/gstglsl.h b/gst-libs/gst/gl/gstglsl.h index 83a5436eed..5e4ea7a99c 100644 --- a/gst-libs/gst/gl/gstglsl.h +++ b/gst-libs/gst/gl/gstglsl.h @@ -25,7 +25,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GQuark gst_glsl_error_quark (void); /** @@ -122,32 +122,32 @@ typedef enum GST_GLSL_PROFILE_ANY = -1, } GstGLSLProfile; -GST_EXPORT +GST_GL_API GstGLSLVersion gst_glsl_version_from_string (const gchar * string); -GST_EXPORT +GST_GL_API const gchar * gst_glsl_version_to_string (GstGLSLVersion version); -GST_EXPORT +GST_GL_API GstGLSLProfile gst_glsl_profile_from_string (const gchar * string); -GST_EXPORT +GST_GL_API const gchar * gst_glsl_profile_to_string (GstGLSLProfile profile); -GST_EXPORT +GST_GL_API gchar * gst_glsl_version_profile_to_string (GstGLSLVersion version, GstGLSLProfile profile); -GST_EXPORT +GST_GL_API gboolean gst_glsl_version_profile_from_string (const gchar * string, GstGLSLVersion * version_ret, GstGLSLProfile * profile_ret); -GST_EXPORT +GST_GL_API gboolean gst_glsl_string_get_version_profile (const gchar *s, GstGLSLVersion * version, GstGLSLProfile * profile); -GST_EXPORT +GST_GL_API GstGLSLVersion gst_gl_version_to_glsl_version (GstGLAPI gl_api, gint maj, gint min); -GST_EXPORT +GST_GL_API gboolean gst_gl_context_supports_glsl_profile_version (GstGLContext * context, GstGLSLVersion version, GstGLSLProfile profile); diff --git a/gst-libs/gst/gl/gstglslstage.h b/gst-libs/gst/gl/gstglslstage.h index f37e8f653f..b59f3396a0 100644 --- a/gst-libs/gst/gl/gstglslstage.h +++ b/gst-libs/gst/gl/gstglslstage.h @@ -62,17 +62,17 @@ struct _GstGLSLStageClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GType gst_glsl_stage_get_type (void); -GST_EXPORT +GST_GL_API GstGLSLStage * gst_glsl_stage_new (GstGLContext * context, guint type); -GST_EXPORT +GST_GL_API GstGLSLStage * gst_glsl_stage_new_with_string (GstGLContext * context, guint type, GstGLSLVersion version, GstGLSLProfile profile, const gchar * str); -GST_EXPORT +GST_GL_API GstGLSLStage * gst_glsl_stage_new_with_strings (GstGLContext * context, guint type, GstGLSLVersion version, @@ -80,26 +80,26 @@ GstGLSLStage * gst_glsl_stage_new_with_strings (GstGLContext * context, gint n_strings, const gchar ** str); -GST_EXPORT +GST_GL_API GstGLSLStage * gst_glsl_stage_new_default_fragment (GstGLContext * context); -GST_EXPORT +GST_GL_API GstGLSLStage * gst_glsl_stage_new_default_vertex (GstGLContext * context); -GST_EXPORT +GST_GL_API guint gst_glsl_stage_get_handle (GstGLSLStage * stage); -GST_EXPORT +GST_GL_API GstGLSLProfile gst_glsl_stage_get_profile (GstGLSLStage * stage); -GST_EXPORT +GST_GL_API GstGLSLVersion gst_glsl_stage_get_version (GstGLSLStage * stage); -GST_EXPORT +GST_GL_API guint gst_glsl_stage_get_shader_type (GstGLSLStage * stage); -GST_EXPORT +GST_GL_API gboolean gst_glsl_stage_set_strings (GstGLSLStage * stage, GstGLSLVersion version, GstGLSLProfile profile, gint n_strings, const gchar ** str); -GST_EXPORT +GST_GL_API gboolean gst_glsl_stage_compile (GstGLSLStage * stage, GError ** error); diff --git a/gst-libs/gst/gl/gstglsyncmeta.h b/gst-libs/gst/gl/gstglsyncmeta.h index ea67b79108..6daee86ca0 100644 --- a/gst-libs/gst/gl/gstglsyncmeta.h +++ b/gst-libs/gst/gl/gstglsyncmeta.h @@ -71,23 +71,23 @@ struct _GstGLSyncMeta void (*free_gl) (GstGLSyncMeta * sync, GstGLContext * context); }; -GST_EXPORT +GST_GL_API GType gst_gl_sync_meta_api_get_type (void); -GST_EXPORT +GST_GL_API const GstMetaInfo * gst_gl_sync_meta_get_info (void); #define gst_buffer_get_gl_sync_meta(b) ((GstGLSyncMeta*)gst_buffer_get_meta((b),GST_GL_SYNC_META_API_TYPE)) -GST_EXPORT +GST_GL_API GstGLSyncMeta * gst_buffer_add_gl_sync_meta (GstGLContext * context, GstBuffer *buffer); -GST_EXPORT +GST_GL_API GstGLSyncMeta * gst_buffer_add_gl_sync_meta_full (GstGLContext * context, GstBuffer * buffer, gpointer data); -GST_EXPORT +GST_GL_API void gst_gl_sync_meta_set_sync_point (GstGLSyncMeta * sync_meta, GstGLContext * context); -GST_EXPORT +GST_GL_API void gst_gl_sync_meta_wait (GstGLSyncMeta * sync_meta, GstGLContext * context); -GST_EXPORT +GST_GL_API void gst_gl_sync_meta_wait_cpu (GstGLSyncMeta * sync_meta, GstGLContext * context); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglupload.h b/gst-libs/gst/gl/gstglupload.h index c672fe5e0f..9edb49327b 100644 --- a/gst-libs/gst/gl/gstglupload.h +++ b/gst-libs/gst/gl/gstglupload.h @@ -27,7 +27,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_upload_get_type (void); #define GST_TYPE_GL_UPLOAD (gst_gl_upload_get_type()) #define GST_GL_UPLOAD(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_GL_UPLOAD,GstGLUpload)) @@ -84,36 +84,36 @@ struct _GstGLUploadClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstCaps * gst_gl_upload_get_input_template_caps (void); -GST_EXPORT +GST_GL_API GstGLUpload * gst_gl_upload_new (GstGLContext * context); -GST_EXPORT +GST_GL_API void gst_gl_upload_set_context (GstGLUpload * upload, GstGLContext * context); -GST_EXPORT +GST_GL_API GstCaps * gst_gl_upload_transform_caps (GstGLUpload * upload, GstGLContext * context, GstPadDirection direction, GstCaps * caps, GstCaps * filter); -GST_EXPORT +GST_GL_API gboolean gst_gl_upload_set_caps (GstGLUpload * upload, GstCaps * in_caps, GstCaps * out_caps); -GST_EXPORT +GST_GL_API void gst_gl_upload_get_caps (GstGLUpload * upload, GstCaps ** in_caps, GstCaps ** out_caps); -GST_EXPORT +GST_GL_API void gst_gl_upload_propose_allocation (GstGLUpload * upload, GstQuery * decide_query, GstQuery * query); -GST_EXPORT +GST_GL_API GstGLUploadReturn gst_gl_upload_perform_with_buffer (GstGLUpload * upload, GstBuffer * buffer, GstBuffer ** outbuf_ptr); diff --git a/gst-libs/gst/gl/gstglutils.h b/gst-libs/gst/gl/gstglutils.h index d39f68306b..0064d2964f 100644 --- a/gst-libs/gst/gl/gstglutils.h +++ b/gst-libs/gst/gl/gstglutils.h @@ -28,35 +28,35 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API gboolean gst_gl_ensure_element_data (gpointer element, GstGLDisplay **display_ptr, GstGLContext ** other_context_ptr); -GST_EXPORT +GST_GL_API gboolean gst_gl_handle_set_context (GstElement * element, GstContext * context, GstGLDisplay ** display, GstGLContext ** other_context); -GST_EXPORT +GST_GL_API gboolean gst_gl_handle_context_query (GstElement * element, GstQuery * query, GstGLDisplay * display, GstGLContext * context, GstGLContext * other_context); -GST_EXPORT +GST_GL_API gboolean gst_gl_query_local_gl_context (GstElement * element, GstPadDirection direction, GstGLContext ** context_ptr); -GST_EXPORT +GST_GL_API void gst_gl_element_propagate_display_context (GstElement * element, GstGLDisplay * display); -GST_EXPORT +GST_GL_API gsize gst_gl_get_plane_data_size (GstVideoInfo * info, GstVideoAlignment * align, guint plane); -GST_EXPORT +GST_GL_API gsize gst_gl_get_plane_start (GstVideoInfo * info, GstVideoAlignment * valign, guint plane); -GST_EXPORT +GST_GL_API gboolean gst_gl_value_set_texture_target_from_mask (GValue * value, GstGLTextureTarget target_mask); -GST_EXPORT +GST_GL_API gboolean gst_gl_value_set_texture_target (GValue * value, GstGLTextureTarget target); -GST_EXPORT +GST_GL_API GstGLTextureTarget gst_gl_value_get_texture_target_mask (const GValue * value); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglviewconvert.h b/gst-libs/gst/gl/gstglviewconvert.h index 3cad3adebd..8b3d4b22e7 100644 --- a/gst-libs/gst/gl/gstglviewconvert.h +++ b/gst-libs/gst/gl/gstglviewconvert.h @@ -36,7 +36,7 @@ G_BEGIN_DECLS #define GST_GL_VIEW_CONVERT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj) ,GST_TYPE_GL_VIEW_CONVERT,GstGLViewConvertClass)) #define GST_TYPE_GL_STEREO_DOWNMIX_MODE_TYPE gst_gl_stereo_downmix_mode_get_type() -GST_EXPORT +GST_GL_API GType gst_gl_stereo_downmix_mode_get_type (void); /** @@ -106,31 +106,31 @@ struct _GstGLViewConvertClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GType gst_gl_view_convert_get_type (void); -GST_EXPORT +GST_GL_API GstGLViewConvert * gst_gl_view_convert_new (void); -GST_EXPORT +GST_GL_API gboolean gst_gl_view_convert_set_caps (GstGLViewConvert * viewconvert, GstCaps * in_caps, GstCaps * out_caps); -GST_EXPORT +GST_GL_API GstCaps * gst_gl_view_convert_transform_caps (GstGLViewConvert * viewconvert, GstPadDirection direction, GstCaps * caps, GstCaps * filter); -GST_EXPORT +GST_GL_API GstCaps * gst_gl_view_convert_fixate_caps (GstGLViewConvert *viewconvert, GstPadDirection direction, GstCaps * caps, GstCaps * othercaps); -GST_EXPORT +GST_GL_API GstFlowReturn gst_gl_view_convert_submit_input_buffer (GstGLViewConvert *viewconvert, gboolean is_discont, GstBuffer * input); -GST_EXPORT +GST_GL_API GstFlowReturn gst_gl_view_convert_get_output (GstGLViewConvert *viewconvert, GstBuffer ** outbuf_ptr); -GST_EXPORT +GST_GL_API GstBuffer * gst_gl_view_convert_perform (GstGLViewConvert * viewconvert, GstBuffer *inbuf); -GST_EXPORT +GST_GL_API void gst_gl_view_convert_reset (GstGLViewConvert * viewconvert); -GST_EXPORT +GST_GL_API void gst_gl_view_convert_set_context (GstGLViewConvert *viewconvert, GstGLContext * context); G_END_DECLS diff --git a/gst-libs/gst/gl/gstglwindow.h b/gst-libs/gst/gl/gstglwindow.h index 83e6a98c65..ece8d315b0 100644 --- a/gst-libs/gst/gl/gstglwindow.h +++ b/gst-libs/gst/gl/gstglwindow.h @@ -30,7 +30,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_window_get_type (void); #define GST_TYPE_GL_WINDOW (gst_gl_window_get_type()) @@ -44,7 +44,7 @@ GType gst_gl_window_get_type (void); #define GST_GL_WINDOW_UNLOCK(w) g_mutex_unlock(&GST_GL_WINDOW(w)->lock) #define GST_GL_WINDOW_GET_LOCK(w) (&GST_GL_WINDOW(w)->lock) -GST_EXPORT +GST_GL_API GQuark gst_gl_window_error_quark (void); /** * GST_GL_WINDOW_ERROR: @@ -173,56 +173,56 @@ struct _GstGLWindowClass { gpointer _reserved[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLWindow * gst_gl_window_new (GstGLDisplay *display); /* callbacks */ -GST_EXPORT +GST_GL_API void gst_gl_window_set_draw_callback (GstGLWindow *window, GstGLWindowCB callback, gpointer data, GDestroyNotify destroy_notify); -GST_EXPORT +GST_GL_API void gst_gl_window_set_resize_callback (GstGLWindow *window, GstGLWindowResizeCB callback, gpointer data, GDestroyNotify destroy_notify); -GST_EXPORT +GST_GL_API void gst_gl_window_set_close_callback (GstGLWindow *window, GstGLWindowCB callback, gpointer data, GDestroyNotify destroy_notify); -GST_EXPORT +GST_GL_API void gst_gl_window_set_window_handle (GstGLWindow *window, guintptr handle); -GST_EXPORT +GST_GL_API guintptr gst_gl_window_get_window_handle (GstGLWindow *window); /* loop/events */ -GST_EXPORT +GST_GL_API void gst_gl_window_run (GstGLWindow *window); -GST_EXPORT +GST_GL_API void gst_gl_window_quit (GstGLWindow *window); -GST_EXPORT +GST_GL_API void gst_gl_window_send_message (GstGLWindow *window, GstGLWindowCB callback, gpointer data); -GST_EXPORT +GST_GL_API void gst_gl_window_send_message_async (GstGLWindow *window, GstGLWindowCB callback, gpointer data, GDestroyNotify destroy); /* navigation */ -GST_EXPORT +GST_GL_API void gst_gl_window_handle_events (GstGLWindow * window, gboolean handle_events); -GST_EXPORT +GST_GL_API void gst_gl_window_send_key_event (GstGLWindow * window, const char * event_type, const char * key_str); -GST_EXPORT +GST_GL_API void gst_gl_window_send_mouse_event (GstGLWindow * window, const char * event_type, int button, @@ -230,21 +230,21 @@ void gst_gl_window_send_mouse_event (GstGLWindow * window, double posy); /* surfaces/rendering */ -GST_EXPORT +GST_GL_API void gst_gl_window_queue_resize (GstGLWindow *window); -GST_EXPORT +GST_GL_API void gst_gl_window_draw (GstGLWindow *window); -GST_EXPORT +GST_GL_API void gst_gl_window_show (GstGLWindow *window); -GST_EXPORT +GST_GL_API void gst_gl_window_set_preferred_size (GstGLWindow * window, gint width, gint height); -GST_EXPORT +GST_GL_API void gst_gl_window_get_surface_dimensions (GstGLWindow * window, guint * width, guint * height); -GST_EXPORT +GST_GL_API gboolean gst_gl_window_set_render_rectangle (GstGLWindow * window, gint x, gint y, @@ -252,12 +252,12 @@ gboolean gst_gl_window_set_render_rectangle (GstGLWindow * window, gint height); /* subclass usage only */ -GST_EXPORT +GST_GL_API void gst_gl_window_resize (GstGLWindow *window, guint width, guint height); -GST_EXPORT +GST_GL_API GstGLContext * gst_gl_window_get_context (GstGLWindow *window); -GST_EXPORT +GST_GL_API guintptr gst_gl_window_get_display (GstGLWindow *window); G_END_DECLS diff --git a/gst-libs/gst/gl/meson.build b/gst-libs/gst/gl/meson.build index 9879659e9e..f5f39b8710 100644 --- a/gst-libs/gst/gl/meson.build +++ b/gst-libs/gst/gl/meson.build @@ -30,6 +30,7 @@ gl_sources = [ gl_headers = [ 'gl.h', + 'gl-prelude.h', 'gstgl_enums.h', 'gstgl_fwd.h', 'gstglapi.h', diff --git a/gst-libs/gst/gl/wayland/gstgldisplay_wayland.h b/gst-libs/gst/gl/wayland/gstgldisplay_wayland.h index ab1d42afa9..1ba66551a7 100644 --- a/gst-libs/gst/gl/wayland/gstgldisplay_wayland.h +++ b/gst-libs/gst/gl/wayland/gstgldisplay_wayland.h @@ -30,7 +30,7 @@ G_BEGIN_DECLS -GST_EXPORT GType gst_gl_display_wayland_get_type (void); +GST_GL_API GType gst_gl_display_wayland_get_type (void); #define GST_TYPE_GL_DISPLAY_WAYLAND (gst_gl_display_wayland_get_type()) #define GST_GL_DISPLAY_WAYLAND(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_GL_DISPLAY_WAYLAND,GstGLDisplayWayland)) @@ -71,10 +71,10 @@ struct _GstGLDisplayWaylandClass gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLDisplayWayland *gst_gl_display_wayland_new (const gchar * name); -GST_EXPORT +GST_GL_API GstGLDisplayWayland *gst_gl_display_wayland_new_with_display (struct wl_display *display); G_END_DECLS diff --git a/gst-libs/gst/gl/x11/gstgldisplay_x11.h b/gst-libs/gst/gl/x11/gstgldisplay_x11.h index 3ffe251bb7..67a8ab3618 100644 --- a/gst-libs/gst/gl/x11/gstgldisplay_x11.h +++ b/gst-libs/gst/gl/x11/gstgldisplay_x11.h @@ -29,7 +29,7 @@ G_BEGIN_DECLS -GST_EXPORT +GST_GL_API GType gst_gl_display_x11_get_type (void); #define GST_TYPE_GL_DISPLAY_X11 (gst_gl_display_x11_get_type()) @@ -68,10 +68,10 @@ struct _GstGLDisplayX11Class gpointer _padding[GST_PADDING]; }; -GST_EXPORT +GST_GL_API GstGLDisplayX11 *gst_gl_display_x11_new (const gchar * name); -GST_EXPORT +GST_GL_API GstGLDisplayX11 *gst_gl_display_x11_new_with_display (Display *display); G_END_DECLS