[vlc-devel] [PATCH 0/8] Replace decoder_t pf_decoder_* callbacks
Thomas Guillem
thomas at gllm.fr
Wed Feb 8 19:53:47 CET 2017
As discussed during the FOSDEM. Here is the big replacement of every
pf_decoder_* callbacks.
This new callback is simpler to handle, no more pointer of pointer to set or
reset (in the past, a lot of modules has been fixed because there were leaking
a *pp_block). Decoder modules will also be able to return a new status.
I tested transcode, a lot of decoder modules, and I was able to build every
modules (expect mmal). Everything are on the commits (04/05/06).
Regards,
Thomas Guillem (8):
decoder: initialise callbacks regarding of the fmt
decoder: fail earlier if the category is unknown
decoder: use one update callback per category
decoder: refactor pf_decode_* callbacks
decoder: add VLCDEC_ECRITICAL status
decoder: add VLCDEC_RELOAD status
transcode/audio: also drain the decoder
transcode/video: also drain the decoder
include/vlc_codec.h | 89 ++++-----
include/vlc_image.h | 3 +
modules/codec/a52.c | 21 ++-
modules/codec/adpcm.c | 19 +-
modules/codec/aes3.c | 37 ++--
modules/codec/aom.c | 28 ++-
modules/codec/araw.c | 22 +--
modules/codec/arib/aribsub.c | 22 +--
modules/codec/avcodec/audio.c | 21 ++-
modules/codec/avcodec/subtitle.c | 17 +-
modules/codec/avcodec/video.c | 42 +++--
modules/codec/bpg.c | 20 +-
modules/codec/cc.c | 19 +-
modules/codec/cdg.c | 19 +-
modules/codec/crystalhd.c | 27 ++-
modules/codec/cvdsub.c | 24 +--
modules/codec/daala.c | 46 +++--
modules/codec/dca.c | 16 +-
modules/codec/ddummy.c | 18 +-
modules/codec/dmo/dmo.c | 94 ++++------
modules/codec/dvbsub.c | 33 ++--
modules/codec/faad.c | 34 ++--
modules/codec/flac.c | 28 +--
modules/codec/fluidsynth.c | 23 +--
modules/codec/g711.c | 29 ++-
modules/codec/gstreamer/gstdecode.c | 44 ++---
modules/codec/jpeg.c | 23 +--
modules/codec/kate.c | 65 ++++---
modules/codec/libass.c | 29 ++-
modules/codec/libmpeg2.c | 18 +-
modules/codec/lpcm.c | 19 +-
modules/codec/mad.c | 14 +-
modules/codec/mft.c | 71 +++-----
modules/codec/mpg123.c | 28 ++-
modules/codec/oggspots.c | 50 +++--
modules/codec/omxil/mediacodec.c | 85 ++++-----
modules/codec/omxil/omxil.c | 94 +++++-----
modules/codec/opus.c | 54 ++++--
modules/codec/png.c | 36 ++--
modules/codec/rawvideo.c | 36 ++--
modules/codec/schroedinger.c | 33 ++--
modules/codec/scte18.c | 15 +-
modules/codec/scte27.c | 13 +-
modules/codec/sdl_image.c | 23 +--
modules/codec/spdif.c | 20 +-
modules/codec/speex.c | 63 ++++---
modules/codec/spudec/spudec.c | 35 ++--
modules/codec/stl.c | 17 +-
modules/codec/subsdec.c | 20 +-
modules/codec/substx3g.c | 30 +--
modules/codec/subsusf.c | 19 +-
modules/codec/svcdsub.c | 24 +--
modules/codec/svg.c | 19 +-
modules/codec/telx.c | 19 +-
modules/codec/textst.c | 49 +++--
modules/codec/theora.c | 51 +++---
modules/codec/ttml/substtml.c | 14 +-
modules/codec/uleaddvaudio.c | 19 +-
modules/codec/videotoolbox.m | 45 ++---
modules/codec/vorbis.c | 35 +++-
modules/codec/vpx.c | 31 ++--
modules/codec/wmafixed/wma.c | 58 +++---
modules/codec/xwd.c | 18 +-
modules/codec/zvbi.c | 20 +-
modules/hw/mmal/codec.c | 28 +--
modules/misc/stats.c | 15 +-
modules/packetizer/a52.c | 1 -
modules/packetizer/dts.c | 1 -
modules/packetizer/flac.c | 6 +-
modules/packetizer/mpeg4audio.c | 1 -
modules/packetizer/mpegaudio.c | 1 -
modules/stream_out/mosaic_bridge.c | 180 +++++++++---------
modules/stream_out/transcode/audio.c | 99 +++++++---
modules/stream_out/transcode/spu.c | 90 ++++++---
modules/stream_out/transcode/transcode.c | 3 +
modules/stream_out/transcode/transcode.h | 22 +++
modules/stream_out/transcode/video.c | 112 ++++++++----
src/input/decoder.c | 301 ++++++++++++-------------------
src/input/demux.c | 4 +-
src/libvlccore.sym | 1 -
src/misc/image.c | 44 ++++-
81 files changed, 1562 insertions(+), 1454 deletions(-)
--
2.11.0
More information about the vlc-devel
mailing list