mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 17:20:36 +00:00
[806/906] egl: doesn't require the EGLConfig from the other context
libEGL should give us the same or similar EGLConfig from the EGLDisplay we have.
This commit is contained in:
parent
93692c7437
commit
cb7bf213fe
1 changed files with 11 additions and 23 deletions
|
@ -22,7 +22,7 @@
|
|||
#include "config.h"
|
||||
#endif
|
||||
|
||||
/* FIXME: Sharing contexts requires the EGLDisplay & EGLConfig to be the same
|
||||
/* FIXME: Sharing contexts requires the EGLDisplay to be the same
|
||||
* may need to box it.
|
||||
*/
|
||||
|
||||
|
@ -161,28 +161,16 @@ gst_gl_context_egl_choose_config (GstGLContextEGL * egl,
|
|||
gint i = 0;
|
||||
EGLint config_attrib[20];
|
||||
|
||||
if (other_context) {
|
||||
GstGLContextEGL *other_context_egl = GST_GL_CONTEXT_EGL (other_context);
|
||||
EGLint config_id;
|
||||
|
||||
eglGetConfigAttrib (egl->egl_display, other_context_egl->egl_config,
|
||||
EGL_CONFIG_ID, &config_id);
|
||||
|
||||
config_attrib[i++] = EGL_CONFIG_ID;
|
||||
config_attrib[i++] = config_id;
|
||||
config_attrib[i++] = EGL_NONE;
|
||||
} else {
|
||||
config_attrib[i++] = EGL_SURFACE_TYPE;
|
||||
config_attrib[i++] = EGL_WINDOW_BIT;
|
||||
config_attrib[i++] = EGL_RENDERABLE_TYPE;
|
||||
if (egl->gl_api & GST_GL_API_GLES2)
|
||||
config_attrib[i++] = EGL_OPENGL_ES2_BIT;
|
||||
else
|
||||
config_attrib[i++] = EGL_OPENGL_BIT;
|
||||
config_attrib[i++] = EGL_DEPTH_SIZE;
|
||||
config_attrib[i++] = 16;
|
||||
config_attrib[i++] = EGL_NONE;
|
||||
}
|
||||
config_attrib[i++] = EGL_SURFACE_TYPE;
|
||||
config_attrib[i++] = EGL_WINDOW_BIT;
|
||||
config_attrib[i++] = EGL_RENDERABLE_TYPE;
|
||||
if (egl->gl_api & GST_GL_API_GLES2)
|
||||
config_attrib[i++] = EGL_OPENGL_ES2_BIT;
|
||||
else
|
||||
config_attrib[i++] = EGL_OPENGL_BIT;
|
||||
config_attrib[i++] = EGL_DEPTH_SIZE;
|
||||
config_attrib[i++] = 16;
|
||||
config_attrib[i++] = EGL_NONE;
|
||||
|
||||
if (eglChooseConfig (egl->egl_display, config_attrib,
|
||||
&egl->egl_config, 1, &numConfigs)) {
|
||||
|
|
Loading…
Reference in a new issue