[vlc-devel] [PATCH] decoder: empty the input fifo on delete
    Rémi Denis-Courmont 
    remi at remlab.net
       
    Wed Sep  2 12:31:24 CEST 2015
    
    
  
Le 2015-09-02 13:22, Thomas Guillem a écrit :
> This speeds up decoder termination.
Looks to me that this is actually slower due to contention.
b_flushing is what speeds it up (already).
> ---
>  src/input/decoder.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/src/input/decoder.c b/src/input/decoder.c
> index 25eac79..2926568 100644
> --- a/src/input/decoder.c
> +++ b/src/input/decoder.c
> @@ -1823,6 +1823,12 @@ void input_DecoderDelete( decoder_t *p_dec )
>
>      /* Make sure we aren't paused/waiting/decoding anymore */
>      vlc_mutex_lock( &p_owner->lock );
> +
> +    /* Empty the fifo */
> +    vlc_fifo_Lock( p_owner->p_fifo );
> +    block_ChainRelease( vlc_fifo_DequeueAllUnlocked( p_owner->p_fifo 
> ) );
> +    vlc_fifo_Unlock( p_owner->p_fifo );
> +
>      p_owner->b_paused = false;
>      p_owner->b_waiting = false;
>      p_owner->b_flushing = true;
-- 
Rémi Denis-Courmont
http://www.remlab.net/
    
    
More information about the vlc-devel
mailing list