[vlc-devel] [PATCH] sout: Don't wait until all the es has atleast minimum amount of blocks in fifo

Rémi Denis-Courmont remi at remlab.net
Mon Feb 17 17:57:47 CET 2014


Le dimanche 16 février 2014, 11:53:30 ileoo at videolan.org a écrit :
> From: Ilkka Ollakka <ileoo at videolan.org>
> 
> So if one elemental stream stops inputing data to muxer, it can still mux
> other tracks.

"hat will happen if the ES resumes later? If i_blocks == 1, probably nothing 
too wrong can happen. But if i_blocks >= 2, there was between 1 and i_blocks - 
1 blocks in the queue, I would not be so sure.

(From a quick check, the MP4 muxer is the only case.)

> ---
>  src/stream_output/stream_output.c | 7 -------
>  1 file changed, 7 deletions(-)
> 
> diff --git a/src/stream_output/stream_output.c
> b/src/stream_output/stream_output.c index d01fed5..7fdba01 100644
> --- a/src/stream_output/stream_output.c
> +++ b/src/stream_output/stream_output.c
> @@ -556,14 +556,7 @@ int sout_MuxGetStream( sout_mux_t *p_mux, int i_blocks,
> mtime_t *pi_dts ) block_t *p_data;
> 
>          if( block_FifoCount( p_input->p_fifo ) < i_blocks )
> -        {
> -            if( p_input->p_fmt->i_cat != SPU_ES )
> -            {
> -                return -1;
> -            }
> -            /* FIXME: SPU muxing */
>              continue;
> -        }
> 
>          p_data = block_FifoShow( p_input->p_fifo );
>          if( i_stream < 0 || p_data->i_dts < i_dts )

-- 
Реми Денис-Курмон
http://www.remlab.net/




More information about the vlc-devel mailing list