[vlc-devel] [PATCH] [RFC] demux: remove pf_demux as NULL possiblity
Steve Lhomme
robux4 at gmail.com
Mon Jun 6 18:19:58 CEST 2016
On Mon, Jun 6, 2016 at 5:58 PM, Rémi Denis-Courmont <remi at remlab.net> wrote:
> Le 2016-06-06 13:33, Steve Lhomme a écrit :
>>
>> pf_demux is never NULL in demuxers or access demuxers
>
>
> % git grep "pf_demux = NULL"
> modules/access/alsa.c: demux->pf_demux = NULL;
> modules/access/decklink.cpp: demux->pf_demux = NULL;
> modules/access/linsys/linsys_hdsdi.c: p_demux->pf_demux = NULL;
> modules/access/pulse.c: demux->pf_demux = NULL;
> modules/access/rdp.c: p_demux->pf_demux = NULL;
> modules/access/screen/wayland.c: demux->pf_demux = NULL;
> modules/access/v4l2/demux.c: demux->pf_demux = NULL;
> modules/access/v4l2/radio.c: demux->pf_demux = NULL;
> modules/access/vnc.c: p_demux->pf_demux = NULL;
> modules/access/wasapi.c: demux->pf_demux = NULL;
I need more sleep...
I just checked that pf_demux was set. I didn't imagine some would set
it to NULL.
That means for the demux filter either we use a different callback
than pf_demux. Or we look for the demuxer at the end of the chain to
decide if there's one or not. Both are ugly.
>
>> ---
>> include/vlc_demux.h | 3 ---
>> src/input/input.c | 4 ----
>> 2 files changed, 7 deletions(-)
>>
>> diff --git a/include/vlc_demux.h b/include/vlc_demux.h
>> index f4baeea..5be93b9 100644
>> --- a/include/vlc_demux.h
>> +++ b/include/vlc_demux.h
>> @@ -298,9 +298,6 @@ VLC_API int demux_vaControlHelper( stream_t *,
>> int64_t i_start, int64_t i_end,
>>
>> VLC_USED static inline int demux_Demux( demux_t *p_demux )
>> {
>> - if( !p_demux->pf_demux )
>> - return VLC_DEMUXER_SUCCESS;
>> -
>> return p_demux->pf_demux( p_demux );
>> }
>>
>> diff --git a/src/input/input.c b/src/input/input.c
>> index d4acfda..9c1fb87 100644
>> --- a/src/input/input.c
>> +++ b/src/input/input.c
>> @@ -703,8 +703,6 @@ static void MainLoop( input_thread_t *p_input,
>> bool b_interactive )
>>
>> MainLoopDemux( p_input, &b_force_update );
>>
>> - if( p_input->p->master->p_demux->pf_demux != NULL )
>> - i_wakeup = es_out_GetWakeup( p_input->p->p_es_out );
>> if( b_force_update )
>> i_intf_update = 0;
>> }
>> @@ -2352,8 +2350,6 @@ static input_source_t *InputSourceNew(
>> input_thread_t *p_input,
>> &in->b_can_pace_control ) )
>> in->b_can_pace_control = false;
>>
>> - assert( in->p_demux->pf_demux != NULL || !in->b_can_pace_control );
>> -
>> if( in->p_demux->s != NULL )
>> {
>> if( !in->b_can_pace_control )
>
>
> --
> Rémi Denis-Courmont
> http://www.remlab.net/
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
More information about the vlc-devel
mailing list