summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--DOCS/man/vo.rst4
-rw-r--r--video/out/vo_opengl.c3
2 files changed, 6 insertions, 1 deletions
diff --git a/DOCS/man/vo.rst b/DOCS/man/vo.rst
index f9a22e3c0e..31540fc1fa 100644
--- a/DOCS/man/vo.rst
+++ b/DOCS/man/vo.rst
@@ -439,7 +439,9 @@ Available video output drivers are:
Borders will be distorted due to filtering.
``glfinish``
- Call ``glFinish()`` before swapping buffers
+ Call ``glFinish()`` before and after swapping buffers (default: disabled).
+ Slower, but might help getting better results when doing framedropping.
+ The details depend entirely on the OpenGL driver.
``sw``
Continue even if a software renderer is detected.
diff --git a/video/out/vo_opengl.c b/video/out/vo_opengl.c
index ae5f1f9bd0..c80506039c 100644
--- a/video/out/vo_opengl.c
+++ b/video/out/vo_opengl.c
@@ -105,6 +105,9 @@ static void flip_page(struct vo *vo)
if (p->frames_rendered > 5)
gl_video_set_debug(p->renderer, false);
+ if (p->use_glFinish)
+ p->gl->Finish();
+
mpgl_unlock(p->glctx);
}