[vlc-devel] [PATCH v4 00/23] Get rid of the control command API

Rémi Denis-Courmont remi at remlab.net
Fri Aug 21 13:55:59 CEST 2020


Hi,

I disagree with the non-translation of coordinates as already explained earlier.

Le 21 août 2020 11:59:18 GMT+02:00, Steve Lhomme <robux4 at ycbcr.xyz> a écrit :
>Changes since v3:
>- the mouse coordinates are translated to video coordinates as soon as
>we get
>them, since that's what the user sees when s·he moves/clicks the mouse.
>- the "mouse-moved", "mouse-button-down", "mouse-clicked" and
>"fullscreen"
>variables are set in non-filtered coordinates (video area coordinates).
>- these variables are set in the UI thread rather than the rendering
>thread
>- the filter.new_filters string is merged into filter.configuration. No
>need
>  for an intermediate state.
>- simplify the ThreadChangeFilters() signature as the filter string and
>deinterlace flags always come from the same variables, whether the
>values
>  changed or we recreate the filter chain.
>- add some comments in the vout thread about what we do in the loops.
>- do not use 0,0 video area coordinates for mouse events occuring while
>the 
>display module doesn't have proper dimensions to provide. We keep using
>the
>  previous correct video area coordinates.
>
>Steve Lhomme (23):
>  filters: initialize the output mouse state to the new state
>  filters: remove the duplicate new mouse state
>  video_output: only reset the mouse_event if it was set on display
>    release
>  video_output: translate the mouse coordinates to display coordinates
>    early
>  video_output: move the mouse events generation in the UI thread
>  video_output: don't include control.h in include shared across the
>    core
>  video_output: use filter lock to change filters in the vout thread
>  video_output: use filter lock to change deinterlacing in the vout
>    thread
>  video_output: remove always true boolean from ThreadChangeFilters
>  video_output: merge the new filters string and the kept filter
>    configuration
>  video_output: always use interlacing.has_deint when creating filters
>  video_output: rework the deadline parameter return
> video_output: use the rendering delay when we were given a deadline to
>    wait for
>  video_output: use INT64_MAX for the invalid control pop deadline
>  vout/control: keep the lock instead of setting a held flag
>  vout/control: move the lock outside of the control API
>  vout/control: move the condition on pictures/control outside of the
>    control API
>  video_output: use an internal bool to detect when we must exit the
>    vout thread
>  video_output: move the mouse events handling outside of the control
>    pop
>  video_output: do not wait for new mouse commands if we have a picture
>    ready
>  video_output: remove unused control API
>  video_output: code cleaning
>  display: don't use empty mouse coordinates if TranslateMouseState
>    fails
>
> include/vlc_filter.h                          |   3 +-
> include/vlc_vout_display.h                    |   2 +-
> modules/spu/logo.c                            |   7 +-
> modules/video_chroma/chain.c                  |   5 +-
> modules/video_filter/ci_filters.m             |   6 +-
> .../video_filter/deinterlace/deinterlace.c    |   6 +-
> modules/video_filter/freeze.c                 |   7 +-
> modules/video_filter/magnify.c                |   9 +-
> modules/video_filter/puzzle.c                 |   8 +-
> modules/video_filter/puzzle.h                 |   3 +-
> modules/video_filter/transform.c              |   3 +-
> src/Makefile.am                               |   2 -
> src/misc/filter_chain.c                       |   4 +-
> src/video_output/control.c                    | 174 ----------
> src/video_output/control.h                    |  82 -----
> src/video_output/display.c                    |   5 +-
> src/video_output/video_output.c               | 312 +++++++++++-------
> src/video_output/vout_internal.h              |   1 -
> 18 files changed, 215 insertions(+), 424 deletions(-)
> delete mode 100644 src/video_output/control.c
> delete mode 100644 src/video_output/control.h
>
>-- 
>2.26.2
>
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel

-- 
Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20200821/6fffaa48/attachment.html>


More information about the vlc-devel mailing list