From fc3ca14ef70476762e321eb80e037c02e4bb41b5 Mon Sep 17 00:00:00 2001 From: wm4 Date: Tue, 26 Jan 2016 16:50:31 +0100 Subject: vo_opengl: default to rgba16f FBOs on ANGLE Although it has only 1 bit more precission than rgba10_a2, it was reported to improve the visual quality. --- DOCS/man/vo.rst | 4 ++-- video/out/opengl/video.c | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/DOCS/man/vo.rst b/DOCS/man/vo.rst index 00dde1e658..69c554fa16 100644 --- a/DOCS/man/vo.rst +++ b/DOCS/man/vo.rst @@ -832,8 +832,8 @@ Available video output drivers are: influence performance and quality of the video output. ``fmt`` can be one of: rgb, rgba, rgb8, rgb10, rgb10_a2, rgb16, rgb16f, rgb32f, rgba12, rgba16, rgba16f, rgba32f. - Default: ``auto``, which maps to rgba16 on desktop GL, and rgb10_a2 on - GLES (e.g. ANGLE). + Default: ``auto``, which maps to rgba16 on desktop GL, and rgba16f or + rgb10_a2 on GLES (e.g. ANGLE). ``gamma=<0.1..2.0>`` Set a gamma value (default: 1.0). If gamma is adjusted in other ways diff --git a/video/out/opengl/video.c b/video/out/opengl/video.c index c646a6306a..283a7cf0e5 100644 --- a/video/out/opengl/video.c +++ b/video/out/opengl/video.c @@ -2421,8 +2421,11 @@ static void check_gl_features(struct gl_video *p) bool have_texrg = gl->mpgl_caps & MPGL_CAP_TEX_RG; if (have_fbo) { - if (!p->opts.fbo_format) - p->opts.fbo_format = gl->es ? GL_RGB10_A2 : GL_RGBA16; + if (!p->opts.fbo_format) { + p->opts.fbo_format = GL_RGBA16; + if (gl->es) + p->opts.fbo_format = have_float_tex ? GL_RGBA16F : GL_RGB10_A2; + } have_fbo = test_fbo(p); } -- cgit v1.2.3