summaryrefslogtreecommitdiffstats
path: root/video/out/opengl/common.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2016-04-27 19:14:10 +0200
committerwm4 <wm4@nowhere>2016-04-27 19:19:56 +0200
commit9d16837c99c91e786e517b2520afa79bcdc433b3 (patch)
treed21daf07515b941fb447fa3ad734395f4b83946f /video/out/opengl/common.h
parent757c8baf8c5bd4598cd5455908e4fa543821837a (diff)
downloadmpv-9d16837c99c91e786e517b2520afa79bcdc433b3.tar.bz2
mpv-9d16837c99c91e786e517b2520afa79bcdc433b3.tar.xz
vo_opengl: support GL_EXT_texture_norm16 on GLES
This gives us 16 bit fixed-point integer texture formats, including ability to sample from them with linear filtering, and using them as FBO attachments. The integer texture format path is still there for the sake of ANGLE, which does not support GL_EXT_texture_norm16 yet. The change to pass_dither() is needed, because the code path using GL_R16 for the dither texture relies on glTexImage2D being able to convert from GL_FLOAT to GL_R16. GLES does not allow this. This could be trivially fixed by doing the conversion ourselves, but I'm too lazy to do this now.
Diffstat (limited to 'video/out/opengl/common.h')
-rw-r--r--video/out/opengl/common.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/video/out/opengl/common.h b/video/out/opengl/common.h
index f790dcb166..ef75ae1645 100644
--- a/video/out/opengl/common.h
+++ b/video/out/opengl/common.h
@@ -61,6 +61,7 @@ enum {
MPGL_CAP_3D_TEX = (1 << 15),
MPGL_CAP_DEBUG = (1 << 16),
MPGL_CAP_DXINTEROP = (1 << 17), // WGL_NV_DX_interop
+ MPGL_CAP_EXT16 = (1 << 18), // GL_EXT_texture_norm16
MPGL_CAP_SW = (1 << 30), // indirect or sw renderer
};