summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--DOCS/man/vo.rst4
-rw-r--r--video/out/opengl/video.c7
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);
}