Just pased trough quest of Jack and Pulse coexistence on Fedora.
Generally I happy with Pulseaudio, but sometimes need Jack audio.
My solution working on Fedora 23.
dnf install jack-audio-connection-kit jack-audio-connection-kit-dbus qjackctl
Don't touch /etc/pulse/default.pa !
There a relevant fragment of ~/.config/rncbc.org/QjackCtl.conf
names of sink for pactl can be found by command:
There a one more fragment of ~/.config/rncbc.org/QjackCtl.conf to show full commands
StartupScriptShell=pactl suspend-sink alsa_output.pci-0000_00_1b.0.analog-stereo 1
PostStartupScriptShell=pactl set-default-sink jack_out
ShutdownScriptShell="pactl unload-module module-jack-sink; pactl load-module module-jack-source"
PostShutdownScriptShell="pactl suspend-sink alsa_output.pci-0000_00_1b.0.analog-stereo 0; pactl set-default-sink alsa_output.pci-0000_00_1b.0.analog-stereo"
There, "Enable D-Bus interface" important for Qjackctl itself.
How it work
Now on boot PC work with PulseAudio only. All automatic work as without Jack.
After launch of Qjackctl,
- Qjackctl Startup script suspend primary audio card in Plseuaudio and allow Jackj get access to it "pactl suspend-sink alsa_output.pci-0000_00_1b.0.analog-stereo 1"
- Jack started over d-bus "jack_control start"
- Pulse automatically detect jack start over D-Bus and load jack sink and jack source.
- Qjackctl after Startup script change default sink in Pulse to jack_out. (I meet it not done itself) "pactl set-default-sink jack_out" (at first it look unnecessary, as all running PA clients switched to new sink, but new apps stuck on suspended sink without this command)
So system reconfigured to use "Pulse on top of Jack". (There I skip hardware input suspend, because I not use it anyway)
If "Stop JACK audio server on application exti" not checked, I can close Qjackctl and rerun it not disturbing setup.
After stop Jack by Qjackctl, all return back to plain uncluttered Pulse!
- Jackd stop by Qjackctl over dbus - "Enable D-bus interface" option.
- jack-source and jack-sink removed from Pulseaudio automaticaly by d-bus
- default sink in Pulse audio switched to audio card because jack-out disappear
- Qjackctl after Shutdown script activate audio card back in Pulseaudio "pactl suspend-sink alsa_output.pci-0000_00_1b.0.analog-stereo 1"
- jackd (from package pulseaudio-utils)
- jack_control (from package ack-audio-connection-kit-dbus)
- Qjackctl (from package pulseaudio-utils)
- pactl to control Pulseaudio from sctipts (from package pulseaudio-utils)