JACK.PLUMBING(1)
NAME
jack.plumbing - JACK Plumbing Daemon
SYNOPSIS
jack.plumbing
DESCRIPTION
jack.plumbing maintains a set of port connection rules and manages
these as clients register ports with JACK. Port names are implicitly
bounded regular expressions and support sub-expression patterns.
There are three rules: connect, also-connect and connect-exclusive.
- The rule:
- (connect "SuperCollider:out_(.*)" "alsa_pcm:playback_\1")
- ensures that whenever scsynth(1) is running any output ports it registers are connected to appropriate ALSA playback ports. The connect rule only makes a connection if none already exist.
- The rule:
(also-connect "alsa_pcm:playback_1" "jack.udp-[0-9]*:in_1")- ensures that when jack.udp(1) is running in send mode all signals that are ordinarily sent to the local audio interface will also be sent to the network destination. The also-connect aliasing applies to both the left and right hand side of connect rules.
- The rule:
(connect-exclusive "SuperCollider:out_(.*)" "ardour:sc3_in_\1/in 1")- ensures that if SuperCollider and an ardour(1) session with appropriate tracks are both running that SuperCollider gets connected to ardour and disconnected from everything else.
- This type of connection daemon has the following advantages over both environment variables and command line arguments: 1. it does not require any client connection support or logic at all, 2. it provides a uniform user interface to all clients, and 3. it has a somewhat declarative style.
- This type of daemon is very lightweight and non-intrusive: it requires no arguments, it runs from an unprivileged thread, if the rule set is empty it is a no-op, it does not write any files, it does not require any modification to clients or to how clients are started.
- When a set of port registrations is made it checks the modification time of the rule set files, /etc/jack.plumbing and ~/.jack.plumbing, re-reads the rule set if it has been updated, then makes the JACK graph obey the rules.
- Any lines beginning with a semi-colon are ignored.
BUGS
The present implementation does not sort the rule set, rules must be
written in sequence, that is connect-exclusive rules must come after
connect rules.
FILES
/etc/jack.plumbing
~/.jack.plumbing
SEE ALSO
AUTHORS
- Rohan Drape.