You are here

Add new comment

rncbc's picture

yes you're right. qjackctl does function in either of two modes depending whether the jack-server is already running at the time it gets started:

  • if the jack-server is not yet running: qjackctl enters in "Stopped" state; pressing the "Start" button will start the jack-server under its control which leads to the "Started" normal state; pressing "Stop" button will actually terminate the previously started jack-server and will return to the initial "Stopped" state.
  • if the jack-server is already up and running: qjackctl enters the "Active" state and will function as a normal client only; pressing the "Stop" button just deactivates the client functions and will get to the "Inactive" state; it does NOT try to stop the current jack-server whatsoever; pressing the "Start" button gets you back to initial "Active" state and so on.

now, take special attention to this: the jack-server is in fact indirectly started by either jackdbus (the d-bus service controller or whatever it's called) or jackd (the original command-line program and process).

  • if qjackctl is configured to enable the d-bus interface then, pressing the "Start" button from a "Stopped" state will start the jack-server via the jackdbus service which might be auto-started on first time you invoke it--the important thing to note here is that jackdbus process IS NOT the same as the jack-server process; one commands the other, not the other way around.
  • if qjackctl is configured otherwise (ie. d-bus interface disabled) then the regular jackd command-line interface is in charge of starting the jack-server process as always been, ever since its inception 10 years ago :).

the fact that jackd gets automatically started by various applications is a classic feature controlled by the contents of ~/.jackdrc file in your home directory. there you'll find the exact command-line that is run when a jack-enabled application is launched and the jack-server is not up and running at the time.