[vlc-commits] opengl: fix persistent performances on AMD

Thomas Guillem git at videolan.org
Thu Mar 30 17:51:18 CEST 2017


vlc | branch: master | Thomas Guillem <thomas at gllm.fr> | Thu Mar 30 17:36:19 2017 +0200| [e399387e67de0605f10254ab97948e9be9decd13] | committer: Thomas Guillem

opengl: fix persistent performances on AMD

The GL_CLIENT_STORAGE_BIT flag indicates that the data should be on the CPU
side. This fixes high CPU usage with AMD GPUs and improve performances lightly
with others GPUs.

Fixes #18134

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e399387e67de0605f10254ab97948e9be9decd13
---

 modules/video_output/opengl/converters.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/video_output/opengl/converters.c b/modules/video_output/opengl/converters.c
index 629c2d3..a15dcfe 100644
--- a/modules/video_output/opengl/converters.c
+++ b/modules/video_output/opengl/converters.c
@@ -668,7 +668,7 @@ persistent_map(const opengl_tex_converter_t *tc, picture_t *pic)
     {
         tc->api->BindBuffer(GL_PIXEL_UNPACK_BUFFER, picsys->buffers[i]);
         tc->api->BufferStorage(GL_PIXEL_UNPACK_BUFFER, picsys->bytes[i], NULL,
-                               access);
+                               access | GL_CLIENT_STORAGE_BIT);
 
         pic->p[i].p_pixels =
             tc->api->MapBufferRange(GL_PIXEL_UNPACK_BUFFER, 0, picsys->bytes[i],



More information about the vlc-commits mailing list