summaryrefslogtreecommitdiffstats
path: root/video/out/opengl/common.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-09-25 00:07:20 +0200
committerwm4 <wm4@nowhere>2015-09-25 00:19:58 +0200
commitd47dff3faa246256d9e29daa215db4b5aedcb3f2 (patch)
treee5cece949613a8b79591391ea5ed01c49b030563 /video/out/opengl/common.h
parentb81d9c79a893f119ea80d230c20b77809be2b0d9 (diff)
downloadmpv-d47dff3faa246256d9e29daa215db4b5aedcb3f2.tar.bz2
mpv-d47dff3faa246256d9e29daa215db4b5aedcb3f2.tar.xz
vo_opengl: load certain EGL extensions needed for VAAPI EGL interop
These extensions use a bunch of EGL types, so we need to include the EGL headers in common.h to use our GL function loader with this. In the future, we should probably require presence of the EGL headers to reduce the hacks. This might be not so simple at least with OSX, so for now this has to do.
Diffstat (limited to 'video/out/opengl/common.h')
-rw-r--r--video/out/opengl/common.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/video/out/opengl/common.h b/video/out/opengl/common.h
index 0e3566d689..675447db54 100644
--- a/video/out/opengl/common.h
+++ b/video/out/opengl/common.h
@@ -46,6 +46,11 @@
#include <GL/glext.h>
#endif
+#if HAVE_EGL
+#include <EGL/egl.h>
+#include <EGL/eglext.h>
+#endif
+
#define MP_GET_GL_WORKAROUNDS
#include "header_fixes.h"
@@ -268,6 +273,12 @@ struct GL {
GLint (GLAPIENTRY *GetVideoSync)(GLuint *);
GLint (GLAPIENTRY *WaitVideoSync)(GLint, GLint, unsigned int *);
+ EGLImageKHR (EGLAPIENTRY *CreateImageKHR)(EGLDisplay, EGLContext,
+ EGLenum, EGLClientBuffer,
+ const EGLint *);
+ EGLBoolean (EGLAPIENTRY *DestroyImageKHR)(EGLDisplay, EGLImageKHR);
+ void (EGLAPIENTRY *EGLImageTargetTexture2DOES)(GLenum, GLeglImageOES);
+
void (GLAPIENTRY *DebugMessageCallback)(MP_GLDEBUGPROC callback,
const void *userParam);