summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2016-09-30 12:12:56 +0200
committerwm4 <wm4@nowhere>2016-09-30 13:05:58 +0200
commitd3111ee7775c8c7f56f2c68907a7fe2c6ee138be (patch)
tree7a7758a258ce9df59defe10db97cbc52c97b1c18
parent1d385b0daec732c0fd31ad0b348cbc28b11196de (diff)
downloadmpv-d3111ee7775c8c7f56f2c68907a7fe2c6ee138be.tar.bz2
mpv-d3111ee7775c8c7f56f2c68907a7fe2c6ee138be.tar.xz
vo_opengl: rpi: raise the video layer
Was intended to put the GL layer above the standard console. (But actually that was done already, and the oddness I'm seeing seems to be an unrelated bug.)
-rw-r--r--video/out/opengl/context_rpi.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/video/out/opengl/context_rpi.c b/video/out/opengl/context_rpi.c
index 3d102082eb..96c8199ef4 100644
--- a/video/out/opengl/context_rpi.c
+++ b/video/out/opengl/context_rpi.c
@@ -95,12 +95,14 @@ static void rpi_uninit(MPGLContext *ctx)
static int recreate_dispmanx(struct MPGLContext *ctx)
{
struct priv *p = ctx->priv;
+ int display_nr = 0;
+ int layer = 0;
MP_VERBOSE(ctx->vo, "Recreating DISPMANX state...\n");
destroy_dispmanx(ctx);
- p->display = vc_dispmanx_display_open(0);
+ p->display = vc_dispmanx_display_open(display_nr);
p->update = vc_dispmanx_update_start(0);
if (!p->display || !p->update) {
MP_FATAL(ctx->vo, "Could not get DISPMANX objects.\n");
@@ -139,8 +141,9 @@ static int recreate_dispmanx(struct MPGLContext *ctx)
.flags = DISPMANX_FLAGS_ALPHA_FROM_SOURCE,
.opacity = 0xFF,
};
- p->window = vc_dispmanx_element_add(p->update, p->display, 1, &dst, 0, &src,
- DISPMANX_PROTECTION_NONE, &alpha, 0, 0);
+ p->window = vc_dispmanx_element_add(p->update, p->display, layer, &dst, 0,
+ &src, DISPMANX_PROTECTION_NONE, &alpha,
+ 0, 0);
if (!p->window) {
MP_FATAL(ctx->vo, "Could not add DISPMANX element.\n");
goto fail;
@@ -187,6 +190,8 @@ static int recreate_dispmanx(struct MPGLContext *ctx)
}
}
+ p->win_params[0] = display_nr;
+ p->win_params[1] = layer;
p->win_params[2] = p->x;
p->win_params[3] = p->y;