vlc | branch: master | Thomas Guillem <tho...@gllm.fr> | Tue Feb 7 10:21:22 2017 +0100| [a8b249bc6bf9cfd693389bf2c5c3c403955e241c] | committer: Thomas Guillem
decoder: refactor pf_decode_* callbacks Use only one callback for every decoder types: int (*pf_decode)(decoder_t *, block_t *p_block); There is now only one way to send output frames/blocks from a decoder module: using decoder_QueueVideo(), decoder_QueueAudio() and decoder_QueueSub() functions. This fixes transcoding not receiving any output when a decoder used decoder_Queue*() function. The pf_packetize callback is kept unchanged. A packetizer shouldn't be asynchronous at all (and this simplify the locking for decoder core). The pf_decode callback returns, for now, only one value: SUCCESS. This will allow a module to send more status. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a8b249bc6bf9cfd693389bf2c5c3c403955e241c --- include/vlc_codec.h | 50 ++++--- 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 | 25 ++-- modules/codec/avcodec/audio.c | 18 ++- modules/codec/avcodec/subtitle.c | 17 ++- modules/codec/avcodec/video.c | 19 ++- 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 | 24 ++-- 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 | 17 ++- modules/codec/oggspots.c | 50 ++++--- modules/codec/omxil/mediacodec.c | 75 ++++------ 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 | 14 +- modules/codec/scte27.c | 19 +-- 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 | 22 +-- modules/codec/subsdec.c | 20 ++- modules/codec/substx3g.c | 29 ++-- modules/codec/subsusf.c | 19 ++- modules/codec/svcdsub.c | 24 ++-- modules/codec/svg.c | 19 ++- modules/codec/telx.c | 19 ++- modules/codec/textst.c | 48 +++---- modules/codec/theora.c | 51 ++++--- modules/codec/ttml/substtml.c | 34 ++--- modules/codec/uleaddvaudio.c | 19 ++- modules/codec/videotoolbox.m | 38 +++--- modules/codec/vorbis.c | 35 +++-- modules/codec/vpx.c | 28 ++-- 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/flac.c | 6 +- modules/stream_out/mosaic_bridge.c | 180 ++++++++++++------------ modules/stream_out/transcode/audio.c | 82 ++++++++--- 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 | 55 +++++++- src/input/decoder.c | 228 ++++++++----------------------- src/input/demux.c | 4 +- src/misc/image.c | 44 +++++- 76 files changed, 1410 insertions(+), 1369 deletions(-) Diff: http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=a8b249bc6bf9cfd693389bf2c5c3c403955e241c _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org https://mailman.videolan.org/listinfo/vlc-commits