On Thu, July 20, 2017 16:21, Chris Caudle wrote:
On Thu, July 20, 2017 5:35 am, Yuri wrote:
The fact that any DBus-linked program requires X
indicates some
problem. This should never happen.
It did not require X, just that the DISPLAY environment variable be set.
Explained later by Rowan.
according to common/Jackdmp.cpp:320 it seems that the environment variable
$JACK_NO_AUDIO_RESERVATION would be the envisioned way to go. i haven't
found this in the manpage, probably it's missing.
what if there would be a variable that if NOT set would fallback when DBus
fails:
#if defined(JACK_DBUS) && defined(__linux__)
if (getenv("JACK_NO_AUDIO_RESERVATION")) {
server_ctl = jackctl_server_create(NULL, NULL);
}
else {
server_ctl = jackctl_server_create(audio_acquire, audio_release);
/* If device reservation with DBus failed and fallback isn't
* explicitely turned off, try to start without DBus
*/
if (server_ctl == NULL && !getenv("JACK_NO_DBUS_FALLBACK")) {
fprintf(stderr, "Failed to connect to DBus. Falling back...\n");
server_ctl = jackctl_server_create(NULL, NULL);
}
}
cheers
Tom