LIBPIPEWIRE-MODULE-NETJACK2-MANAGER(7)
π libpipewire-module-netjack2-manager β the Netjack2 manager π
okay bestie so we're talking about libpipewire-module-netjack2-manager(7) from the Miscellaneous Information Manual, and honestly? she's giving β¨ networking royalty β¨. let's get into it π«Ά
π NAME π
libpipewire-module-netjack2-manager β the Netjack2 manager, periodt π
π DESCRIPTION π
so the netjack2 manager module is basically the girl at the party who's listening for new netjack2 driver messages, and the literal second she hears one, she starts a whole communication channel with them. main character behavior fr fr π
those messages? they arrive on a (typically) multicast address. no cap.
okay so normally, the driver is the one who says how many send and receive channels it wants to set up with the manager. it's giving "here's my list bestie". BUT β and this is the plot twist π β if the driver instead specifies a don't-care value of -1, then the manager just uses her own audio.ports and midi.ports configuration values. she's got a backup plan, she's prepared, iconic.
then the manager creates the corresponding streams to send and receive data to/from the drivers. usually these are sinks and sources, but if you've got the netjack2.connect property on? they become streams that get autoconnected to the default source and sink by the session manager. the session manager said "i got you" π«Ά
π MODULE NAME π
libpipewire-module-netjack2-manager
yes she's in the NAME section and also here. she's everywhere. she's the moment.
β¨ MODULE OPTIONS β¨
okay here's the whole menu, no skips, no shortcuts, every single one π
local.ifname= _<str>_ β the interface name to usenet.ip= _<str>_ β multicast IP address, default"225.3.19.154"net.port= _<int>_ β control port, default"19000"net.mtu= _<int>_ β MTU to use, default1500net.ttl= _<int>_ β TTL to use, default1net.loop= _<bool>_ β loopback multicast, defaultfalsenetjack2.connectβ if jack ports should be connected automatically. can also be placed per stream, defaultfalsenetjack2.sample-rateβ the sample rate to use, default48000netjack2.period-sizeβ the buffer size to use, default1024netjack2.encodingβ the encoding,float|opus|int, defaultfloatnetjack2.kbpsβ the number of kilobits per second when encoding, default64audio.portsβ the number of audio ports. can also be added to the stream props. this is the default suggestion for drivers that don't specify any number of audio channels π§midi.portsβ the number of midi ports. can also be added to the stream props. this is the default suggestion for drivers that don't specify any number of midi channels πΉaudio.positionβ default channel position for the number ofaudio.portssource.propsβ extra properties for the source filtersink.propsβ extra properties for the sink filter
πΈ GENERAL OPTIONS πΈ
these are the options with well-known behavior, the classics, the icons we all know and love π
remote.nameaudio.channelsaudio.layoutaudio.positionnode.namenode.descriptionnode.groupnode.virtualmedia.classtarget.objectto specify the remotenode.nameorserial.idto link to
π¦ EXAMPLE CONFIGURATION OF A DUPLEX SINK/SOURCE π¦
here's the vibe, a whole config file, ready to go π
# ~/.config/pipewire/pipewire.conf.d/my-netjack2-manager.conf
context.modules = [
{ name = libpipewire-module-netjack2-manager
args = {
#netjack2.connect = true
#netjack2.sample-rate = 48000
#netjack2.period-size = 1024
#netjack2.encoding = float # float|opus
#netjack2.kbps = 64
#audio.ports = 0
#midi.ports = 0
#audio.channels = 2
#audio.position = [ FL FR ]
source.props = {
# extra source properties
}
sink.props = {
# extra sink properties
}
}
}
]
not me pointing out that every single line in there except the name is commented out π it's a template bestie, you un-comment what you need!
and that's the whole page π
this lil gem comes to you from PipeWire, version 1.6.11, and it lives in the Miscellaneous Information Manual β the page literally titled libpipew...2-manager(7). slay, stay connected, and remember: multicast loves you back πβ¨
π¦ where this page comes from
- fedora 44: pipewire-libs 1.6.11-1.fc44 Β· MIT AND GPL-2.0-or-later AND BSD-2-Clause AND LGPL-2.0-or-later
- fedora 44: pipewire-libs 1.6.11-1.fc44 Β· MIT AND GPL-2.0-or-later AND BSD-2-Clause AND LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms