From 87c39fe66964e2c4b56d0628a4215b07e258545a Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Wed, 12 Jul 2017 09:41:17 +0200 Subject: PulseAudio: allow to disable the pulseaudio autospawn feature By default pa_context_connect() tries to spawn a new pulseaudio instance if it the connection fails. This is not always desirable. Add a new environment variable: QT_PULSE_NOAUTOSPAWN which - when set - will make QSoundEffect pass the PA_CONTEXT_NOAUTOSPAWN flag to pa_context_connect() thus disabling the autospawn feature. Change-Id: I623639fd5a262c8fefbd683fa9481916e79bdf0e Reviewed-by: Christian Stromme --- src/multimedia/audio/qsoundeffect_pulse_p.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/multimedia/audio') diff --git a/src/multimedia/audio/qsoundeffect_pulse_p.cpp b/src/multimedia/audio/qsoundeffect_pulse_p.cpp index 76cb657e3..5dbc1a0c9 100644 --- a/src/multimedia/audio/qsoundeffect_pulse_p.cpp +++ b/src/multimedia/audio/qsoundeffect_pulse_p.cpp @@ -192,8 +192,9 @@ private Q_SLOTS: const QByteArray srvStrEnv = qgetenv("QT_PULSE_SERVER_STRING"); const char *srvStr = srvStrEnv.isNull() ? 0 : srvStrEnv.constData(); + pa_context_flags_t flags = qEnvironmentVariableIsSet("QT_PULSE_NOAUTOSPAWN") ? PA_CONTEXT_NOAUTOSPAWN : (pa_context_flags_t)0; - if (pa_context_connect(m_context, srvStr, (pa_context_flags_t)0, 0) < 0) { + if (pa_context_connect(m_context, srvStr, flags, 0) < 0) { qWarning("PulseAudioService: pa_context_connect() failed"); pa_context_unref(m_context); unlock(); -- cgit v1.2.1