[vlc-devel] [PATCH v2 02/19] vout: win32: add a flag tell if the alignment is relative to the bottom-left

Alexandre Janniaux ajanni at videolabs.io
Tue Aug 25 16:41:04 CEST 2020


Hi,

On Tue, Aug 25, 2020 at 04:20:15PM +0200, Steve Lhomme wrote:
> By default it should be aligned to the top-left.
> ---
>  modules/video_output/Makefile.am        |  3 ---
>  modules/video_output/win32/common.c     | 17 +++--------------
>  modules/video_output/win32/common.h     |  3 ++-
>  modules/video_output/win32/direct3d11.c |  2 +-
>  modules/video_output/win32/direct3d9.c  |  2 +-
>  modules/video_output/win32/glwin32.c    |  2 +-
>  modules/video_output/win32/wingdi.c     |  2 +-
>  7 files changed, 9 insertions(+), 22 deletions(-)
>
> diff --git a/modules/video_output/Makefile.am b/modules/video_output/Makefile.am
> index 87cd6c8ae64..3a265658f61 100644
> --- a/modules/video_output/Makefile.am
> +++ b/modules/video_output/Makefile.am
> @@ -143,9 +143,6 @@ libglwin32_plugin_la_SOURCES = \
>  	video_output/win32/win32touch.c video_output/win32/win32touch.h
>  libwgl_plugin_la_SOURCES = video_output/win32/wgl.c
>
> -libglwin32_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
> -	-DMODULE_NAME_IS_glwin32
> -

This should probably not be in this patch :)

>  libglwin32_plugin_la_LIBADD = libchroma_copy.la -lopengl32 -lgdi32 $(LIBCOM) -luuid libvlc_opengl.la
>  libwgl_plugin_la_LIBADD = -lopengl32 -lgdi32 libvlc_opengl.la
>
> diff --git a/modules/video_output/win32/common.c b/modules/video_output/win32/common.c
> index 5e65da9071a..11ff257a3ee 100644
> --- a/modules/video_output/win32/common.c
> +++ b/modules/video_output/win32/common.c
> @@ -41,10 +41,11 @@
>  #include "common.h"
>  #include "../../video_chroma/copy.h"
>
> -void CommonInit(display_win32_area_t *area, const vout_display_cfg_t *vdcfg)
> +void CommonInit(display_win32_area_t *area, enum vout_place_origin origin, const vout_display_cfg_t *vdcfg)
>  {
>      area->place_changed = false;
>      area->vdcfg = *vdcfg;
> +    area->origin = origin;
>  }
>
>  #if !VLC_WINSTORE_APP
> @@ -98,21 +99,9 @@ void CommonPlacePicture(vout_display_t *vd, display_win32_area_t *area, vout_dis
>  {
>      /* Update the window position and size */
>      vout_display_cfg_t place_cfg = area->vdcfg;
> -    enum vout_place_origin origin;
> -
> -#if (defined(MODULE_NAME_IS_glwin32))
> -    origin = VOUT_ORIGIN_BOTTOM_LEFT;
> -    /* Reverse vertical alignment as the GL tex are Y inverted */
> -    if (place_cfg.align.vertical == VLC_VIDEO_ALIGN_TOP)
> -        place_cfg.align.vertical = VLC_VIDEO_ALIGN_BOTTOM;
> -    else if (place_cfg.align.vertical == VLC_VIDEO_ALIGN_BOTTOM)
> -        place_cfg.align.vertical = VLC_VIDEO_ALIGN_TOP;
> -#else
> -    origin = VOUT_ORIGIN_TOP_LEFT;
> -#endif
>
>      vout_display_place_t before_place = area->place;
> -    vout_display_PlacePicture(&area->place, &vd->source, &place_cfg, origin);
> +    vout_display_PlacePicture(&area->place, &vd->source, &place_cfg, area->origin);
>
>      /* Signal the change in size/position */
>      if (!vout_display_PlaceEquals(&before_place, &area->place))
> diff --git a/modules/video_output/win32/common.h b/modules/video_output/win32/common.h
> index 8eb48f72435..562be27bf23 100644
> --- a/modules/video_output/win32/common.h
> +++ b/modules/video_output/win32/common.h
> @@ -35,6 +35,7 @@ typedef struct display_win32_area_t
>      /* Coordinates of dest images (used when blitting to display) */
>      vout_display_place_t  place;
>      bool                  place_changed;
> +    enum vout_place_origin origin;
>
>      vout_display_cfg_t    vdcfg;
>  } display_win32_area_t;
> @@ -75,7 +76,7 @@ int  CommonControl(vout_display_t *, display_win32_area_t *, vout_display_sys_wi
>
>  void CommonPlacePicture (vout_display_t *, display_win32_area_t *, vout_display_sys_win32_t *);
>
> -void CommonInit(display_win32_area_t *, const vout_display_cfg_t *);
> +void CommonInit(display_win32_area_t *, enum vout_place_origin origin, const vout_display_cfg_t *);
>
>  # ifdef __cplusplus
>  extern "C" {
> diff --git a/modules/video_output/win32/direct3d11.c b/modules/video_output/win32/direct3d11.c
> index 5affcf3068f..375ef67500b 100644
> --- a/modules/video_output/win32/direct3d11.c
> +++ b/modules/video_output/win32/direct3d11.c
> @@ -296,7 +296,7 @@ static int Open(vout_display_t *vd, const vout_display_cfg_t *cfg,
>      if (ret != VLC_SUCCESS)
>          goto error;
>
> -    CommonInit(&sys->area, cfg);
> +    CommonInit(&sys->area, VOUT_ORIGIN_TOP_LEFT, cfg);
>
>      sys->outside_opaque = var_InheritAddress( vd, "vout-cb-opaque" );
>      sys->updateOutputCb      = var_InheritAddress( vd, "vout-cb-update-output" );
> diff --git a/modules/video_output/win32/direct3d9.c b/modules/video_output/win32/direct3d9.c
> index 175ea4da755..439d94cf9fc 100644
> --- a/modules/video_output/win32/direct3d9.c
> +++ b/modules/video_output/win32/direct3d9.c
> @@ -1802,7 +1802,7 @@ static int Open(vout_display_t *vd, const vout_display_cfg_t *cfg,
>      if (!sys)
>          return VLC_ENOMEM;
>
> -    CommonInit(&sys->area, cfg);
> +    CommonInit(&sys->area, VOUT_ORIGIN_TOP_LEFT, cfg);
>
>      sys->outside_opaque = var_InheritAddress( vd, "vout-cb-opaque" );
>      sys->updateOutputCb      = var_InheritAddress( vd, "vout-cb-update-output" );
> diff --git a/modules/video_output/win32/glwin32.c b/modules/video_output/win32/glwin32.c
> index 7397d7e9bbe..6b7d0a3f0a7 100644
> --- a/modules/video_output/win32/glwin32.c
> +++ b/modules/video_output/win32/glwin32.c
> @@ -120,7 +120,7 @@ static int Open(vout_display_t *vd, const vout_display_cfg_t *cfg,
>          return VLC_ENOMEM;
>
>      /* */
> -    CommonInit(&sys->area, cfg);
> +    CommonInit(&sys->area, VOUT_ORIGIN_BOTTOM_LEFT, cfg);
>      if (CommonWindowInit(vd, &sys->area, &sys->sys,
>                     vd->source.projection_mode != PROJECTION_MODE_RECTANGULAR))
>          goto error;
> diff --git a/modules/video_output/win32/wingdi.c b/modules/video_output/win32/wingdi.c
> index 3d09d84fa2a..8d55a6f0f3c 100644
> --- a/modules/video_output/win32/wingdi.c
> +++ b/modules/video_output/win32/wingdi.c
> @@ -116,7 +116,7 @@ static int Open(vout_display_t *vd, const vout_display_cfg_t *cfg,
>      if (!sys)
>          return VLC_ENOMEM;
>
> -    CommonInit(&sys->area, cfg);
> +    CommonInit(&sys->area, VOUT_ORIGIN_TOP_LEFT, cfg);
>      if (CommonWindowInit(vd, &sys->area, &sys->sys, false))
>          goto error;
>
> --
> 2.26.2
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list