Skip to main content

Auto-connect new JACK ports.

Project description

Auto-connect JACK ports as they appear and match the patterns given on the command line.

Description

A small command line utility that reacts to JACK port registrations by clients and connects them when they match one of the port pattern pairs given on the command line at startup.

The port name patterns are specified as pairs of positional arguments and are interpreted as Python regular expressions, where the first pattern of a pair is matched against output (readable) ports and the second pattern of a pair is matched against input (writable) ports. Matching is done against the normal port names as well as any aliases they have (run “jack-matchmaker -la” to list all available ports with their aliases).

As many pattern pairs as needed can be given.

Usage

Automatically connect the first two ports of Fluidsynth to the audio outs:

jack-matchmaker "fluidsynth:l_01" "system:playback_1" \
                "fluidsynth:r_01" "system:playback_2"

Both the output port and the input port patterns can be regular expressions. If a match is found on an output port, the matching port will be connected to all input ports, which match the corresponding input port pattern:

jack-matchmaker "fluidsynth:l_\d+" "system:playback_[13]" \
                "fluidsynth:r_\d+" "system:playback_[24]"

You can also use named regular expression groups in the output port pattern and fill the strings they match to into placeholders in the input port pattern:

jack-matchmaker "system:midi_capture_(?P<num>\d+)" \
                "mydaw:midi_in_track_{num}"

Run jack-matchmaker -h (or --help) to show help on the available command line options.

Requirements

  • A version of Python 3 with a ctypes module (i.e. PyPy 3 works too) .

  • JACK version 1 or 2.

  • Linux, OS X (untested) or Windows (untested).

Acknowledgements

jack-matchmaker is written in Python and incorporates the jacklib module taken from falkTX’s Cadence application.

It was inspired by jack-autoconnect, which also auto-connects JACK ports, but doesn’t support port aliases. jack-autoconnect also written in C++, and therefore probably faster and less memory hungry.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

jack-matchmaker-0.2.1.zip (25.4 kB view details)

Uploaded Source

jack-matchmaker-0.2.1.tar.gz (20.6 kB view details)

Uploaded Source

Built Distribution

jack_matchmaker-0.2.1-py3-none-any.whl (17.5 kB view details)

Uploaded Python 3

File details

Details for the file jack-matchmaker-0.2.1.zip.

File metadata

File hashes

Hashes for jack-matchmaker-0.2.1.zip
Algorithm Hash digest
SHA256 392a866b0981b91bf8c173533e94f882430005ed638b79d9bccffa899a033773
MD5 109874580464da9d4087c67a6d465c59
BLAKE2b-256 75061f01c7416e9a3fb2885785bb0b171ba43527c8b39cb803a33ffb5677c5ec

See more details on using hashes here.

File details

Details for the file jack-matchmaker-0.2.1.tar.gz.

File metadata

File hashes

Hashes for jack-matchmaker-0.2.1.tar.gz
Algorithm Hash digest
SHA256 cf8a2056461f30b02b4fbbf9e31377b2e8990cfcb37606ffa6d84997f36f5364
MD5 7ec1f7ccfcc6632e0d011ce3417bac33
BLAKE2b-256 4902da2d9c692442c4507f8bd19f02aa672a7e2fd54000bcf3fb64fde03be91d

See more details on using hashes here.

File details

Details for the file jack_matchmaker-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for jack_matchmaker-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5e3980506f20ddb82169a9a291f8c536c9e9068c1bd56b79edbad5f425637a74
MD5 b501d5fb512f6da281934a001aa787f4
BLAKE2b-256 56800885f86a914fc4cf15eed2853d9e77bdb4ba81a6b1a7e3d0adca94e0e88f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page