diff options
author | wm4 <wm4@nowhere> | 2014-12-20 18:43:11 +0100 |
---|---|---|
committer | Diogo Franco (Kovensky) <diogomfranco@gmail.com> | 2015-01-25 17:00:14 +0900 |
commit | a9db58cc3b39d78aa667c4d993f0f6dba71d809e (patch) | |
tree | a04af41d99c206680f54ddc32549198abaf49aaa /video/out/vo_opengl_old.c | |
parent | 21c4c50ac6f0e63bf793a99055533a063bbf4858 (diff) | |
download | mpv-a9db58cc3b39d78aa667c4d993f0f6dba71d809e.tar.bz2 mpv-a9db58cc3b39d78aa667c4d993f0f6dba71d809e.tar.xz |
vo_opengl_old: fix OSD regression
Commit 0e8fbdbd removed the rg_texture requirement from vo_opengl;
commit 541f6731 changed to a more convenient method. Both commits broke
vo_opengl_old in some ways. vo_opengl_old always requires GL_ALPHA for
single-channel texture, because it draws the OSD without shaders and by
using certain blend modes.
So we need to explicitly distinguish between vo_opengl and vo_opengl_old
in the OSD renderer, and force fixed texture formats for vo_opengl_old.
The other logic is specific to the internals of vo_opengl. (Although it
might be possible to get the same result by playing with the old GL
fixed-function functions in vo_opengl_old. But seems like a waste of
time.)
Fixes #1370.
Conflicts:
video/out/gl_osd.c
Diffstat (limited to 'video/out/vo_opengl_old.c')
-rw-r--r-- | video/out/vo_opengl_old.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/video/out/vo_opengl_old.c b/video/out/vo_opengl_old.c index 91a14398d5..78284718aa 100644 --- a/video/out/vo_opengl_old.c +++ b/video/out/vo_opengl_old.c @@ -1687,7 +1687,7 @@ static int initGl(struct vo *vo, uint32_t d_width, uint32_t d_height) } if (gl->BindTexture) { - p->osd = mpgl_osd_init(gl, vo->log, vo->osd); + p->osd = mpgl_osd_init(gl, vo->log, vo->osd, true); p->osd->scaled = p->scaled_osd; } |