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

Steve Lhomme robux4 at ycbcr.xyz
Wed Aug 26 08:44:17 CEST 2020


On 2020-08-25 16:41, Alexandre Janniaux wrote:
> 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 :)

Yes. The only reason this flag existed is removed 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))

This is the last place where this define was used.

>> -    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
> _______________________________________________
> 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