[vlc-devel] [RFC PATCH 0/6] aout and vout drain
Thomas Guillem
thomas at gllm.fr
Thu Mar 16 16:43:19 CET 2017
* The 2 first patches replace the following patches
"[PATCH 1/2] vout: add vout_Drain()" and "[PATCH 2/2] decoder: drain the vout".
This a much less invasive and more generic change for the same result.
* Then, for the next 4 patches, I tried do do the same thing with aouts: don't
block the decoder (or the input thread) while the aout is draining (we may want
to pause, flush or stop while draining).
I separated this change into 4 patches for more readability on the mailing
list. If accepted, they should be merged into one, as each patches change the
aout behavior (this will make a future git bisect difficult if it's not
merged).
This set lacks the support of drain callback for amem and alsa, and maybe some
others (I didn't check every aouts since it's only a RFC).
Thomas Guillem (6):
decoder: don't finish while draining
vout: fix vout_IsEmpty
aout: don't wait from flush
aout: add drain cb and a default implementation
pulse: implement drain
decoder: use asynchronous aout_DecDrain
include/vlc_aout.h | 16 ++++--
modules/audio_output/adummy.c | 4 +-
modules/audio_output/alsa.c | 10 ++--
modules/audio_output/amem.c | 17 ++++--
modules/audio_output/audiotrack.c | 25 ++-------
modules/audio_output/audiounit_ios.m | 2 +-
modules/audio_output/coreaudio_common.c | 24 +-------
modules/audio_output/file.c | 5 +-
modules/audio_output/mmdevice.c | 4 +-
modules/audio_output/mmdevice.h | 11 +---
modules/audio_output/pulse.c | 46 ++++++++++++---
modules/audio_output/sndio.c | 5 +-
src/audio_output/aout_internal.h | 11 +++-
src/audio_output/dec.c | 38 +++++++++----
src/audio_output/output.c | 99 ++++++++++++++++++++++++++++-----
src/input/decoder.c | 26 ++++-----
src/video_output/video_output.c | 26 +++++++--
src/video_output/vout_internal.h | 2 +
18 files changed, 242 insertions(+), 129 deletions(-)
--
2.11.0
More information about the vlc-devel
mailing list