diff options
author | wm4 <wm4@nowhere> | 2014-05-29 23:56:48 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-05-30 02:15:47 +0200 |
commit | 5929dc458f46f75648af1ee7a293e899e67d8e66 (patch) | |
tree | 6898eb4886328e9cd936ac6a6008acf4bcd6f6ba /stream/vcd_read_fbsd.h | |
parent | 35aba9675dd428f945a09ff9acc20aa068705f46 (diff) | |
download | mpv-5929dc458f46f75648af1ee7a293e899e67d8e66.tar.bz2 mpv-5929dc458f46f75648af1ee7a293e899e67d8e66.tar.xz |
audio/out/push: add mechanism for event-based waiting
Until now, we've always calculated a timeout based on a heuristic when
to refill the audio buffers. Allow AOs to do it completely event-based
by providing wait and wakeup callbacks.
This also shuffles around the heuristic used for other AOs, and there is
a minor possibility that behavior slightly changes in real-world cases.
But in general it should be much more robust now.
ao_pulse.c now makes use of event-based waiting. It already did before,
but the code for time-based waiting was also involved. This commit also
removes one awkward artifact of the PulseAudio API out of the generic
code: the callback asking for more data can be reentrant, and thus
requires a separate lock for waiting (or a recursive mutex).
Diffstat (limited to 'stream/vcd_read_fbsd.h')
0 files changed, 0 insertions, 0 deletions