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 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.0.zip (25.1 kB view details)

Uploaded Source

jack-matchmaker-0.2.0.tar.gz (20.5 kB view details)

Uploaded Source

Built Distribution

jack_matchmaker-0.2.0-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for jack-matchmaker-0.2.0.zip
Algorithm Hash digest
SHA256 a19954a1d912b6a1322b5b780e193789b30bf1b5987d09b7d1f411b8cb401606
MD5 135c520f78f66aed2bea0f8a92a8e597
BLAKE2b-256 08222d25ca67f2042e7690a19bdbc624377a6114a318ca15f563bf0525ce66eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for jack-matchmaker-0.2.0.tar.gz
Algorithm Hash digest
SHA256 355c6ea74cb90eb37235371a3a3341cee519e6011e5c453401e4b5167824bd4f
MD5 2232332ca673c251fc888572fcd6a52e
BLAKE2b-256 74279973cf117faab3e46d2b96c8cc422c6d7c4225997bc7b8488298911dcbd5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for jack_matchmaker-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 93f89bfa6166861cfaed3c57905748b107883efdb963ecf53113e374b27aa5b0
MD5 b5e2999251c3d343f59b74f86d3c44f5
BLAKE2b-256 d8ddb74a64cb361fc82895505ad09c01e2ce3ad4f47a24c094fe45233e26de1d

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