On Thu, 15 Aug 2024, Marc Lavallée wrote:

I made a copy of the pipewire config (~/.config/pipewire/pipewire.conf)

I disabled dbus and added autoloading of the jack-tunnel module:

support.dbus = false
module.jackdbus-detect = false
module.jack-tunnel = true

Ok


I added a config file: ~/.config/pipewire/pipewire.conf.d/jack-tunnel.conf

Its content is based on what is in the source code of the module:

context.modules = [
{   name = libpipewire-module-jack-tunnel
    args = {
        #jack.library     = libjack.so.0
        #jack.server      = null
        jack.client-name = MyPipeWireTunnel
        #jack.connect     = true
        #tunnel.mode      = duplex
        #midi.ports       = 0
        #audio.channels   = 2
        #audio.position   = [ FL FR ]
        source.props = {
            # extra sink properties
        }
        sink.props = {
            # extra sink properties
        }
    }
}
]

I notice both midi.ports and audio.channels are commented out is that why there are three ports in each direction? WHat does jack.lsp -t say about:
MyPipeWireTunnel:playback_0
MyPipeWireTunnel:capture_0
Are they audio or midi?

Anyway looks good. Time to start playing with PW again.

Then I restarted pipewire. The jack sinks are present in pipewire, and also the pipewire jack clients. With 2 channels (stereo).

Does this mean they show up on the jackd graph or just the pw jack graph?

I guess I want all three: pw as pulse, pw_jack and jackd... though actually the pw_jack graph is of little interest if pw_pulse shows the jackd ports for now. I suppose at some point some desktop apps may choose to interface direct to PW_jack.

jack_lsp is reporting:
MyPipeWireTunnel:playback_FL
MyPipeWireTunnel:playback_FR
MyPipeWireTunnel:playback_0
MyPipeWireTunnel:capture_FL
MyPipeWireTunnel:capture_FR
MyPipeWireTunnel:capture_0

The jack server was started automatically by pipewire, even if I disabled jackdbus in /usr/share/dbus-1/services/org.jackaudio.service (I commented out the last line: # Exec=/usr/bin/jackdbus auto)

Pipewire used ~/.jackdrc to start jackd. If this file is not present, pipewire don't work, so there's now a
dependency between pipewire and jack;
pipewire is actually waiting for a ~/.jackdrc file, so once it's created by QJackCtl, pipewire starts.

Good to know. One more question: can you start more than one jack tunnel? Say one for midi and one for audio? More than one audio?


--
Len Ovens
www.ovenwerks.net
_______________________________________________
Linux-audio-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to