[vlc-devel] [RFC PATCH 0/2] decoder: remove legacy flush calls

Thomas Guillem thomas at gllm.fr
Thu Dec 3 18:22:39 CET 2015


Yes I started it and I'll finish tomorrow if nobody is against it (40 files
remaining).

Why now ? Because 2 commits didn't fix the legacy flush call. Currently, if a
decoder has a packetizer, the decoder won't be flushed. So, maybe it's
easier/quicker to fix it by removing this legacy call.

P.S: I'm not sure about libmpeg2, do I need to also do:

if( mpeg2_parse( p_sys->p_mpeg2dec ) == STATE_BUFFER )
{
    if( p_sys->p_synchro &&
        p_sys->p_info->sequence &&
        p_sys->p_info->sequence->width != (unsigned)-1 )
    {
        decoder_SynchroReset( p_sys->p_synchro );
        if( p_sys->p_info->current_fbuf != NULL &&
            p_sys->p_info->current_fbuf->id != NULL )
        {
            p_sys->b_garbage_pic = true;
        }
        if( p_sys->b_slice_i )
        {
            decoder_SynchroNewPicture( p_sys->p_synchro,
                                       I_CODING_TYPE, 2, 0, 0,
                                       p_sys->p_info->sequence->flags &
                                                    SEQ_FLAG_LOW_DELAY );
            decoder_SynchroDecode( p_sys->p_synchro );
            decoder_SynchroEnd( p_sys->p_synchro, I_CODING_TYPE, 0 );
        }
    }
}


Thomas Guillem (2):
  WIP: decoder: implement pf_flush for all decoders/packetizers
  decoder: remove legacy flush call

 modules/codec/a52.c              | 21 +++++++++++++++++---
 modules/codec/adpcm.c            | 12 ++++++++++++
 modules/codec/aes3.c             | 11 +++++++++++
 modules/codec/araw.c             | 12 ++++++++++++
 modules/codec/avcodec/audio.c    | 26 ++++++++++++++++++-------
 modules/codec/avcodec/video.c    | 27 +++++++++++++++++++-------
 modules/codec/cc.c               | 16 ++++++++++++++--
 modules/codec/cdg.c              | 12 ++++++++++++
 modules/codec/dts.c              | 20 +++++++++++++++++---
 modules/codec/dvbsub.c           | 14 +++++++++++++-
 modules/codec/faad.c             | 14 +++++++++++++-
 modules/codec/flac.c             | 14 +++++++++++++-
 modules/codec/fluidsynth.c       | 21 +++++++++++++-------
 modules/codec/g711.c             | 11 ++++++++++-
 modules/codec/gstdecode.c        | 41 ++++++++++++++++++++++++----------------
 modules/codec/kate.c             | 18 ++++++++++++++++++
 modules/codec/libass.c           | 14 +++++++++++++-
 modules/codec/libmpeg2.c         |  1 +
 modules/codec/lpcm.c             | 14 +++++++++++++-
 modules/codec/mpeg_audio.c       | 21 +++++++++++++++++---
 modules/codec/mpg123.c           | 14 +++++++++++++-
 modules/codec/omxil/mediacodec.c | 17 ++++++++++++++++-
 modules/codec/omxil/omxil.c      | 25 +++++++++++++++++-------
 src/input/decoder.c              | 24 -----------------------
 24 files changed, 333 insertions(+), 87 deletions(-)

-- 
2.1.4



More information about the vlc-devel mailing list