G_BEGIN_DECLS
-GType gst_egl_image_get_type (void);
+GST_EXPORT 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))
#define GST_EGL_IMAGE_CAST(obj) ((GstEGLImage *)(obj))
gpointer _padding[GST_PADDING];
};
+GST_EXPORT
GstEGLImage * gst_egl_image_new_wrapped (GstGLContext * context,
EGLImageKHR image,
GstGLFormat format,
gpointer user_data,
GstEGLImageDestroyNotify user_data_destroy);
+GST_EXPORT
EGLImageKHR gst_egl_image_get_image (GstEGLImage * image);
+GST_EXPORT
GstEGLImage * gst_egl_image_from_texture (GstGLContext * context,
GstGLMemory * gl_mem,
guintptr * attribs);
#if GST_GL_HAVE_DMABUF
+GST_EXPORT
GstEGLImage * gst_egl_image_from_dmabuf (GstGLContext * context,
gint dmabuf,
GstVideoInfo * in_info,
G_BEGIN_DECLS
+GST_EXPORT
GType gst_gl_display_egl_get_type (void);
#define GST_TYPE_GL_DISPLAY_EGL (gst_gl_display_egl_get_type())
gpointer _padding[GST_PADDING];
};
+GST_EXPORT
GstGLDisplayEGL *gst_gl_display_egl_new (void);
+
+GST_EXPORT
GstGLDisplayEGL *gst_gl_display_egl_new_with_egl_display (EGLDisplay display);
+
+GST_EXPORT
GstGLDisplayEGL *gst_gl_display_egl_from_gl_display (GstGLDisplay * display);
+
+GST_EXPORT
EGLDisplay gst_gl_display_egl_get_from_native (GstGLDisplayType type, guintptr display);
#define GST_GL_DISPLAY_EGL_NAME "gst.gl.display.egl"
G_BEGIN_DECLS
#define GST_TYPE_GL_MEMORY_EGL_ALLOCATOR (gst_gl_memory_egl_allocator_get_type())
-GType gst_gl_memory_egl_allocator_get_type(void);
+GST_EXPORT 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))
*/
#define GST_GL_MEMORY_EGL_ALLOCATOR_NAME "GLMemoryEGL"
+GST_EXPORT
void gst_gl_memory_egl_init_once (void);
+
+GST_EXPORT
gboolean gst_is_gl_memory_egl (GstMemory * mem);
+GST_EXPORT
EGLImageKHR gst_gl_memory_egl_get_image (GstGLMemoryEGL * mem);
+
+GST_EXPORT
EGLDisplay gst_gl_memory_egl_get_display (GstGLMemoryEGL * mem);
/**
gboolean gst_gl_display_add_context (GstGLDisplay * display,
GstGLContext * context);
+GST_EXPORT
GstGLWindow * gst_gl_display_create_window (GstGLDisplay * display);
+GST_EXPORT
gboolean gst_gl_display_remove_window (GstGLDisplay * display, GstGLWindow * window);
+GST_EXPORT
GstGLWindow * gst_gl_display_find_window (GstGLDisplay * display, gpointer data, GCompareFunc compare_func);
G_END_DECLS
G_BEGIN_DECLS
#define GST_TYPE_GL_RENDERBUFFER_ALLOCATOR (gst_gl_renderbuffer_allocator_get_type())
-GType gst_gl_renderbuffer_allocator_get_type(void);
+GST_EXPORT 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))
#include <gst/gl/gstglbasememory.h>
-GType gst_gl_renderbuffer_allocation_params_get_type (void);
+GST_EXPORT GType gst_gl_renderbuffer_allocation_params_get_type (void);
#define GST_TYPE_RENDERBUFFER_ALLOCATION_PARAMS (gst_gl_renderbuffer_allocation_params_get_type)
typedef struct
gpointer _padding[GST_PADDING];
} GstGLRenderbufferAllocationParams;
+GST_EXPORT
GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_new (GstGLContext * context,
GstAllocationParams * alloc_params,
GstGLFormat renderbuffer_format,
guint width,
guint height);
+GST_EXPORT
GstGLRenderbufferAllocationParams * gst_gl_renderbuffer_allocation_params_new_wrapped (GstGLContext * context,
GstAllocationParams * alloc_params,
GstGLFormat renderbuffer_format,
gpointer user_data,
GDestroyNotify notify);
+GST_EXPORT
void gst_gl_renderbuffer_init_once (void);
+
+GST_EXPORT
gboolean gst_is_gl_renderbuffer (GstMemory * mem);
/* accessors */
+GST_EXPORT
gint gst_gl_renderbuffer_get_width (GstGLRenderbuffer * gl_mem);
+
+GST_EXPORT
gint gst_gl_renderbuffer_get_height (GstGLRenderbuffer * gl_mem);
+
+GST_EXPORT
GstGLFormat gst_gl_renderbuffer_get_format (GstGLRenderbuffer * gl_mem);
+
+GST_EXPORT
guint gst_gl_renderbuffer_get_id (GstGLRenderbuffer * gl_mem);
G_END_DECLS
G_BEGIN_DECLS
-GType gst_gl_display_wayland_get_type (void);
+GST_EXPORT 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))
gpointer _padding[GST_PADDING];
};
+GST_EXPORT
GstGLDisplayWayland *gst_gl_display_wayland_new (const gchar * name);
+
+GST_EXPORT
GstGLDisplayWayland *gst_gl_display_wayland_new_with_display (struct wl_display *display);
G_END_DECLS
G_BEGIN_DECLS
+GST_EXPORT
GType gst_gl_display_x11_get_type (void);
#define GST_TYPE_GL_DISPLAY_X11 (gst_gl_display_x11_get_type())
gpointer _padding[GST_PADDING];
};
+GST_EXPORT
GstGLDisplayX11 *gst_gl_display_x11_new (const gchar * name);
+
+GST_EXPORT
GstGLDisplayX11 *gst_gl_display_x11_new_with_display (Display *display);
G_END_DECLS