gl: GST_EXPORT -> GST_GL_API

We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
This commit is contained in:
Tim-Philipp Müller 2018-03-13 10:57:15 +00:00
parent 882151502d
commit c5b5ef16d3
36 changed files with 361 additions and 325 deletions

View file

@ -67,6 +67,7 @@ libgstgl_@GST_API_VERSION@include_HEADERS = \
gstglquery.h \ gstglquery.h \
gstgl_fwd.h \ gstgl_fwd.h \
gstgl_enums.h \ gstgl_enums.h \
gl-prelude.h \
gl.h gl.h
noinst_HEADERS = \ noinst_HEADERS = \

View file

@ -22,6 +22,7 @@
#define _GST_EGL_H_ #define _GST_EGL_H_
#include <gst/gl/gstglconfig.h> #include <gst/gl/gstglconfig.h>
#include <gst/gl/gl-prelude.h>
#if GST_GL_HAVE_WINDOW_DISPMANX && defined(__GNUC__) #if GST_GL_HAVE_WINDOW_DISPMANX && defined(__GNUC__)
#ifndef __VCCOREVER__ #ifndef __VCCOREVER__
@ -51,7 +52,7 @@
typedef gintptr EGLAttrib; typedef gintptr EGLAttrib;
#endif #endif
GST_EXPORT GST_GL_API
const gchar * gst_egl_get_error_string (EGLint err); const gchar * gst_egl_get_error_string (EGLint err);
#endif /* _GST_EGL_H_ */ #endif /* _GST_EGL_H_ */

View file

@ -28,7 +28,7 @@
G_BEGIN_DECLS 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_TYPE_EGL_IMAGE (gst_egl_image_get_type())
#define GST_IS_EGL_IMAGE(obj) (GST_IS_MINI_OBJECT_TYPE(obj, GST_TYPE_EGL_IMAGE)) #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]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstEGLImage * gst_egl_image_new_wrapped (GstGLContext * context, GstEGLImage * gst_egl_image_new_wrapped (GstGLContext * context,
gpointer image, gpointer image,
GstGLFormat format, GstGLFormat format,
gpointer user_data, gpointer user_data,
GstEGLImageDestroyNotify user_data_destroy); GstEGLImageDestroyNotify user_data_destroy);
GST_EXPORT GST_GL_API
gpointer gst_egl_image_get_image (GstEGLImage * image); gpointer gst_egl_image_get_image (GstEGLImage * image);
GST_EXPORT GST_GL_API
GstEGLImage * gst_egl_image_from_texture (GstGLContext * context, GstEGLImage * gst_egl_image_from_texture (GstGLContext * context,
GstGLMemory * gl_mem, GstGLMemory * gl_mem,
guintptr * attribs); guintptr * attribs);
#if GST_GL_HAVE_DMABUF #if GST_GL_HAVE_DMABUF
GST_EXPORT GST_GL_API
GstEGLImage * gst_egl_image_from_dmabuf (GstGLContext * context, GstEGLImage * gst_egl_image_from_dmabuf (GstGLContext * context,
gint dmabuf, gint dmabuf,
GstVideoInfo * in_info, GstVideoInfo * in_info,
gint plane, gint plane,
gsize offset); gsize offset);
GST_EXPORT GST_GL_API
gboolean gst_egl_image_export_dmabuf (GstEGLImage *image, int *fd, gint *stride, gsize *offset); gboolean gst_egl_image_export_dmabuf (GstEGLImage *image, int *fd, gint *stride, gsize *offset);
#endif #endif

View file

@ -25,7 +25,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_display_egl_get_type (void); GType gst_gl_display_egl_get_type (void);
#define GST_TYPE_GL_DISPLAY_EGL (gst_gl_display_egl_get_type()) #define GST_TYPE_GL_DISPLAY_EGL (gst_gl_display_egl_get_type())
@ -63,16 +63,16 @@ struct _GstGLDisplayEGLClass
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLDisplayEGL *gst_gl_display_egl_new (void); GstGLDisplayEGL *gst_gl_display_egl_new (void);
GST_EXPORT GST_GL_API
GstGLDisplayEGL *gst_gl_display_egl_new_with_egl_display (gpointer display); 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); 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); gpointer gst_gl_display_egl_get_from_native (GstGLDisplayType type, guintptr display);
#define GST_GL_DISPLAY_EGL_NAME "gst.gl.display.egl" #define GST_GL_DISPLAY_EGL_NAME "gst.gl.display.egl"

View file

@ -30,7 +30,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
#define GST_TYPE_GL_MEMORY_EGL_ALLOCATOR (gst_gl_memory_egl_allocator_get_type()) #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(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)) #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" #define GST_GL_MEMORY_EGL_ALLOCATOR_NAME "GLMemoryEGL"
GST_EXPORT GST_GL_API
void gst_gl_memory_egl_init_once (void); void gst_gl_memory_egl_init_once (void);
GST_EXPORT GST_GL_API
gboolean gst_is_gl_memory_egl (GstMemory * mem); gboolean gst_is_gl_memory_egl (GstMemory * mem);
GST_EXPORT GST_GL_API
gpointer gst_gl_memory_egl_get_image (GstGLMemoryEGL * mem); gpointer gst_gl_memory_egl_get_image (GstGLMemoryEGL * mem);
GST_EXPORT GST_GL_API
gpointer gst_gl_memory_egl_get_display (GstGLMemoryEGL * mem); gpointer gst_gl_memory_egl_get_display (GstGLMemoryEGL * mem);
/** /**

View file

@ -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 <gst/gst.h>
#ifndef GST_GL_API
#define GST_GL_API GST_EXPORT
#endif
#endif /* __GST_GL_PRELUDE_H__ */

View file

@ -22,6 +22,7 @@
#define __GST_GL_API_H__ #define __GST_GL_API_H__
#include <gst/gl/gstglconfig.h> #include <gst/gl/gstglconfig.h>
#include <gst/gl/gl-prelude.h>
#include <gst/gst.h> #include <gst/gst.h>
@ -98,14 +99,14 @@ typedef enum
GST_GL_PLATFORM_ANY = G_MAXUINT32 GST_GL_PLATFORM_ANY = G_MAXUINT32
} GstGLPlatform; } GstGLPlatform;
GST_EXPORT GST_GL_API
gchar * gst_gl_api_to_string (GstGLAPI api); gchar * gst_gl_api_to_string (GstGLAPI api);
GST_EXPORT GST_GL_API
GstGLAPI gst_gl_api_from_string (const gchar * api_s); GstGLAPI gst_gl_api_from_string (const gchar * api_s);
GST_EXPORT GST_GL_API
gchar * gst_gl_platform_to_string (GstGLPlatform platform); gchar * gst_gl_platform_to_string (GstGLPlatform platform);
GST_EXPORT GST_GL_API
GstGLPlatform gst_gl_platform_from_string (const gchar * platform_s); GstGLPlatform gst_gl_platform_from_string (const gchar * platform_s);
G_END_DECLS G_END_DECLS

View file

@ -29,7 +29,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_base_filter_get_type(void); GType gst_gl_base_filter_get_type(void);
#define GST_TYPE_GL_BASE_FILTER (gst_gl_base_filter_get_type()) #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)) #define GST_GL_BASE_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_GL_BASE_FILTER,GstGLBaseFilter))

View file

@ -36,11 +36,11 @@ G_BEGIN_DECLS
* from the #GstGLBaseMemoryError enumeration * from the #GstGLBaseMemoryError enumeration
*/ */
#define GST_TYPE_GL_BASE_MEMORY (gst_gl_base_memory_get_type()) #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); GType gst_gl_base_memory_get_type(void);
#define GST_TYPE_GL_BASE_MEMORY_ALLOCATOR (gst_gl_base_memory_allocator_get_type()) #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); 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)) #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) #define GST_GL_BASE_MEMORY_CAST(mem) ((GstGLBaseMemory *)mem)
GST_EXPORT GST_GL_API
GQuark gst_gl_base_memory_error_quark (void); GQuark gst_gl_base_memory_error_quark (void);
#define GST_GL_BASE_MEMORY_ERROR (gst_gl_base_memory_error_quark ()) #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); typedef void (*GstGLAllocationParamsFreeFunc) (gpointer params);
#define GST_TYPE_GL_ALLOCATION_PARAMS (gst_gl_allocation_params_get_type()) #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); GType gst_gl_allocation_params_get_type (void);
/** /**
@ -219,7 +219,7 @@ struct _GstGLAllocationParams
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
gboolean gst_gl_allocation_params_init (GstGLAllocationParams * params, gboolean gst_gl_allocation_params_init (GstGLAllocationParams * params,
gsize struct_size, gsize struct_size,
guint alloc_flags, guint alloc_flags,
@ -234,18 +234,18 @@ gboolean gst_gl_allocation_params_init (GstGLAllocationPara
GDestroyNotify notify); GDestroyNotify notify);
/* free with gst_gl_allocation_params_free */ /* free with gst_gl_allocation_params_free */
GST_EXPORT GST_GL_API
GstGLAllocationParams * gst_gl_allocation_params_copy (GstGLAllocationParams * src); GstGLAllocationParams * gst_gl_allocation_params_copy (GstGLAllocationParams * src);
GST_EXPORT GST_GL_API
void gst_gl_allocation_params_free (GstGLAllocationParams * params); void gst_gl_allocation_params_free (GstGLAllocationParams * params);
/* subclass usage */ /* subclass usage */
GST_EXPORT GST_GL_API
void gst_gl_allocation_params_free_data (GstGLAllocationParams * params); void gst_gl_allocation_params_free_data (GstGLAllocationParams * params);
/* subclass usage */ /* subclass usage */
GST_EXPORT GST_GL_API
void gst_gl_allocation_params_copy_data (GstGLAllocationParams * src, void gst_gl_allocation_params_copy_data (GstGLAllocationParams * src,
GstGLAllocationParams * dest); GstGLAllocationParams * dest);
@ -387,13 +387,13 @@ struct _GstGLBaseMemoryAllocatorClass
*/ */
#define GST_GL_BASE_MEMORY_ALLOCATOR_NAME "GLBaseMemory" #define GST_GL_BASE_MEMORY_ALLOCATOR_NAME "GLBaseMemory"
GST_EXPORT GST_GL_API
void gst_gl_base_memory_init_once (void); void gst_gl_base_memory_init_once (void);
GST_EXPORT GST_GL_API
gboolean gst_is_gl_base_memory (GstMemory * mem); gboolean gst_is_gl_base_memory (GstMemory * mem);
GST_EXPORT GST_GL_API
void gst_gl_base_memory_init (GstGLBaseMemory * mem, void gst_gl_base_memory_init (GstGLBaseMemory * mem,
GstAllocator * allocator, GstAllocator * allocator,
GstMemory * parent, GstMemory * parent,
@ -403,16 +403,16 @@ void gst_gl_base_memory_init (GstGLBaseMemory * mem,
gpointer user_data, gpointer user_data,
GDestroyNotify notify); GDestroyNotify notify);
GST_EXPORT GST_GL_API
gboolean gst_gl_base_memory_alloc_data (GstGLBaseMemory * gl_mem); gboolean gst_gl_base_memory_alloc_data (GstGLBaseMemory * gl_mem);
GST_EXPORT GST_GL_API
gboolean gst_gl_base_memory_memcpy (GstGLBaseMemory * src, gboolean gst_gl_base_memory_memcpy (GstGLBaseMemory * src,
GstGLBaseMemory * dest, GstGLBaseMemory * dest,
gssize offset, gssize offset,
gssize size); gssize size);
GST_EXPORT GST_GL_API
GstGLBaseMemory * gst_gl_base_memory_alloc (GstGLBaseMemoryAllocator * allocator, GstGLBaseMemory * gst_gl_base_memory_alloc (GstGLBaseMemoryAllocator * allocator,
GstGLAllocationParams * params); GstGLAllocationParams * params);

View file

@ -26,7 +26,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
#define GST_TYPE_GL_BUFFER_ALLOCATOR (gst_gl_buffer_allocator_get_type()) #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); 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)) #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; typedef struct _GstGLBufferAllocationParams GstGLBufferAllocationParams;
#define GST_TYPE_GL_BUFFER_ALLOCATION_PARAMS (gst_gl_buffer_allocation_params_get_type()) #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); GType gst_gl_buffer_allocation_params_get_type (void);
/** /**
@ -84,7 +84,7 @@ struct _GstGLBufferAllocationParams
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLBufferAllocationParams * gst_gl_buffer_allocation_params_new (GstGLContext * context, GstGLBufferAllocationParams * gst_gl_buffer_allocation_params_new (GstGLContext * context,
gsize alloc_size, gsize alloc_size,
GstAllocationParams * alloc_params, GstAllocationParams * alloc_params,
@ -131,9 +131,9 @@ struct _GstGLBufferAllocatorClass
*/ */
#define GST_GL_BUFFER_ALLOCATOR_NAME "GLBuffer" #define GST_GL_BUFFER_ALLOCATOR_NAME "GLBuffer"
GST_EXPORT GST_GL_API
void gst_gl_buffer_init_once (void); void gst_gl_buffer_init_once (void);
GST_EXPORT GST_GL_API
gboolean gst_is_gl_buffer (GstMemory * mem); gboolean gst_is_gl_buffer (GstMemory * mem);
G_END_DECLS G_END_DECLS

View file

@ -29,7 +29,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
/* buffer pool functions */ /* buffer pool functions */
GST_EXPORT GST_GL_API
GType gst_gl_buffer_pool_get_type (void); GType gst_gl_buffer_pool_get_type (void);
#define GST_TYPE_GL_BUFFER_POOL (gst_gl_buffer_pool_get_type()) #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)) #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]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstBufferPool *gst_gl_buffer_pool_new (GstGLContext * context); GstBufferPool *gst_gl_buffer_pool_new (GstGLContext * context);
GST_EXPORT GST_GL_API
GstGLAllocationParams * gst_buffer_pool_config_get_gl_allocation_params (GstStructure * config); 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, void gst_buffer_pool_config_set_gl_allocation_params (GstStructure * config,
GstGLAllocationParams * params); GstGLAllocationParams * params);

View file

@ -28,7 +28,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_color_convert_get_type (void); GType gst_gl_color_convert_get_type (void);
#define GST_TYPE_GL_COLOR_CONVERT (gst_gl_color_convert_get_type()) #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)) #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 ", " \ "framerate = " GST_VIDEO_FPS_RANGE ", " \
"texture-target = (string) { 2D, rectangle, external-oes }" "texture-target = (string) { 2D, rectangle, external-oes }"
GST_EXPORT GST_GL_API
GstGLColorConvert * gst_gl_color_convert_new (GstGLContext * context); GstGLColorConvert * gst_gl_color_convert_new (GstGLContext * context);
GST_EXPORT GST_GL_API
GstCaps * gst_gl_color_convert_transform_caps (GstGLContext * context, GstCaps * gst_gl_color_convert_transform_caps (GstGLContext * context,
GstPadDirection direction, GstPadDirection direction,
GstCaps * caps, GstCaps * caps,
GstCaps * filter); GstCaps * filter);
GST_EXPORT GST_GL_API
GstCaps * gst_gl_color_convert_fixate_caps (GstGLContext * context, GstCaps * gst_gl_color_convert_fixate_caps (GstGLContext * context,
GstPadDirection direction, GstPadDirection direction,
GstCaps * caps, GstCaps * caps,
GstCaps * other); GstCaps * other);
GST_EXPORT GST_GL_API
gboolean gst_gl_color_convert_set_caps (GstGLColorConvert * convert, gboolean gst_gl_color_convert_set_caps (GstGLColorConvert * convert,
GstCaps * in_caps, GstCaps * in_caps,
GstCaps * out_caps); GstCaps * out_caps);
GST_EXPORT GST_GL_API
gboolean gst_gl_color_convert_decide_allocation (GstGLColorConvert * convert, gboolean gst_gl_color_convert_decide_allocation (GstGLColorConvert * convert,
GstQuery * query); GstQuery * query);
GST_EXPORT GST_GL_API
GstBuffer * gst_gl_color_convert_perform (GstGLColorConvert * convert, GstBuffer * inbuf); GstBuffer * gst_gl_color_convert_perform (GstGLColorConvert * convert, GstBuffer * inbuf);
G_END_DECLS G_END_DECLS

View file

@ -27,7 +27,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_context_get_type (void); GType gst_gl_context_get_type (void);
#define GST_TYPE_GL_CONTEXT (gst_gl_context_get_type()) #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_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)) #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); GQuark gst_gl_context_error_quark (void);
/** /**
@ -140,75 +140,75 @@ struct _GstGLContextClass {
/* methods */ /* methods */
GST_EXPORT GST_GL_API
GstGLContext * gst_gl_context_new (GstGLDisplay *display); GstGLContext * gst_gl_context_new (GstGLDisplay *display);
GST_EXPORT GST_GL_API
GstGLContext * gst_gl_context_new_wrapped (GstGLDisplay *display, GstGLContext * gst_gl_context_new_wrapped (GstGLDisplay *display,
guintptr handle, guintptr handle,
GstGLPlatform context_type, GstGLPlatform context_type,
GstGLAPI available_apis); GstGLAPI available_apis);
GST_EXPORT GST_GL_API
gboolean gst_gl_context_activate (GstGLContext *context, gboolean activate); gboolean gst_gl_context_activate (GstGLContext *context, gboolean activate);
GST_EXPORT GST_GL_API
GThread * gst_gl_context_get_thread (GstGLContext *context); GThread * gst_gl_context_get_thread (GstGLContext *context);
GST_EXPORT GST_GL_API
GstGLContext * gst_gl_context_get_current (void); GstGLContext * gst_gl_context_get_current (void);
GST_EXPORT GST_GL_API
GstGLDisplay * gst_gl_context_get_display (GstGLContext *context); 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); 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); GstGLPlatform gst_gl_context_get_gl_platform (GstGLContext *context);
GST_EXPORT GST_GL_API
GstGLAPI gst_gl_context_get_gl_api (GstGLContext *context); GstGLAPI gst_gl_context_get_gl_api (GstGLContext *context);
GST_EXPORT GST_GL_API
guintptr gst_gl_context_get_gl_context (GstGLContext *context); 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); gboolean gst_gl_context_can_share (GstGLContext * context, GstGLContext *other_context);
GST_EXPORT GST_GL_API
void gst_gl_context_swap_buffers (GstGLContext * context); 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); gboolean gst_gl_context_create (GstGLContext *context, GstGLContext *other_context, GError ** error);
GST_EXPORT GST_GL_API
void gst_gl_context_destroy (GstGLContext *context); 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); 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); 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); gboolean gst_gl_context_set_window (GstGLContext *context, GstGLWindow *window);
GST_EXPORT GST_GL_API
GstGLWindow * gst_gl_context_get_window (GstGLContext *context); 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); 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); 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); 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); 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); 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); 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); gboolean gst_gl_context_is_shared (GstGLContext * context);
GST_EXPORT GST_GL_API
void gst_gl_context_set_shared_with (GstGLContext * context, GstGLContext * share); 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); gboolean gst_gl_context_fill_info (GstGLContext * context, GError ** error);
/* FIXME: remove */ /* FIXME: remove */
GST_EXPORT GST_GL_API
void gst_gl_context_thread_add (GstGLContext * context, void gst_gl_context_thread_add (GstGLContext * context,
GstGLContextThreadFunc func, gpointer data); GstGLContextThreadFunc func, gpointer data);

View file

@ -55,17 +55,17 @@ struct _GstGLAsyncDebug
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLAsyncDebug * gst_gl_async_debug_new (void); GstGLAsyncDebug * gst_gl_async_debug_new (void);
GST_EXPORT GST_GL_API
void gst_gl_async_debug_free (GstGLAsyncDebug * ad); void gst_gl_async_debug_free (GstGLAsyncDebug * ad);
GST_EXPORT GST_GL_API
void gst_gl_async_debug_init (GstGLAsyncDebug * ad); void gst_gl_async_debug_init (GstGLAsyncDebug * ad);
GST_EXPORT GST_GL_API
void gst_gl_async_debug_unset (GstGLAsyncDebug * ad); void gst_gl_async_debug_unset (GstGLAsyncDebug * ad);
GST_EXPORT GST_GL_API
void gst_gl_async_debug_freeze (GstGLAsyncDebug * ad); void gst_gl_async_debug_freeze (GstGLAsyncDebug * ad);
GST_EXPORT GST_GL_API
void gst_gl_async_debug_thaw (GstGLAsyncDebug * ad); 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) #if !defined(GST_DISABLE_GST_DEBUG)
GST_EXPORT GST_GL_API
void gst_gl_insert_debug_marker (GstGLContext * context, void gst_gl_insert_debug_marker (GstGLContext * context,
const gchar * format, ...) G_GNUC_PRINTF (2, 3); const gchar * format, ...) G_GNUC_PRINTF (2, 3);
GST_EXPORT GST_GL_API
void gst_gl_async_debug_output_log_msg (GstGLAsyncDebug * ad); 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, void gst_gl_async_debug_store_log_msg (GstGLAsyncDebug * ad,
GstDebugCategory * cat, GstDebugCategory * cat,
GstDebugLevel level, GstDebugLevel level,
@ -133,7 +133,7 @@ void gst_gl_async_debug_store_log_msg (GstGLAsyncDebug * ad,
gint line, gint line,
GObject * object, GObject * object,
const gchar * format, ...) G_GNUC_PRINTF (8, 9); const gchar * format, ...) G_GNUC_PRINTF (8, 9);
GST_EXPORT GST_GL_API
void gst_gl_async_debug_store_log_msg_valist (GstGLAsyncDebug * ad, void gst_gl_async_debug_store_log_msg_valist (GstGLAsyncDebug * ad,
GstDebugCategory * cat, GstDebugCategory * cat,
GstDebugLevel level, GstDebugLevel level,

View file

@ -28,7 +28,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_display_get_type (void); GType gst_gl_display_get_type (void);
#define GST_TYPE_GL_DISPLAY (gst_gl_display_get_type()) #define GST_TYPE_GL_DISPLAY (gst_gl_display_get_type())
@ -100,22 +100,22 @@ struct _GstGLDisplayClass
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLDisplay *gst_gl_display_new (void); GstGLDisplay *gst_gl_display_new (void);
#define gst_gl_display_lock(display) GST_OBJECT_LOCK (display) #define gst_gl_display_lock(display) GST_OBJECT_LOCK (display)
#define gst_gl_display_unlock(display) GST_OBJECT_UNLOCK (display) #define gst_gl_display_unlock(display) GST_OBJECT_UNLOCK (display)
GST_EXPORT GST_GL_API
guintptr gst_gl_display_get_handle (GstGLDisplay * display); guintptr gst_gl_display_get_handle (GstGLDisplay * display);
GST_EXPORT GST_GL_API
GstGLDisplayType gst_gl_display_get_handle_type (GstGLDisplay * display); GstGLDisplayType gst_gl_display_get_handle_type (GstGLDisplay * display);
GST_EXPORT GST_GL_API
void gst_gl_display_filter_gl_api (GstGLDisplay * display, void gst_gl_display_filter_gl_api (GstGLDisplay * display,
GstGLAPI gl_api); GstGLAPI gl_api);
GST_EXPORT GST_GL_API
GstGLAPI gst_gl_display_get_gl_api (GstGLDisplay * display); GstGLAPI gst_gl_display_get_gl_api (GstGLDisplay * display);
GST_EXPORT GST_GL_API
GstGLAPI gst_gl_display_get_gl_api_unlocked (GstGLDisplay * display); 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 * The name used in #GstContext queries for requesting a #GstGLDisplay
*/ */
#define GST_GL_DISPLAY_CONTEXT_TYPE "gst.gl.GLDisplay" #define GST_GL_DISPLAY_CONTEXT_TYPE "gst.gl.GLDisplay"
GST_EXPORT GST_GL_API
void gst_context_set_gl_display (GstContext * context, GstGLDisplay * display); 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); gboolean gst_context_get_gl_display (GstContext * context, GstGLDisplay ** display);
GST_EXPORT GST_GL_API
gboolean gst_gl_display_create_context (GstGLDisplay * display, gboolean gst_gl_display_create_context (GstGLDisplay * display,
GstGLContext * other_context, GstGLContext ** p_context, GError **error); GstGLContext * other_context, GstGLContext ** p_context, GError **error);
GST_EXPORT GST_GL_API
GstGLContext * gst_gl_display_get_gl_context_for_thread (GstGLDisplay * display, GstGLContext * gst_gl_display_get_gl_context_for_thread (GstGLDisplay * display,
GThread * thread); GThread * thread);
GST_EXPORT GST_GL_API
gboolean gst_gl_display_add_context (GstGLDisplay * display, gboolean gst_gl_display_add_context (GstGLDisplay * display,
GstGLContext * context); GstGLContext * context);
GST_EXPORT GST_GL_API
GstGLWindow * gst_gl_display_create_window (GstGLDisplay * display); GstGLWindow * gst_gl_display_create_window (GstGLDisplay * display);
GST_EXPORT GST_GL_API
gboolean gst_gl_display_remove_window (GstGLDisplay * display, GstGLWindow * window); 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); GstGLWindow * gst_gl_display_find_window (GstGLDisplay * display, gpointer data, GCompareFunc compare_func);
G_END_DECLS G_END_DECLS

View file

@ -54,7 +54,7 @@ G_BEGIN_DECLS
((driver_major) > (target_major) || \ ((driver_major) > (target_major) || \
((driver_major) == (target_major) && (driver_minor) >= (target_minor))) ((driver_major) == (target_major) && (driver_minor) >= (target_minor)))
GST_EXPORT GST_GL_API
gboolean gst_gl_check_extension (const char *name, const gchar * ext); gboolean gst_gl_check_extension (const char *name, const gchar * ext);
G_END_DECLS G_END_DECLS

View file

@ -30,7 +30,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_filter_get_type(void); GType gst_gl_filter_get_type(void);
#define GST_TYPE_GL_FILTER (gst_gl_filter_get_type()) #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)) #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]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
void gst_gl_filter_add_rgba_pad_templates (GstGLFilterClass *klass); 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, gboolean gst_gl_filter_filter_texture (GstGLFilter * filter, GstBuffer * inbuf,
GstBuffer * outbuf); GstBuffer * outbuf);
GST_EXPORT GST_GL_API
gboolean gst_gl_filter_render_to_target (GstGLFilter *filter, gboolean gst_gl_filter_render_to_target (GstGLFilter *filter,
GstGLMemory * input, GstGLMemory * input,
GstGLMemory * output, GstGLMemory * output,
GstGLFilterRenderFunc func, GstGLFilterRenderFunc func,
gpointer data); gpointer data);
GST_EXPORT GST_GL_API
void gst_gl_filter_draw_fullscreen_quad (GstGLFilter *filter); 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, void gst_gl_filter_render_to_target_with_shader (GstGLFilter * filter,
GstGLMemory * input, GstGLMemory * input,
GstGLMemory * output, GstGLMemory * output,

View file

@ -120,27 +120,27 @@ typedef enum
GST_GL_DEPTH24_STENCIL8 = 0x88F0, GST_GL_DEPTH24_STENCIL8 = 0x88F0,
} GstGLFormat; } GstGLFormat;
GST_EXPORT GST_GL_API
guint gst_gl_format_type_n_bytes (guint format, guint gst_gl_format_type_n_bytes (guint format,
guint type); guint type);
GST_EXPORT GST_GL_API
GstGLFormat gst_gl_format_from_video_info (GstGLContext * context, GstGLFormat gst_gl_format_from_video_info (GstGLContext * context,
GstVideoInfo * vinfo, GstVideoInfo * vinfo,
guint plane); guint plane);
GST_EXPORT GST_GL_API
guint gst_gl_sized_gl_format_from_gl_format_type (GstGLContext * context, guint gst_gl_sized_gl_format_from_gl_format_type (GstGLContext * context,
guint format, guint format,
guint type); guint type);
GST_EXPORT GST_GL_API
GstGLTextureTarget gst_gl_texture_target_from_string (const gchar * str); 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); const gchar * gst_gl_texture_target_to_string (GstGLTextureTarget target);
GST_EXPORT GST_GL_API
guint gst_gl_texture_target_to_gl (GstGLTextureTarget target); guint gst_gl_texture_target_to_gl (GstGLTextureTarget target);
GST_EXPORT GST_GL_API
GstGLTextureTarget gst_gl_texture_target_from_gl (guint target); 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); const gchar * gst_gl_texture_target_to_buffer_pool_option (GstGLTextureTarget target);
G_END_DECLS G_END_DECLS

View file

@ -25,7 +25,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_framebuffer_get_type (void); GType gst_gl_framebuffer_get_type (void);
#define GST_TYPE_GL_FRAMEBUFFER (gst_gl_framebuffer_get_type()) #define GST_TYPE_GL_FRAMEBUFFER (gst_gl_framebuffer_get_type())
@ -78,35 +78,35 @@ struct _GstGLFramebufferClass
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLFramebuffer * gst_gl_framebuffer_new (GstGLContext *context); GstGLFramebuffer * gst_gl_framebuffer_new (GstGLContext *context);
GST_EXPORT GST_GL_API
GstGLFramebuffer * gst_gl_framebuffer_new_with_default_depth (GstGLContext *context, GstGLFramebuffer * gst_gl_framebuffer_new_with_default_depth (GstGLContext *context,
guint width, guint width,
guint height); guint height);
GST_EXPORT GST_GL_API
guint gst_gl_framebuffer_get_id (GstGLFramebuffer * fb); guint gst_gl_framebuffer_get_id (GstGLFramebuffer * fb);
GST_EXPORT GST_GL_API
void gst_gl_framebuffer_attach (GstGLFramebuffer * fb, void gst_gl_framebuffer_attach (GstGLFramebuffer * fb,
guint attachment_point, guint attachment_point,
GstGLBaseMemory * mem); GstGLBaseMemory * mem);
GST_EXPORT GST_GL_API
void gst_gl_framebuffer_bind (GstGLFramebuffer * fb); void gst_gl_framebuffer_bind (GstGLFramebuffer * fb);
GST_EXPORT GST_GL_API
void gst_gl_context_clear_framebuffer (GstGLContext * context); void gst_gl_context_clear_framebuffer (GstGLContext * context);
GST_EXPORT GST_GL_API
void gst_gl_framebuffer_get_effective_dimensions (GstGLFramebuffer * fb, void gst_gl_framebuffer_get_effective_dimensions (GstGLFramebuffer * fb,
guint * width, guint * width,
guint * height); guint * height);
GST_EXPORT GST_GL_API
gboolean gst_gl_context_check_framebuffer_status (GstGLContext * context, gboolean gst_gl_context_check_framebuffer_status (GstGLContext * context,
guint fbo_target); guint fbo_target);
GST_EXPORT GST_GL_API
gboolean gst_gl_framebuffer_draw_to_texture (GstGLFramebuffer * fb, gboolean gst_gl_framebuffer_draw_to_texture (GstGLFramebuffer * fb,
GstGLMemory * mem, GstGLMemory * mem,
GstGLFramebufferFunc func, GstGLFramebufferFunc func,

View file

@ -27,7 +27,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
#define GST_TYPE_GL_MEMORY_ALLOCATOR (gst_gl_memory_allocator_get_type()) #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); 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)) #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()) #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); GType gst_gl_video_allocation_params_get_type (void);
typedef struct _GstGLVideoAllocationParams GstGLVideoAllocationParams; typedef struct _GstGLVideoAllocationParams GstGLVideoAllocationParams;
@ -126,7 +126,7 @@ struct _GstGLVideoAllocationParams
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
gboolean gst_gl_video_allocation_params_init_full (GstGLVideoAllocationParams * params, gboolean gst_gl_video_allocation_params_init_full (GstGLVideoAllocationParams * params,
gsize struct_size, gsize struct_size,
guint alloc_flags, guint alloc_flags,
@ -143,7 +143,7 @@ gboolean gst_gl_video_allocation_params_init_full (GstGLVideoAlloc
gpointer gl_handle, gpointer gl_handle,
gpointer user_data, gpointer user_data,
GDestroyNotify notify); GDestroyNotify notify);
GST_EXPORT GST_GL_API
GstGLVideoAllocationParams * gst_gl_video_allocation_params_new (GstGLContext * context, GstGLVideoAllocationParams * gst_gl_video_allocation_params_new (GstGLContext * context,
GstAllocationParams * alloc_params, GstAllocationParams * alloc_params,
GstVideoInfo * v_info, GstVideoInfo * v_info,
@ -151,7 +151,7 @@ GstGLVideoAllocationParams * gst_gl_video_allocation_params_new (GstGLContext *
GstVideoAlignment * valign, GstVideoAlignment * valign,
GstGLTextureTarget target, GstGLTextureTarget target,
GstGLFormat tex_format); GstGLFormat tex_format);
GST_EXPORT GST_GL_API
GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_data (GstGLContext * context, GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_data (GstGLContext * context,
GstAllocationParams * alloc_params, GstAllocationParams * alloc_params,
GstVideoInfo * v_info, GstVideoInfo * v_info,
@ -163,7 +163,7 @@ GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_data
gpointer user_data, gpointer user_data,
GDestroyNotify notify); GDestroyNotify notify);
GST_EXPORT GST_GL_API
GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_texture (GstGLContext * context, GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_texture (GstGLContext * context,
GstAllocationParams * alloc_params, GstAllocationParams * alloc_params,
GstVideoInfo * v_info, GstVideoInfo * v_info,
@ -175,7 +175,7 @@ GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_texture
gpointer user_data, gpointer user_data,
GDestroyNotify notify); GDestroyNotify notify);
GST_EXPORT GST_GL_API
GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_gl_handle (GstGLContext * context, GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_gl_handle (GstGLContext * context,
GstAllocationParams * alloc_params, GstAllocationParams * alloc_params,
GstVideoInfo * v_info, GstVideoInfo * v_info,
@ -188,10 +188,10 @@ GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_gl_handl
GDestroyNotify notify); GDestroyNotify notify);
/* subclass usage */ /* subclass usage */
GST_EXPORT GST_GL_API
void gst_gl_video_allocation_params_free_data (GstGLVideoAllocationParams * params); void gst_gl_video_allocation_params_free_data (GstGLVideoAllocationParams * params);
/* subclass usage */ /* subclass usage */
GST_EXPORT GST_GL_API
void gst_gl_video_allocation_params_copy_data (GstGLVideoAllocationParams * src_vid, void gst_gl_video_allocation_params_copy_data (GstGLVideoAllocationParams * src_vid,
GstGLVideoAllocationParams * dest_vid); GstGLVideoAllocationParams * dest_vid);
@ -237,12 +237,12 @@ struct _GstGLMemoryAllocatorClass
*/ */
#define GST_GL_MEMORY_ALLOCATOR_NAME "GLMemory" #define GST_GL_MEMORY_ALLOCATOR_NAME "GLMemory"
GST_EXPORT GST_GL_API
void gst_gl_memory_init_once (void); void gst_gl_memory_init_once (void);
GST_EXPORT GST_GL_API
gboolean gst_is_gl_memory (GstMemory * mem); gboolean gst_is_gl_memory (GstMemory * mem);
GST_EXPORT GST_GL_API
void gst_gl_memory_init (GstGLMemory * mem, void gst_gl_memory_init (GstGLMemory * mem,
GstAllocator * allocator, GstAllocator * allocator,
GstMemory * parent, GstMemory * parent,
@ -256,14 +256,14 @@ void gst_gl_memory_init (GstGLMemory * mem,
gpointer user_data, gpointer user_data,
GDestroyNotify notify); GDestroyNotify notify);
GST_EXPORT GST_GL_API
gboolean gst_gl_memory_copy_into (GstGLMemory *gl_mem, gboolean gst_gl_memory_copy_into (GstGLMemory *gl_mem,
guint tex_id, guint tex_id,
GstGLTextureTarget target, GstGLTextureTarget target,
GstGLFormat tex_format, GstGLFormat tex_format,
gint width, gint width,
gint height); gint height);
GST_EXPORT GST_GL_API
gboolean gst_gl_memory_copy_teximage (GstGLMemory * src, gboolean gst_gl_memory_copy_teximage (GstGLMemory * src,
guint tex_id, guint tex_id,
GstGLTextureTarget out_target, GstGLTextureTarget out_target,
@ -271,26 +271,26 @@ gboolean gst_gl_memory_copy_teximage (GstGLMemory * src,
gint out_width, gint out_width,
gint out_height); gint out_height);
GST_EXPORT GST_GL_API
gboolean gst_gl_memory_read_pixels (GstGLMemory * gl_mem, gboolean gst_gl_memory_read_pixels (GstGLMemory * gl_mem,
gpointer read_pointer); gpointer read_pointer);
GST_EXPORT GST_GL_API
void gst_gl_memory_texsubimage (GstGLMemory * gl_mem, void gst_gl_memory_texsubimage (GstGLMemory * gl_mem,
gpointer read_pointer); gpointer read_pointer);
/* accessors */ /* accessors */
GST_EXPORT GST_GL_API
gint gst_gl_memory_get_texture_width (GstGLMemory * gl_mem); 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); 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); 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); 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); guint gst_gl_memory_get_texture_id (GstGLMemory * gl_mem);
GST_EXPORT GST_GL_API
gboolean gst_gl_memory_setup_buffer (GstGLMemoryAllocator * allocator, gboolean gst_gl_memory_setup_buffer (GstGLMemoryAllocator * allocator,
GstBuffer * buffer, GstBuffer * buffer,
GstGLVideoAllocationParams * params, GstGLVideoAllocationParams * params,
@ -298,7 +298,7 @@ gboolean gst_gl_memory_setup_buffer (GstGLMemoryAllocato
gpointer *wrapped_data, gpointer *wrapped_data,
gsize n_wrapped_pointers); gsize n_wrapped_pointers);
GST_EXPORT GST_GL_API
GstGLMemoryAllocator * gst_gl_memory_allocator_get_default (GstGLContext *context); GstGLMemoryAllocator * gst_gl_memory_allocator_get_default (GstGLContext *context);
G_END_DECLS G_END_DECLS

View file

@ -27,7 +27,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
#define GST_TYPE_GL_MEMORY_PBO_ALLOCATOR (gst_gl_memory_pbo_allocator_get_type()) #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); 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)) #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" #define GST_GL_MEMORY_PBO_ALLOCATOR_NAME "GLMemoryPBO"
GST_EXPORT GST_GL_API
void gst_gl_memory_pbo_init_once (void); void gst_gl_memory_pbo_init_once (void);
GST_EXPORT GST_GL_API
gboolean gst_is_gl_memory_pbo (GstMemory * mem); gboolean gst_is_gl_memory_pbo (GstMemory * mem);
GST_EXPORT GST_GL_API
void gst_gl_memory_pbo_download_transfer (GstGLMemoryPBO * gl_mem); 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); 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, gboolean gst_gl_memory_pbo_copy_into_texture (GstGLMemoryPBO *gl_mem,
guint tex_id, guint tex_id,
GstGLTextureTarget target, GstGLTextureTarget target,

View file

@ -33,7 +33,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_overlay_compositor_get_type (void); GType gst_gl_overlay_compositor_get_type (void);
/** /**
@ -72,20 +72,20 @@ struct _GstGLOverlayCompositorClass
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLOverlayCompositor *gst_gl_overlay_compositor_new (GstGLContext * context); GstGLOverlayCompositor *gst_gl_overlay_compositor_new (GstGLContext * context);
GST_EXPORT GST_GL_API
void gst_gl_overlay_compositor_free_overlays (GstGLOverlayCompositor * compositor); void gst_gl_overlay_compositor_free_overlays (GstGLOverlayCompositor * compositor);
GST_EXPORT GST_GL_API
void gst_gl_overlay_compositor_upload_overlays (GstGLOverlayCompositor * compositor, void gst_gl_overlay_compositor_upload_overlays (GstGLOverlayCompositor * compositor,
GstBuffer * buf); GstBuffer * buf);
GST_EXPORT GST_GL_API
void gst_gl_overlay_compositor_draw_overlays (GstGLOverlayCompositor * compositor); void gst_gl_overlay_compositor_draw_overlays (GstGLOverlayCompositor * compositor);
GST_EXPORT GST_GL_API
GstCaps * gst_gl_overlay_compositor_add_caps(GstCaps * caps); GstCaps * gst_gl_overlay_compositor_add_caps(GstCaps * caps);
G_END_DECLS G_END_DECLS

View file

@ -59,25 +59,25 @@ struct _GstGLQuery
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
void gst_gl_query_init (GstGLQuery * query, void gst_gl_query_init (GstGLQuery * query,
GstGLContext * context, GstGLContext * context,
GstGLQueryType query_type); GstGLQueryType query_type);
GST_EXPORT GST_GL_API
void gst_gl_query_unset (GstGLQuery * query); void gst_gl_query_unset (GstGLQuery * query);
GST_EXPORT GST_GL_API
GstGLQuery * gst_gl_query_new (GstGLContext * context, GstGLQuery * gst_gl_query_new (GstGLContext * context,
GstGLQueryType query_type); GstGLQueryType query_type);
GST_EXPORT GST_GL_API
void gst_gl_query_free (GstGLQuery * query); void gst_gl_query_free (GstGLQuery * query);
GST_EXPORT GST_GL_API
void gst_gl_query_start (GstGLQuery * query); void gst_gl_query_start (GstGLQuery * query);
GST_EXPORT GST_GL_API
void gst_gl_query_end (GstGLQuery * query); void gst_gl_query_end (GstGLQuery * query);
GST_EXPORT GST_GL_API
void gst_gl_query_counter (GstGLQuery * query); void gst_gl_query_counter (GstGLQuery * query);
GST_EXPORT GST_GL_API
guint64 gst_gl_query_result (GstGLQuery * query); guint64 gst_gl_query_result (GstGLQuery * query);
#define gst_gl_query_start_log_valist(query,cat,level,object,format,varargs) \ #define gst_gl_query_start_log_valist(query,cat,level,object,format,varargs) \

View file

@ -26,7 +26,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
#define GST_TYPE_GL_RENDERBUFFER_ALLOCATOR (gst_gl_renderbuffer_allocator_get_type()) #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(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)) #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/gl/gstglbasememory.h> #include <gst/gl/gstglbasememory.h>
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) #define GST_TYPE_RENDERBUFFER_ALLOCATION_PARAMS (gst_gl_renderbuffer_allocation_params_get_type)
typedef struct typedef struct
@ -113,14 +113,14 @@ typedef struct
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
} GstGLRenderbufferAllocationParams; } GstGLRenderbufferAllocationParams;
GST_EXPORT GST_GL_API
GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_new (GstGLContext * context, GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_new (GstGLContext * context,
GstAllocationParams * alloc_params, GstAllocationParams * alloc_params,
GstGLFormat renderbuffer_format, GstGLFormat renderbuffer_format,
guint width, guint width,
guint height); guint height);
GST_EXPORT GST_GL_API
GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_new_wrapped (GstGLContext * context, GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_new_wrapped (GstGLContext * context,
GstAllocationParams * alloc_params, GstAllocationParams * alloc_params,
GstGLFormat renderbuffer_format, GstGLFormat renderbuffer_format,
@ -130,23 +130,23 @@ GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_ne
gpointer user_data, gpointer user_data,
GDestroyNotify notify); GDestroyNotify notify);
GST_EXPORT GST_GL_API
void gst_gl_renderbuffer_init_once (void); void gst_gl_renderbuffer_init_once (void);
GST_EXPORT GST_GL_API
gboolean gst_is_gl_renderbuffer (GstMemory * mem); gboolean gst_is_gl_renderbuffer (GstMemory * mem);
/* accessors */ /* accessors */
GST_EXPORT GST_GL_API
gint gst_gl_renderbuffer_get_width (GstGLRenderbuffer * gl_mem); gint gst_gl_renderbuffer_get_width (GstGLRenderbuffer * gl_mem);
GST_EXPORT GST_GL_API
gint gst_gl_renderbuffer_get_height (GstGLRenderbuffer * gl_mem); gint gst_gl_renderbuffer_get_height (GstGLRenderbuffer * gl_mem);
GST_EXPORT GST_GL_API
GstGLFormat gst_gl_renderbuffer_get_format (GstGLRenderbuffer * gl_mem); GstGLFormat gst_gl_renderbuffer_get_format (GstGLRenderbuffer * gl_mem);
GST_EXPORT GST_GL_API
guint gst_gl_renderbuffer_get_id (GstGLRenderbuffer * gl_mem); guint gst_gl_renderbuffer_get_id (GstGLRenderbuffer * gl_mem);
G_END_DECLS G_END_DECLS

View file

@ -26,7 +26,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_shader_get_type (void); GType gst_gl_shader_get_type (void);
#define GST_TYPE_GL_SHADER (gst_gl_shader_get_type()) #define GST_TYPE_GL_SHADER (gst_gl_shader_get_type())
@ -53,102 +53,102 @@ struct _GstGLShaderClass {
GstObjectClass parent_class; GstObjectClass parent_class;
}; };
GST_EXPORT GST_GL_API
GstGLShader * gst_gl_shader_new (GstGLContext *context); GstGLShader * gst_gl_shader_new (GstGLContext *context);
GST_EXPORT GST_GL_API
GstGLShader * gst_gl_shader_new_with_stages (GstGLContext * context, GError ** error, ...); 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, ...); 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); GstGLShader * gst_gl_shader_new_default (GstGLContext * context, GError ** error);
GST_EXPORT GST_GL_API
gboolean gst_gl_shader_attach (GstGLShader * shader, GstGLSLStage * stage); gboolean gst_gl_shader_attach (GstGLShader * shader, GstGLSLStage * stage);
GST_EXPORT GST_GL_API
gboolean gst_gl_shader_attach_unlocked (GstGLShader * shader, GstGLSLStage * stage); gboolean gst_gl_shader_attach_unlocked (GstGLShader * shader, GstGLSLStage * stage);
GST_EXPORT GST_GL_API
void gst_gl_shader_detach (GstGLShader * shader, GstGLSLStage * stage); void gst_gl_shader_detach (GstGLShader * shader, GstGLSLStage * stage);
GST_EXPORT GST_GL_API
void gst_gl_shader_detach_unlocked (GstGLShader * shader, GstGLSLStage * stage); void gst_gl_shader_detach_unlocked (GstGLShader * shader, GstGLSLStage * stage);
GST_EXPORT GST_GL_API
gboolean gst_gl_shader_compile_attach_stage (GstGLShader * shader, gboolean gst_gl_shader_compile_attach_stage (GstGLShader * shader,
GstGLSLStage *stage, GstGLSLStage *stage,
GError ** error); GError ** error);
GST_EXPORT GST_GL_API
gboolean gst_gl_shader_link (GstGLShader * shader, GError ** error); gboolean gst_gl_shader_link (GstGLShader * shader, GError ** error);
GST_EXPORT GST_GL_API
gboolean gst_gl_shader_is_linked (GstGLShader *shader); gboolean gst_gl_shader_is_linked (GstGLShader *shader);
GST_EXPORT GST_GL_API
int gst_gl_shader_get_program_handle (GstGLShader * shader); int gst_gl_shader_get_program_handle (GstGLShader * shader);
GST_EXPORT GST_GL_API
void gst_gl_shader_release (GstGLShader *shader); void gst_gl_shader_release (GstGLShader *shader);
GST_EXPORT GST_GL_API
void gst_gl_shader_release_unlocked (GstGLShader * shader); void gst_gl_shader_release_unlocked (GstGLShader * shader);
GST_EXPORT GST_GL_API
void gst_gl_shader_use (GstGLShader *shader); void gst_gl_shader_use (GstGLShader *shader);
GST_EXPORT GST_GL_API
void gst_gl_context_clear_shader (GstGLContext *context); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); void gst_gl_shader_bind_frag_data_location (GstGLShader * shader, guint index, const gchar * name);
G_END_DECLS G_END_DECLS

View file

@ -22,19 +22,20 @@
#define __GST_GL_SHADER_STRINGS_H__ #define __GST_GL_SHADER_STRINGS_H__
#include <gst/gst.h> #include <gst/gst.h>
#include <gst/gl/gl-prelude.h>
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
const gchar *gst_gl_shader_string_vertex_default; const gchar *gst_gl_shader_string_vertex_default;
GST_EXPORT GST_GL_API
const gchar *gst_gl_shader_string_fragment_default; const gchar *gst_gl_shader_string_fragment_default;
GST_EXPORT GST_GL_API
const gchar *gst_gl_shader_string_vertex_mat4_texture_transform; 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; 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; const gchar *gst_gl_shader_string_fragment_external_oes_default;
G_END_DECLS G_END_DECLS

View file

@ -25,7 +25,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GQuark gst_glsl_error_quark (void); GQuark gst_glsl_error_quark (void);
/** /**
@ -122,32 +122,32 @@ typedef enum
GST_GLSL_PROFILE_ANY = -1, GST_GLSL_PROFILE_ANY = -1,
} GstGLSLProfile; } GstGLSLProfile;
GST_EXPORT GST_GL_API
GstGLSLVersion gst_glsl_version_from_string (const gchar * string); GstGLSLVersion gst_glsl_version_from_string (const gchar * string);
GST_EXPORT GST_GL_API
const gchar * gst_glsl_version_to_string (GstGLSLVersion version); const gchar * gst_glsl_version_to_string (GstGLSLVersion version);
GST_EXPORT GST_GL_API
GstGLSLProfile gst_glsl_profile_from_string (const gchar * string); GstGLSLProfile gst_glsl_profile_from_string (const gchar * string);
GST_EXPORT GST_GL_API
const gchar * gst_glsl_profile_to_string (GstGLSLProfile profile); const gchar * gst_glsl_profile_to_string (GstGLSLProfile profile);
GST_EXPORT GST_GL_API
gchar * gst_glsl_version_profile_to_string (GstGLSLVersion version, gchar * gst_glsl_version_profile_to_string (GstGLSLVersion version,
GstGLSLProfile profile); GstGLSLProfile profile);
GST_EXPORT GST_GL_API
gboolean gst_glsl_version_profile_from_string (const gchar * string, gboolean gst_glsl_version_profile_from_string (const gchar * string,
GstGLSLVersion * version_ret, GstGLSLVersion * version_ret,
GstGLSLProfile * profile_ret); GstGLSLProfile * profile_ret);
GST_EXPORT GST_GL_API
gboolean gst_glsl_string_get_version_profile (const gchar *s, gboolean gst_glsl_string_get_version_profile (const gchar *s,
GstGLSLVersion * version, GstGLSLVersion * version,
GstGLSLProfile * profile); GstGLSLProfile * profile);
GST_EXPORT GST_GL_API
GstGLSLVersion gst_gl_version_to_glsl_version (GstGLAPI gl_api, gint maj, gint min); 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, gboolean gst_gl_context_supports_glsl_profile_version (GstGLContext * context,
GstGLSLVersion version, GstGLSLVersion version,
GstGLSLProfile profile); GstGLSLProfile profile);

View file

@ -62,17 +62,17 @@ struct _GstGLSLStageClass
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GType gst_glsl_stage_get_type (void); GType gst_glsl_stage_get_type (void);
GST_EXPORT GST_GL_API
GstGLSLStage * gst_glsl_stage_new (GstGLContext * context, guint type); GstGLSLStage * gst_glsl_stage_new (GstGLContext * context, guint type);
GST_EXPORT GST_GL_API
GstGLSLStage * gst_glsl_stage_new_with_string (GstGLContext * context, GstGLSLStage * gst_glsl_stage_new_with_string (GstGLContext * context,
guint type, guint type,
GstGLSLVersion version, GstGLSLVersion version,
GstGLSLProfile profile, GstGLSLProfile profile,
const gchar * str); const gchar * str);
GST_EXPORT GST_GL_API
GstGLSLStage * gst_glsl_stage_new_with_strings (GstGLContext * context, GstGLSLStage * gst_glsl_stage_new_with_strings (GstGLContext * context,
guint type, guint type,
GstGLSLVersion version, GstGLSLVersion version,
@ -80,26 +80,26 @@ GstGLSLStage * gst_glsl_stage_new_with_strings (GstGLContext * context,
gint n_strings, gint n_strings,
const gchar ** str); const gchar ** str);
GST_EXPORT GST_GL_API
GstGLSLStage * gst_glsl_stage_new_default_fragment (GstGLContext * context); GstGLSLStage * gst_glsl_stage_new_default_fragment (GstGLContext * context);
GST_EXPORT GST_GL_API
GstGLSLStage * gst_glsl_stage_new_default_vertex (GstGLContext * context); GstGLSLStage * gst_glsl_stage_new_default_vertex (GstGLContext * context);
GST_EXPORT GST_GL_API
guint gst_glsl_stage_get_handle (GstGLSLStage * stage); guint gst_glsl_stage_get_handle (GstGLSLStage * stage);
GST_EXPORT GST_GL_API
GstGLSLProfile gst_glsl_stage_get_profile (GstGLSLStage * stage); GstGLSLProfile gst_glsl_stage_get_profile (GstGLSLStage * stage);
GST_EXPORT GST_GL_API
GstGLSLVersion gst_glsl_stage_get_version (GstGLSLStage * stage); GstGLSLVersion gst_glsl_stage_get_version (GstGLSLStage * stage);
GST_EXPORT GST_GL_API
guint gst_glsl_stage_get_shader_type (GstGLSLStage * stage); guint gst_glsl_stage_get_shader_type (GstGLSLStage * stage);
GST_EXPORT GST_GL_API
gboolean gst_glsl_stage_set_strings (GstGLSLStage * stage, gboolean gst_glsl_stage_set_strings (GstGLSLStage * stage,
GstGLSLVersion version, GstGLSLVersion version,
GstGLSLProfile profile, GstGLSLProfile profile,
gint n_strings, gint n_strings,
const gchar ** str); const gchar ** str);
GST_EXPORT GST_GL_API
gboolean gst_glsl_stage_compile (GstGLSLStage * stage, gboolean gst_glsl_stage_compile (GstGLSLStage * stage,
GError ** error); GError ** error);

View file

@ -71,23 +71,23 @@ struct _GstGLSyncMeta
void (*free_gl) (GstGLSyncMeta * sync, GstGLContext * context); void (*free_gl) (GstGLSyncMeta * sync, GstGLContext * context);
}; };
GST_EXPORT GST_GL_API
GType gst_gl_sync_meta_api_get_type (void); GType gst_gl_sync_meta_api_get_type (void);
GST_EXPORT GST_GL_API
const GstMetaInfo * gst_gl_sync_meta_get_info (void); 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)) #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); 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, GstGLSyncMeta * gst_buffer_add_gl_sync_meta_full (GstGLContext * context, GstBuffer * buffer,
gpointer data); gpointer data);
GST_EXPORT GST_GL_API
void gst_gl_sync_meta_set_sync_point (GstGLSyncMeta * sync_meta, GstGLContext * context); 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); 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); void gst_gl_sync_meta_wait_cpu (GstGLSyncMeta * sync_meta, GstGLContext * context);
G_END_DECLS G_END_DECLS

View file

@ -27,7 +27,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_upload_get_type (void); GType gst_gl_upload_get_type (void);
#define GST_TYPE_GL_UPLOAD (gst_gl_upload_get_type()) #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)) #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]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstCaps * gst_gl_upload_get_input_template_caps (void); GstCaps * gst_gl_upload_get_input_template_caps (void);
GST_EXPORT GST_GL_API
GstGLUpload * gst_gl_upload_new (GstGLContext * context); GstGLUpload * gst_gl_upload_new (GstGLContext * context);
GST_EXPORT GST_GL_API
void gst_gl_upload_set_context (GstGLUpload * upload, void gst_gl_upload_set_context (GstGLUpload * upload,
GstGLContext * context); GstGLContext * context);
GST_EXPORT GST_GL_API
GstCaps * gst_gl_upload_transform_caps (GstGLUpload * upload, GstCaps * gst_gl_upload_transform_caps (GstGLUpload * upload,
GstGLContext * context, GstGLContext * context,
GstPadDirection direction, GstPadDirection direction,
GstCaps * caps, GstCaps * caps,
GstCaps * filter); GstCaps * filter);
GST_EXPORT GST_GL_API
gboolean gst_gl_upload_set_caps (GstGLUpload * upload, gboolean gst_gl_upload_set_caps (GstGLUpload * upload,
GstCaps * in_caps, GstCaps * in_caps,
GstCaps * out_caps); GstCaps * out_caps);
GST_EXPORT GST_GL_API
void gst_gl_upload_get_caps (GstGLUpload * upload, void gst_gl_upload_get_caps (GstGLUpload * upload,
GstCaps ** in_caps, GstCaps ** in_caps,
GstCaps ** out_caps); GstCaps ** out_caps);
GST_EXPORT GST_GL_API
void gst_gl_upload_propose_allocation (GstGLUpload * upload, void gst_gl_upload_propose_allocation (GstGLUpload * upload,
GstQuery * decide_query, GstQuery * decide_query,
GstQuery * query); GstQuery * query);
GST_EXPORT GST_GL_API
GstGLUploadReturn gst_gl_upload_perform_with_buffer (GstGLUpload * upload, GstGLUploadReturn gst_gl_upload_perform_with_buffer (GstGLUpload * upload,
GstBuffer * buffer, GstBuffer * buffer,
GstBuffer ** outbuf_ptr); GstBuffer ** outbuf_ptr);

View file

@ -28,35 +28,35 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
gboolean gst_gl_ensure_element_data (gpointer element, gboolean gst_gl_ensure_element_data (gpointer element,
GstGLDisplay **display_ptr, GstGLContext ** other_context_ptr); GstGLDisplay **display_ptr, GstGLContext ** other_context_ptr);
GST_EXPORT GST_GL_API
gboolean gst_gl_handle_set_context (GstElement * element, GstContext * context, gboolean gst_gl_handle_set_context (GstElement * element, GstContext * context,
GstGLDisplay ** display, GstGLContext ** other_context); GstGLDisplay ** display, GstGLContext ** other_context);
GST_EXPORT GST_GL_API
gboolean gst_gl_handle_context_query (GstElement * element, GstQuery * query, gboolean gst_gl_handle_context_query (GstElement * element, GstQuery * query,
GstGLDisplay * display, GstGLContext * context, GstGLContext * other_context); GstGLDisplay * display, GstGLContext * context, GstGLContext * other_context);
GST_EXPORT GST_GL_API
gboolean gst_gl_query_local_gl_context (GstElement * element, GstPadDirection direction, gboolean gst_gl_query_local_gl_context (GstElement * element, GstPadDirection direction,
GstGLContext ** context_ptr); GstGLContext ** context_ptr);
GST_EXPORT GST_GL_API
void gst_gl_element_propagate_display_context (GstElement * element, GstGLDisplay * display); 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, gsize gst_gl_get_plane_data_size (GstVideoInfo * info, GstVideoAlignment * align,
guint plane); guint plane);
GST_EXPORT GST_GL_API
gsize gst_gl_get_plane_start (GstVideoInfo * info, GstVideoAlignment * valign, gsize gst_gl_get_plane_start (GstVideoInfo * info, GstVideoAlignment * valign,
guint plane); guint plane);
GST_EXPORT GST_GL_API
gboolean gst_gl_value_set_texture_target_from_mask (GValue * value, gboolean gst_gl_value_set_texture_target_from_mask (GValue * value,
GstGLTextureTarget target_mask); GstGLTextureTarget target_mask);
GST_EXPORT GST_GL_API
gboolean gst_gl_value_set_texture_target (GValue * value, GstGLTextureTarget target); 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); GstGLTextureTarget gst_gl_value_get_texture_target_mask (const GValue * value);
G_END_DECLS G_END_DECLS

View file

@ -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_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() #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); GType gst_gl_stereo_downmix_mode_get_type (void);
/** /**
@ -106,31 +106,31 @@ struct _GstGLViewConvertClass
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GType gst_gl_view_convert_get_type (void); GType gst_gl_view_convert_get_type (void);
GST_EXPORT GST_GL_API
GstGLViewConvert * gst_gl_view_convert_new (void); 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); 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, GstCaps * gst_gl_view_convert_transform_caps (GstGLViewConvert * viewconvert,
GstPadDirection direction, GstCaps * caps, GstCaps * filter); GstPadDirection direction, GstCaps * caps, GstCaps * filter);
GST_EXPORT GST_GL_API
GstCaps * gst_gl_view_convert_fixate_caps (GstGLViewConvert *viewconvert, GstCaps * gst_gl_view_convert_fixate_caps (GstGLViewConvert *viewconvert,
GstPadDirection direction, GstCaps * caps, GstCaps * othercaps); GstPadDirection direction, GstCaps * caps, GstCaps * othercaps);
GST_EXPORT GST_GL_API
GstFlowReturn gst_gl_view_convert_submit_input_buffer (GstGLViewConvert *viewconvert, GstFlowReturn gst_gl_view_convert_submit_input_buffer (GstGLViewConvert *viewconvert,
gboolean is_discont, GstBuffer * input); gboolean is_discont, GstBuffer * input);
GST_EXPORT GST_GL_API
GstFlowReturn gst_gl_view_convert_get_output (GstGLViewConvert *viewconvert, GstFlowReturn gst_gl_view_convert_get_output (GstGLViewConvert *viewconvert,
GstBuffer ** outbuf_ptr); GstBuffer ** outbuf_ptr);
GST_EXPORT GST_GL_API
GstBuffer * gst_gl_view_convert_perform (GstGLViewConvert * viewconvert, GstBuffer *inbuf); GstBuffer * gst_gl_view_convert_perform (GstGLViewConvert * viewconvert, GstBuffer *inbuf);
GST_EXPORT GST_GL_API
void gst_gl_view_convert_reset (GstGLViewConvert * viewconvert); void gst_gl_view_convert_reset (GstGLViewConvert * viewconvert);
GST_EXPORT GST_GL_API
void gst_gl_view_convert_set_context (GstGLViewConvert *viewconvert, GstGLContext * context); void gst_gl_view_convert_set_context (GstGLViewConvert *viewconvert, GstGLContext * context);
G_END_DECLS G_END_DECLS

View file

@ -30,7 +30,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_window_get_type (void); GType gst_gl_window_get_type (void);
#define GST_TYPE_GL_WINDOW (gst_gl_window_get_type()) #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_UNLOCK(w) g_mutex_unlock(&GST_GL_WINDOW(w)->lock)
#define GST_GL_WINDOW_GET_LOCK(w) (&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); GQuark gst_gl_window_error_quark (void);
/** /**
* GST_GL_WINDOW_ERROR: * GST_GL_WINDOW_ERROR:
@ -173,56 +173,56 @@ struct _GstGLWindowClass {
gpointer _reserved[GST_PADDING]; gpointer _reserved[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLWindow * gst_gl_window_new (GstGLDisplay *display); GstGLWindow * gst_gl_window_new (GstGLDisplay *display);
/* callbacks */ /* callbacks */
GST_EXPORT GST_GL_API
void gst_gl_window_set_draw_callback (GstGLWindow *window, void gst_gl_window_set_draw_callback (GstGLWindow *window,
GstGLWindowCB callback, GstGLWindowCB callback,
gpointer data, gpointer data,
GDestroyNotify destroy_notify); GDestroyNotify destroy_notify);
GST_EXPORT GST_GL_API
void gst_gl_window_set_resize_callback (GstGLWindow *window, void gst_gl_window_set_resize_callback (GstGLWindow *window,
GstGLWindowResizeCB callback, GstGLWindowResizeCB callback,
gpointer data, gpointer data,
GDestroyNotify destroy_notify); GDestroyNotify destroy_notify);
GST_EXPORT GST_GL_API
void gst_gl_window_set_close_callback (GstGLWindow *window, void gst_gl_window_set_close_callback (GstGLWindow *window,
GstGLWindowCB callback, GstGLWindowCB callback,
gpointer data, gpointer data,
GDestroyNotify destroy_notify); GDestroyNotify destroy_notify);
GST_EXPORT GST_GL_API
void gst_gl_window_set_window_handle (GstGLWindow *window, guintptr handle); 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); guintptr gst_gl_window_get_window_handle (GstGLWindow *window);
/* loop/events */ /* loop/events */
GST_EXPORT GST_GL_API
void gst_gl_window_run (GstGLWindow *window); void gst_gl_window_run (GstGLWindow *window);
GST_EXPORT GST_GL_API
void gst_gl_window_quit (GstGLWindow *window); void gst_gl_window_quit (GstGLWindow *window);
GST_EXPORT GST_GL_API
void gst_gl_window_send_message (GstGLWindow *window, void gst_gl_window_send_message (GstGLWindow *window,
GstGLWindowCB callback, GstGLWindowCB callback,
gpointer data); gpointer data);
GST_EXPORT GST_GL_API
void gst_gl_window_send_message_async (GstGLWindow *window, void gst_gl_window_send_message_async (GstGLWindow *window,
GstGLWindowCB callback, GstGLWindowCB callback,
gpointer data, gpointer data,
GDestroyNotify destroy); GDestroyNotify destroy);
/* navigation */ /* navigation */
GST_EXPORT GST_GL_API
void gst_gl_window_handle_events (GstGLWindow * window, void gst_gl_window_handle_events (GstGLWindow * window,
gboolean handle_events); gboolean handle_events);
GST_EXPORT GST_GL_API
void gst_gl_window_send_key_event (GstGLWindow * window, void gst_gl_window_send_key_event (GstGLWindow * window,
const char * event_type, const char * event_type,
const char * key_str); const char * key_str);
GST_EXPORT GST_GL_API
void gst_gl_window_send_mouse_event (GstGLWindow * window, void gst_gl_window_send_mouse_event (GstGLWindow * window,
const char * event_type, const char * event_type,
int button, int button,
@ -230,21 +230,21 @@ void gst_gl_window_send_mouse_event (GstGLWindow * window,
double posy); double posy);
/* surfaces/rendering */ /* surfaces/rendering */
GST_EXPORT GST_GL_API
void gst_gl_window_queue_resize (GstGLWindow *window); void gst_gl_window_queue_resize (GstGLWindow *window);
GST_EXPORT GST_GL_API
void gst_gl_window_draw (GstGLWindow *window); void gst_gl_window_draw (GstGLWindow *window);
GST_EXPORT GST_GL_API
void gst_gl_window_show (GstGLWindow *window); void gst_gl_window_show (GstGLWindow *window);
GST_EXPORT GST_GL_API
void gst_gl_window_set_preferred_size (GstGLWindow * window, void gst_gl_window_set_preferred_size (GstGLWindow * window,
gint width, gint width,
gint height); gint height);
GST_EXPORT GST_GL_API
void gst_gl_window_get_surface_dimensions (GstGLWindow * window, void gst_gl_window_get_surface_dimensions (GstGLWindow * window,
guint * width, guint * width,
guint * height); guint * height);
GST_EXPORT GST_GL_API
gboolean gst_gl_window_set_render_rectangle (GstGLWindow * window, gboolean gst_gl_window_set_render_rectangle (GstGLWindow * window,
gint x, gint x,
gint y, gint y,
@ -252,12 +252,12 @@ gboolean gst_gl_window_set_render_rectangle (GstGLWindow * window,
gint height); gint height);
/* subclass usage only */ /* subclass usage only */
GST_EXPORT GST_GL_API
void gst_gl_window_resize (GstGLWindow *window, guint width, guint height); void gst_gl_window_resize (GstGLWindow *window, guint width, guint height);
GST_EXPORT GST_GL_API
GstGLContext * gst_gl_window_get_context (GstGLWindow *window); GstGLContext * gst_gl_window_get_context (GstGLWindow *window);
GST_EXPORT GST_GL_API
guintptr gst_gl_window_get_display (GstGLWindow *window); guintptr gst_gl_window_get_display (GstGLWindow *window);
G_END_DECLS G_END_DECLS

View file

@ -30,6 +30,7 @@ gl_sources = [
gl_headers = [ gl_headers = [
'gl.h', 'gl.h',
'gl-prelude.h',
'gstgl_enums.h', 'gstgl_enums.h',
'gstgl_fwd.h', 'gstgl_fwd.h',
'gstglapi.h', 'gstglapi.h',

View file

@ -30,7 +30,7 @@
G_BEGIN_DECLS 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_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)) #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]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLDisplayWayland *gst_gl_display_wayland_new (const gchar * name); 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); GstGLDisplayWayland *gst_gl_display_wayland_new_with_display (struct wl_display *display);
G_END_DECLS G_END_DECLS

View file

@ -29,7 +29,7 @@
G_BEGIN_DECLS G_BEGIN_DECLS
GST_EXPORT GST_GL_API
GType gst_gl_display_x11_get_type (void); GType gst_gl_display_x11_get_type (void);
#define GST_TYPE_GL_DISPLAY_X11 (gst_gl_display_x11_get_type()) #define GST_TYPE_GL_DISPLAY_X11 (gst_gl_display_x11_get_type())
@ -68,10 +68,10 @@ struct _GstGLDisplayX11Class
gpointer _padding[GST_PADDING]; gpointer _padding[GST_PADDING];
}; };
GST_EXPORT GST_GL_API
GstGLDisplayX11 *gst_gl_display_x11_new (const gchar * name); GstGLDisplayX11 *gst_gl_display_x11_new (const gchar * name);
GST_EXPORT GST_GL_API
GstGLDisplayX11 *gst_gl_display_x11_new_with_display (Display *display); GstGLDisplayX11 *gst_gl_display_x11_new_with_display (Display *display);
G_END_DECLS G_END_DECLS