summaryrefslogtreecommitdiffstats
path: root/audio/out
diff options
context:
space:
mode:
Diffstat (limited to 'audio/out')
-rw-r--r--audio/out/ao.c5
-rw-r--r--audio/out/ao.h6
-rw-r--r--audio/out/internal.h5
3 files changed, 11 insertions, 5 deletions
diff --git a/audio/out/ao.c b/audio/out/ao.c
index 55fcac1a24..313f4f7554 100644
--- a/audio/out/ao.c
+++ b/audio/out/ao.c
@@ -327,6 +327,11 @@ void ao_drain(struct ao *ao)
}
}
+bool ao_eof_reached(struct ao *ao)
+{
+ return ao_get_delay(ao) < AO_EOF_DELAY;
+}
+
bool ao_chmap_sel_adjust(struct ao *ao, const struct mp_chmap_sel *s,
struct mp_chmap *map)
{
diff --git a/audio/out/ao.h b/audio/out/ao.h
index 056cdf7295..59de0c08b1 100644
--- a/audio/out/ao.h
+++ b/audio/out/ao.h
@@ -49,11 +49,6 @@ typedef struct ao_control_vol {
float right;
} ao_control_vol_t;
-// If ao_get_delay() reaches this value after ao_play() was called with the
-// AOPLAY_FINAL_CHUNK flag set, the playback core expects that the audio has
-// all been played.
-#define AO_EOF_DELAY 0.05
-
struct ao;
struct mpv_global;
struct input_ctx;
@@ -77,5 +72,6 @@ void ao_reset(struct ao *ao);
void ao_pause(struct ao *ao);
void ao_resume(struct ao *ao);
void ao_drain(struct ao *ao);
+bool ao_eof_reached(struct ao *ao);
#endif /* MPLAYER_AUDIO_OUT_H */
diff --git a/audio/out/internal.h b/audio/out/internal.h
index 4214c6c1d6..cc3abb14f5 100644
--- a/audio/out/internal.h
+++ b/audio/out/internal.h
@@ -27,6 +27,11 @@
// Minimum buffer size in seconds.
#define MIN_BUFFER 0.2
+// If ao_get_delay() reaches this value after ao_play() was called with the
+// AOPLAY_FINAL_CHUNK flag set, the playback core expects that the audio has
+// all been played.
+#define AO_EOF_DELAY 0.05
+
/* global data used by ao.c and ao drivers */
struct ao {
int samplerate;