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 /video/out/opengl | |
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.
Diffstat (limited to 'video/out/opengl')
-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), }; |