summaryrefslogtreecommitdiffstats
path: root/sys/glsink/glvideo.h
diff options
context:
space:
mode:
authorDavid Schleef <ds@schleef.org>2007-12-24 20:53:56 +0000
committerDavid Schleef <ds@schleef.org>2007-12-24 20:53:56 +0000
commit15dbe49f8103bfcf493a225868734fdf8c924d03 (patch)
tree5ac354b0499d853579c2c3df188dcf9558ec662f /sys/glsink/glvideo.h
parentc131493ccecb74544dfdcaf03be980e47c71896d (diff)
downloadgst-plugins-bad-15dbe49f8103bfcf493a225868734fdf8c924d03.tar.gz
gst-plugins-bad-15dbe49f8103bfcf493a225868734fdf8c924d03.tar.bz2
gst-plugins-bad-15dbe49f8103bfcf493a225868734fdf8c924d03.zip
sys/glsink/: Rewrite a bunch of code to use textures as the intermediate instead of renderbuffers. upload, download,...
Original commit message from CVS: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: Rewrite a bunch of code to use textures as the intermediate instead of renderbuffers. upload, download, filtering all work.
Diffstat (limited to 'sys/glsink/glvideo.h')
-rw-r--r--sys/glsink/glvideo.h19
1 files changed, 7 insertions, 12 deletions
diff --git a/sys/glsink/glvideo.h b/sys/glsink/glvideo.h
index 4fb3761e..677c569f 100644
--- a/sys/glsink/glvideo.h
+++ b/sys/glsink/glvideo.h
@@ -5,16 +5,7 @@
#include <GL/glx.h>
#include <GL/gl.h>
#include <gst/gst.h>
-
-typedef enum {
- GST_GL_IMAGE_TYPE_RGBx,
- GST_GL_IMAGE_TYPE_BGRx,
- GST_GL_IMAGE_TYPE_xRGB,
- GST_GL_IMAGE_TYPE_xBGR,
- GST_GL_IMAGE_TYPE_YUY2,
- GST_GL_IMAGE_TYPE_UYVY,
- GST_GL_IMAGE_TYPE_AYUV,
-} GstGLImageType;
+#include <gst/video/video.h>
typedef struct _GstGLDisplay GstGLDisplay;
typedef struct _GstGLDisplayClass GstGLDisplayClass;
@@ -73,17 +64,21 @@ GstGLDisplay *gst_gl_display_new (void);
gboolean gst_gl_display_connect (GstGLDisplay *display,
const char *display_name);
gboolean gst_gl_display_can_handle_type (GstGLDisplay *display,
- GstGLImageType type);
+ GstVideoFormat type);
void gst_gl_display_lock (GstGLDisplay *display);
void gst_gl_display_unlock (GstGLDisplay *display);
void gst_gl_display_set_window (GstGLDisplay *display, Window window);
void gst_gl_display_update_attributes (GstGLDisplay *display);
void gst_gl_display_clear (GstGLDisplay *display);
-void gst_gl_display_draw_image (GstGLDisplay * display, GstGLImageType type,
+void gst_gl_display_draw_image (GstGLDisplay * display, GstVideoFormat type,
void *data, int width, int height);
void gst_gl_display_draw_rbo (GstGLDisplay * display, GLuint rbo,
int width, int height);
+void gst_gl_display_draw_texture (GstGLDisplay * display, GLuint texture,
+ int width, int height);
void gst_gl_display_check_error (GstGLDisplay *display, int line);
+GLuint gst_gl_display_upload_texture_rectangle (GstGLDisplay *display,
+ GstVideoFormat type, void *data, int width, int height);
#endif