Ok, so since I have done nothing to change anything from a default UBStudio
16.04, then I should be able to assume I'm working with jackd2.
If I understand your reply, dbus provides some magic that allows pulseaudio
(as installed with UBS16.04) to see when a jackd2 server is started and
create the pulseaudio source/sinks.
and the ds... arguments start the alsa source/sinks
Having just tried it, "jack_control start" from the command line starts
jack and pulse does indeed connect auto-magically. (jackd on the command
line does not).
And it starts jack with the last configuration started. (On this PC that's
firewire, not alsa, I assume it would be the same on my alsa/usb PC, i.e.
starting the last configuration used.)
...the fog begins to clear. ;)
Mac
On Sat, Mar 11, 2017 at 3:09 PM, Len Ovens <len(a)ovenwerks.net> wrote:
On Sat, 11 Mar 2017, Mac wrote:
I'm running multiple PC's with UbuntuStudio 16.04.
I'm trying to figure some differences in what happens between the PC's
when jack
is started.
Questions:
- what is the process of determining what combination of jackd, jackdbus,
jack1,
jack2 is actually being run from the command line or from qjackctl?
- since starting jack from the command line doesn't result with a pulse
source/sink, but starting it from qjackctl does end up with pulse
source/sink and
system source/sink? (And, how do I duplicate what happens when jack is
started
from qjackctl from the command line?)
UbuntuStudio comes with jackd2 by default (same as debian) it can be
changed over to jackd1, but just installing jackd1 will remove lots of
audio SW that depends on jackd2. so the uninstall of jack2 has to happen
without touching the deps and the install of jackd1 needs to happen the
same way. I don't know the commands off hand.
The jackd2 package comes with both jackd and jackdbus. By default qjackctl
will work with jackdbus. The dbus interface is required in order for the
pulseaudio module to autoconnect to jack. It is possible to manually
connect pulse to jackd without the dbus part of jack.
The best way to control jackdbus from the commandline is to use
jack_control. jack_control comes with pretty much zero documentation...
just run jack_control with no options for usage output.
jack_control start
will start jack with saved parameters
jack_control ds alsa dps device hw:D66 dps rate 48000 dps period 128 \
dps nperiods 2 start
will start with new parameters. It is easy to split commands across more
than one line if desired. I normally run:
jack_control ds alsa dps capture none dps playback none
first because qjackctl seems to set capture and playback separately even
for the same device and that resets it.
All of these parameters can be changed on the fly without stopping jack.
Just put in the changes you want (devices, rate, latency, etc) and then
enter:
jack_control sm to make the switch. While jack may survive switching rate
while running, most clients probably won't... latency switching even though
it is possible on a running jack1 as well does not work with all clients
either... but most do. Switching devices is fine so long as they have the
same number of ports... well connections to system ports will get dropped
and need reconnecting anyway. (there are utilities that will do this for
you, check if jack-tools is installed)
--
Len Ovens
www.ovenwerks.net