[vlc-devel] [PATCH v3 00/18] Get rid of the control command API

Rémi Denis-Courmont remi at remlab.net
Wed Aug 19 16:58:56 CEST 2020


Hi,

I don't know where this assertion that mouse events should be processed in a different thread comes from. It sounds saner to me to process them in the UI loop (like UIs typically do) than in the render thread.

Le 18 août 2020 16:58:27 GMT+02:00, Steve Lhomme <robux4 at ycbcr.xyz> a écrit :
>The filter commands can be replaced with states of the latest filter
>request.
>
>The mouse events still need to be processed in sequence and most likely
>outside
>of the UI thread where they are generated. They are handled in a
>similar way
>as it was done in the control API but with tighter integration with the
>vout
>state.
>
>The terminate command can be internally with a boolean and trigger the
>wait
>condition on mouse events.
>
>The mouse event callback of filters is also simplified for more
>readability.
>
>Steve Lhomme (18):
>  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: 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: 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
>
> include/vlc_filter.h                          |   3 +-
> 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/video_output.c               | 233 +++++++++++-------
> src/video_output/vout_internal.h              |   1 -
> 16 files changed, 171 insertions(+), 382 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/20200819/98a6e39a/attachment.html>


More information about the vlc-devel mailing list