diff --git a/modules/video_output/caopengllayer.m b/modules/video_output/caopengllayer.m index c16687c1a0b3068c5b1bd6f52228e417dfbc018e..90b41f517eadedd4f47ffbc50a80b979d2850c04 100644 --- a/modules/video_output/caopengllayer.m +++ b/modules/video_output/caopengllayer.m @@ -348,6 +348,12 @@ static int Control (vout_display_t *vd, int query, va_list ap) cfg_tmp.display.width = bounds.size.width; cfg_tmp.display.height = bounds.size.height; + /* Reverse vertical alignment as the GL tex are Y inverted */ + if (cfg_tmp.align.vertical == VOUT_DISPLAY_ALIGN_TOP) + cfg_tmp.align.vertical = VOUT_DISPLAY_ALIGN_BOTTOM; + else if (cfg_tmp.align.vertical == VOUT_DISPLAY_ALIGN_BOTTOM) + cfg_tmp.align.vertical = VOUT_DISPLAY_ALIGN_TOP; + vout_display_place_t place; vout_display_PlacePicture (&place, &vd->source, &cfg_tmp, false); if (OpenglLock(sys->gl))