diff options
author | wm4 <wm4@nowhere> | 2019-10-11 19:25:45 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2019-10-11 19:25:45 +0200 |
commit | c84ec021287d72d122071d5c211f9bfbeb13a3fe (patch) | |
tree | 563612b5ecef18b9d26889445cbd53914e184b62 /audio/out/ao.h | |
parent | 52f3dee16a81ca4ed4d3a5a12e5f4fbf74cc3ddb (diff) | |
download | mpv-c84ec021287d72d122071d5c211f9bfbeb13a3fe.tar.bz2 mpv-c84ec021287d72d122071d5c211f9bfbeb13a3fe.tar.xz |
ao: add API for underrun reporting
AOs can now call ao_underrun_event() (in any context) if an underrun has
happened. It will print a message.
This will be used in the following commits. But for now, audio.c only
clears the underrun bit, so that subsequent underruns still print the
warning message.
Since the underrun flag will be used in fragile ways by the playback
state machine, there is the "reports_underruns" field that signals
strong support for underrun reporting. (Otherwise, underrun events will
not be used by it.)
Diffstat (limited to 'audio/out/ao.h')
-rw-r--r-- | audio/out/ao.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/audio/out/ao.h b/audio/out/ao.h index d66391ef1d..f8b3e676fa 100644 --- a/audio/out/ao.h +++ b/audio/out/ao.h @@ -49,6 +49,7 @@ enum { AO_EVENT_RELOAD = 1, AO_EVENT_HOTPLUG = 2, AO_EVENT_INITIAL_UNBLOCK = 4, + AO_EVENT_UNDERRUN = 8, }; enum { @@ -100,6 +101,7 @@ void ao_get_format(struct ao *ao, int *samplerate, int *format, struct mp_chmap *channels); const char *ao_get_name(struct ao *ao); const char *ao_get_description(struct ao *ao); +bool ao_get_reports_underruns(struct ao *ao); bool ao_untimed(struct ao *ao); int ao_play(struct ao *ao, void **data, int samples, int flags); int ao_control(struct ao *ao, enum aocontrol cmd, void *arg); |