<html><head></head><body>The owner of the vout is the holder of the input resources, so probably the input manager.<br><br>The opaque pointer will be necessary to implement playback stop on closed window, for instance.<br><br><div class="gmail_quote">Le 31 janvier 2019 09:53:50 GMT+02:00, Steve Lhomme <robux4@ycbcr.xyz> a écrit :<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">On 30/01/2019 16:46, Rémi Denis-Courmont wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;">Err, IIRC, the idea was that it was the owner opaque data, but it just <br>so happens that the only owner callback is for mouse handling at this <br>point.<br></blockquote><br>The vout doesn't have a notion of owner. For decoder it's debatable if <br>this is ever going to be used for something else.<br><br>><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"> Le 30 janvier 2019 15:34:49 GMT+02:00, Steve Lhomme <git@videolan.org> <br> a écrit :<br><br>     vlc | branch: master | Steve Lhomme <robux4@ycbcr.xyz> | Wed Jan 30 14:09:50 2019 +0100| [d4a5d48af440f14937480d773076e5919e48bde8] | committer: Steve Lhomme<br><br>     video_output/decoder: rename opaque to mouse_opaque<br><br>     The opaque value is for the mouse_event callback.<br><br>         <a href="http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d4a5d48af440f14937480d773076e5919e48bde8">http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d4a5d48af440f14937480d773076e5919e48bde8</a><hr>       src/input/decoder.c              | 10 +++++-----<br>       src/video_output/video_output.c  |  8 ++++----<br>       src/video_output/vout_internal.h |  4 ++--<br>       3 files changed, 11 insertions(+), 11 deletions(-)<br><br>     diff --git a/src/input/decoder.c b/src/input/decoder.c<br>     index 1f5baf4c75..855b4cc8d7 100644<br>     --- a/src/input/decoder.c<br>     +++ b/src/input/decoder.c<br>     @@ -147,7 +147,7 @@ struct decoder_owner<br>           /* Mouse event */<br>           vlc_mutex_t     mouse_lock;<br>           vlc_mouse_event mouse_event;<br>     -    void           *opaque;<br>     +    void           *mouse_opaque;<br>       };<br>       <br>       /* Pictures which are DECODER_BOGUS_VIDEO_DELAY or more in advance probably have<br>     @@ -294,7 +294,7 @@ static void MouseEvent( const vlc_mouse_t *newmouse, void *user_data )<br>       <br>           vlc_mutex_lock( &owner->mouse_lock );<br>           if( owner->mouse_event )<br>     -        owner->mouse_event( newmouse, owner->opaque);<br>     +        owner->mouse_event( newmouse, owner->mouse_opaque);<br>           vlc_mutex_unlock( &owner->mouse_lock );<br>       }<br>       <br>     @@ -571,7 +571,7 @@ static int vout_update_format( decoder_t *p_dec )<br>                   &(vout_configuration_t) {<br>                       .vout = p_vout, .fmt = &fmt,<br>                       .dpb_size = dpb_size + p_dec->i_extra_picture_buffers + 1,<br>     -                .mouse_event = MouseEvent, .opaque = p_dec<br>     +                .mouse_event = MouseEvent, .mouse_opaque = p_dec<br>                   } );<br>       <br>               vlc_mutex_lock( &p_owner->lock );<br>     @@ -1870,7 +1870,7 @@ static decoder_t * CreateDecoder( vlc_object_t *p_parent,<br>           p_owner->b_idle = false;<br>       <br>           p_owner->mouse_event = NULL;<br>     -    p_owner->opaque = NULL;<br>     +    p_owner->mouse_opaque = NULL;<br>       <br>           es_format_Init( &p_owner->fmt, fmt->i_cat, 0 );<br>       <br>     @@ -2598,7 +2598,7 @@ void input_DecoderSetVoutMouseEvent( decoder_t *dec, vlc_mouse_event mouse_event<br>           vlc_mutex_lock( &owner->mouse_lock );<br>       <br>           owner->mouse_event = mouse_event;<br>     -    owner->opaque = user_data;<br>     +    owner->mouse_opaque = user_data;<br>       <br>           vlc_mutex_unlock( &owner->mouse_lock );<br>       }<br>     diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c<br>     index b3fe1faf14..dedba0cf05 100644<br>     --- a/src/video_output/video_output.c<br>     +++ b/src/video_output/video_output.c<br>     @@ -1323,7 +1323,7 @@ static void ThreadProcessMouseState(vout_thread_t *vout,<br>           vout->p->mouse = *m;<br>       <br>           if (vout->p->mouse_event)<br>     -        vout->p->mouse_event(m, vout->p->opaque);<br>     +        vout->p->mouse_event(m, vout->p->mouse_opaque);<br>       }<br>       <br>       static int vout_Start(vout_thread_t *vout)<br>     @@ -1460,7 +1460,7 @@ static void ThreadStop(vout_thread_t *vout)<br>           assert(!vout->p->decoder_pool);<br>       <br>           if (vout->p->mouse_event)<br>     -        vout->p->mouse_event(NULL, vout->p->opaque);<br>     +        vout->p->mouse_event(NULL, vout->p->mouse_opaque);<br>       }<br>       <br>       void vout_Cancel(vout_thread_t *vout, bool canceled)<br>     @@ -1691,7 +1691,7 @@ static vout_thread_t *VoutCreate(vlc_object_t *object,<br>           sys->is_late_dropped = var_InheritBool(vout, "drop-late-frames");<br>       <br>           sys->mouse_event = cfg->mouse_event;<br>     -    sys->opaque = cfg->opaque;<br>     +    sys->mouse_opaque = cfg->mouse_opaque;<br>       <br>           vlc_mutex_init(&sys->filter.lock);<br>       <br>     @@ -1780,7 +1780,7 @@ vout_thread_t *vout_Request(vlc_object_t *object,<br>               vlc_join(sys->thread, NULL);<br>       <br>               sys->mouse_event = cfg->mouse_event;<br>     -        sys->opaque = cfg->opaque;<br>     +        sys->mouse_opaque = cfg->mouse_opaque;<br>               sys->pause.is_on = false;<br>               sys->pause.date  = VLC_TICK_INVALID;<br>       <br>     diff --git a/src/video_output/vout_internal.h b/src/video_output/vout_internal.h<br>     index c4c1ffcd71..ee4ce67463 100644<br>     --- a/src/video_output/vout_internal.h<br>     +++ b/src/video_output/vout_internal.h<br>     @@ -47,7 +47,7 @@ typedef struct {<br>           const video_format_t *fmt;<br>           unsigned             dpb_size;<br>           vlc_mouse_event      mouse_event;<br>     -    void                 *opaque;<br>     +    void                 *mouse_opaque;<br>       } vout_configuration_t;<br>       #include "control.h"<br>       <br>     @@ -160,7 +160,7 @@ struct vout_thread_sys_t<br>           /* */<br>           vlc_mouse_t     mouse;<br>           vlc_mouse_event mouse_event;<br>     -    void            *opaque;<br>     +    void            *mouse_opaque;<br>       <br>           /* Video output window */<br>           vlc_mutex_t     window_lock;<hr>     vlc-commits mailing list<br>     vlc-commits@videolan.org<br>     <a href="https://mailman.videolan.org/listinfo/vlc-commits">https://mailman.videolan.org/listinfo/vlc-commits</a><br><br><br> -- <br> Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez <br> excuser ma brièveté.<hr> vlc-devel mailing list<br> To unsubscribe or modify your subscription options:<br> <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br></blockquote><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a></pre></blockquote></div><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.</body></html>