summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--DOCS/man/ao.rst4
-rw-r--r--audio/out/ao_pulse.c4
2 files changed, 7 insertions, 1 deletions
diff --git a/DOCS/man/ao.rst b/DOCS/man/ao.rst
index 04994058c3..a0c5052b46 100644
--- a/DOCS/man/ao.rst
+++ b/DOCS/man/ao.rst
@@ -152,6 +152,10 @@ Available audio output drivers are:
If you have stuttering video when using pulse, try to enable this
option. (Or try to update PulseAudio.)
+ ``--pulse-allow-suspended=<yes|no>``
+ Allow mpv to use PulseAudio even if the sink is suspended (default: no).
+ Can be useful if PulseAudio is running as a bridge to jack and mpv has its sink-input set to the one jack is using.
+
``sdl``
SDL 1.2+ audio output driver. Should work on any platform supported by SDL
1.2, but may require the ``SDL_AUDIODRIVER`` environment variable to be set
diff --git a/audio/out/ao_pulse.c b/audio/out/ao_pulse.c
index e288841788..7363a56c1e 100644
--- a/audio/out/ao_pulse.c
+++ b/audio/out/ao_pulse.c
@@ -61,6 +61,7 @@ struct priv {
char *cfg_host;
int cfg_buffer;
int cfg_latency_hacks;
+ int cfg_allow_suspended;
};
#define GENERIC_ERR_MSG(str) \
@@ -482,7 +483,7 @@ static int init(struct ao *ao)
pa_threaded_mainloop_wait(priv->mainloop);
}
- if (pa_stream_is_suspended(priv->stream)) {
+ if (pa_stream_is_suspended(priv->stream) && !priv->cfg_allow_suspended) {
MP_ERR(ao, "The stream is suspended. Bailing out.\n");
goto unlock_and_fail;
}
@@ -837,6 +838,7 @@ const struct ao_driver audio_out_pulse = {
OPT_STRING("host", cfg_host, 0),
OPT_CHOICE_OR_INT("buffer", cfg_buffer, 0, 1, 2000, ({"native", 0})),
OPT_FLAG("latency-hacks", cfg_latency_hacks, 0),
+ OPT_FLAG("allow-suspended", cfg_allow_suspended, 0),
{0}
},
.options_prefix = "pulse",