diff options
author | wm4 <wm4@nowhere> | 2017-04-03 18:08:36 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2017-04-03 18:12:42 +0200 |
commit | 1c0bd59bc2da7ee11598bbb1d5b4e0c9797ccfbe (patch) | |
tree | cc9f830b4609d969e4d78c045849e61ee3f7d088 | |
parent | 31611fc46b29e0704004e21f1e25de2f9608e109 (diff) | |
download | mpv-1c0bd59bc2da7ee11598bbb1d5b4e0c9797ccfbe.tar.bz2 mpv-1c0bd59bc2da7ee11598bbb1d5b4e0c9797ccfbe.tar.xz |
vo_opengl: use 16 bit textures with angle
Regression due to 03fe506. It accidentally changed the default value if
glGetTexLevelParameteriv() is not available, which is the case with
ANGLE.
-rw-r--r-- | video/out/opengl/utils.c | 6 | ||||
-rw-r--r-- | video/out/opengl/video.c | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/video/out/opengl/utils.c b/video/out/opengl/utils.c index 2ec8f43898..36e63e03ff 100644 --- a/video/out/opengl/utils.c +++ b/video/out/opengl/utils.c @@ -1255,8 +1255,12 @@ void gl_pbo_upload_uninit(struct gl_pbo_upload *pbo) int gl_determine_16bit_tex_depth(GL *gl) { const struct gl_format *fmt = gl_find_unorm_format(gl, 2, 1); - if (!gl->GetTexLevelParameteriv || !fmt) + if (!gl->GetTexLevelParameteriv || !fmt) { + // ANGLE supports ES 3.0 and the extension, but lacks the function above. + if (gl->mpgl_caps & MPGL_CAP_EXT16) + return 16; return -1; + } GLuint tex; gl->GenTextures(1, &tex); diff --git a/video/out/opengl/video.c b/video/out/opengl/video.c index 14b1150207..38d3d413e2 100644 --- a/video/out/opengl/video.c +++ b/video/out/opengl/video.c @@ -3310,7 +3310,6 @@ struct gl_video *gl_video_init(GL *gl, struct mp_log *log, struct mpv_global *g) .gl = gl, .global = g, .log = log, - .texture_16bit_depth = 16, .sc = gl_sc_create(gl, log), .opts_cache = m_config_cache_alloc(p, g, &gl_video_conf), }; |