gstreamer/gst-libs/gst/gl/glprototypes
Sebastian Dröge a6cbe2a2cb glmemory: Use glBlitFramebuffer() instead of glCopyTexImage2D() if available
glBlitFramebuffer() is new GLES3/GL3 API. They are probably often
implemented in terms of each other, and glBlitFramebuffer() can
potentially be implemented more flexible. Let's use it if available.

Also it actually works on imx6 with DirectVIV textures.

Based on a patch by Haihua Hu <jared.hu@nxp.com> from
https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/

https://bugzilla.gnome.org/show_bug.cgi?id=779070
2017-12-09 19:32:26 +00:00
..
all_functions.h gl: add a gstglquery object for arbitrary GL queries 2017-12-09 19:32:15 +00:00
base.h glprototypes: fix parameter type of glGenBuffers 2017-12-09 19:32:15 +00:00
blending.h glfeature: remove GST_GL_API_GLES3 2017-12-09 19:31:42 +00:00
buffers.h gl/prototypes: add some buffer function prototypes 2017-12-09 19:32:04 +00:00
debug.h gl: add some debugging prototypes 2017-12-09 19:32:08 +00:00
eglimage.h glfeature: remove GST_GL_API_GLES3 2017-12-09 19:31:42 +00:00
fbo.h glmemory: Use glBlitFramebuffer() instead of glCopyTexImage2D() if available 2017-12-09 19:32:26 +00:00
fixedfunction.h glfeature: remove GST_GL_API_GLES3 2017-12-09 19:31:42 +00:00
gles.h glfeature: remove GST_GL_API_GLES3 2017-12-09 19:31:42 +00:00
gstgl_compat.h gl: add compatibility definition of GLint64 2017-12-09 19:32:15 +00:00
gstgl_gles2compat.h gl: add support for building against GLES3 headers 2017-12-09 19:32:18 +00:00
Makefile.am gl: add a gstglquery object for arbitrary GL queries 2017-12-09 19:32:15 +00:00
opengl.h opengl: Change GLclampd to double 2017-12-09 19:32:07 +00:00
query.h gl: add a gstglquery object for arbitrary GL queries 2017-12-09 19:32:15 +00:00
README [625/906] add vtable for opengl functions 2017-12-09 19:31:26 +00:00
shaders.h glshader: add glBindFragDataLocation 2017-12-09 19:32:18 +00:00
sync.h gl/proto: sync operations are available on GLES 3.0 2017-12-09 19:32:18 +00:00
vao.h glproto/vao: only supported in core for ES 3.0+ 2017-12-09 19:31:54 +00:00

/*
 * GStreamer
 * Copyright (C) 2012 Matthew Waters <ystreet00@gmail.com>
 *
 * 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.
 */

/* Original files and function definitions courtesy of cogl 
 *
 * Changes:
 *  - Namespace COGL -> GST_GL
 *  - remove gl from each function (i.e. glTexImage2D -> TexImage2D)
 **/

/* The files in this folder are included multiple times with different
 * definitions for these macros. The macros are given the following arguments:
 *
 * GST_GL_EXT_BEGIN:
 *
 * @name: a unique symbol name for this feature
 *
 * @min_gl_major: the major part of the minimum GL version where these
 * functions are available in core, or 255 if it isn't available in
 * any version.
 * @min_gl_minor: the minor part of the minimum GL version where these
 * functions are available in core, or 255 if it isn't available in
 * any version.
 *
 * @gles_availability: flags to specify which versions of GLES the
 * functions are available in. Should be a combination of
 * GST_GL_API_GLES and GST_GL_API_GLES2.
 *
 * @extension_suffixes: A zero-separated list of suffixes in a
 * string. These are appended to the extension name to get a complete
 * extension name to try. The suffix is also appended to all of the
 * function names. The suffix can optionally include a ':' to specify
 * an alternate suffix for the function names.
 *
 * @extension_names: A list of extension names to try. If any of these
 * extensions match then it will be used.
 */