You are here

Jack device vs. actual audio output

Hi,
I found this forum suggested on another page and hope you'll be able to help.
I have a Lenovo T460 with KDE Neon, and a T470 with Ubuntu Studio installed. Also have a Lexicon Alpha and an mbox2 USB audio interface. with any combination of the above, I try to use the usb interface for Jack, which is starting up without any complaint, but any software I try to use with Jack, the actual audio output is not coming from the USB interfaces but from the built-in speakers. Do you have any idea where I should look to figure out what's going wrong?
May this be depending on pipewire? I didn't install anything manually but e.g. on Neon I see below packages:
kpipewire-bin
libkpipewire5
libkpipewirerecord5
libpipewire-0.3-0:amd64
libpipewire-0.3-common
libpipewire-0.3-modules:amd64
pipewire:amd64
pipewire-bin
pipewire-media-session
qml-module-org-kde-pipewire

and two matching processes:
/usr/bin/pipewire
/usr/bin/pipewire-media-session

If I set e.g. Hydrogen to use Alsa, I get output on the USB audio interface.

Forums: 
rncbc's picture

hi,

you must always tell the exact and intended device to JACK as its main and primary sound device; otherwise it takes the first or default which often is the internal one (hda intel?) and not the USB or any other you may have...

reckoning you're on pipewire and not genuine jackd, you'll have to tell pipewire/jack.conf which device is your primary (USB?) for all pipewire-jack purposes.

I can't help you much further here (re. pipewire configuration) sorry; if it were genuine-jackd(bus) it would be done, for instance, in qjackctl / Setup / Settings / Parameters / Interface set to "hw:USB" perhaps, but it would depend on how exactly your system names the device in question; but not like so in PW, so sorry.

maybe you need pipewire-pulse and pavucontrol installed too, and then on the later, selecting an appropriate profile/device will do the trick?

ask the PW forums, and then share the knowledge, if you reach a verdict ;)

hth. cheers

Thank you very much, I am not familiar with PW too, it actually sneaked in with the distro I think - will come back and share if I get anywhere. I thought setting the device in qjackctl settings page will do the job.

I don't know if I understood the problem correctly.
But if you work with PipeWire, in principle you have all the hardware inputs and outputs available.

With Qpwgraph you route the hardware input you want to the Jack application (Qtractor, Hydrogen on Jack...), and from the application to the hardware output of your choice.

https://www.rncbc.org/drupal/node/2506

rncbc's picture

yes, that's all true, but the JACK eco-system relies on a primary device as default, being the one that native JACK applications connect to automatically, if not told explicitly otherwise.

sure qpwgraph and qjackctl patchbays maybe used to workaround and re-connect any application, but the problem is the fact that some JACK clients auto-connect themselves on startup to the default ("system") device, usually the first internal or integrated mic (for input) and speakers (for output).

also, qjackctl when under PW premises, just functions as a pure jack-client ("Active" is displayed in main window); you may use most of its functionality but the Setup / Settings, which are only applicable to configure the genuine jackd(bus) service; when in this mode the sole parameter you may change in settings is the buffer-size (in frames/buffer).

hth.

As rncbc pointed out, it was a partial existence of PW in Ubuntu, if I read it correctly it's coming with any recent release somehow supporting browsers only. It was a long journey finding instructions online tailored to Ubuntu installing pipewire and set up to work with pulse, jack. In first round I was stuck at a point built-in spearkers worked, headphone/line out not, but my bluetooth headset became working which was promising as it never appeared as an option at all. At this point, if I don't connect Zyn-fusion to anything, it still shows a working state via VU meters, but even this stopped working when I connected a USB device (let it be any of them). Also when I started Jack in this state I got a bunch of errors like Invalid container address 'engine':'sync':'(null)' supplied to method 'GetParameterValue'.. (org.jackaudio.Error.InvalidArgs) , and a single forum where someone got rid of it by deleting ~/.config/rncbc.org/QjackCtl.conf , and surprisingly this also made everything working, including the USB interfaces (however I don't understand what's happening under the hood).

So again, thank you very much for the help!

Add new comment