Skip to main content

A collection of utilities and tools for the JACK audio ecosystem

Project description


A collection of utilities and tools for the JACK audio ecosystem

JACK Transport

The scripts in the jackaudiotools.transport package query or manipulate the JACK transport state.

They require the JACK-Client package to be installed, which will be installed automatically, when you install the jack-audio-tools distribution via pip:

pip install jack-audio-tools


JACK client which allows to control transport state via MIDI.

The client provides a MIDI input and converts received MIDI system real-time and MIDI machine control (MMC) messages into JACK transport commands.

The following MIDI messages, when received, start the JACK transport:

  • START (System Real-time)
  • CONTINUE (System Real-time)
  • PLAY (MMC)

These messages stop the transport:

  • STOP (System Real-time)
  • STOP (MMC)

And these rewind the transport to frame zero:


MMC messages are ignored, if the device number in the MMC System Exclusive message does not match the client's device number (set with the -d command line option).

If the client's device number is set to 127 (the default), it matches all MMC message device numbers.


JACK client which allows to control transport state via MIDI.

A variant of midi_to_transport, which uses the python-rtmidi package as a MIDI backend instead of JACK-Cleint, which is slightly more efficient, because MIDI input processing is happening in a C++ thread instead of a Python callback.

To use it, specify the rtmidi extra dependency when installing the jack-audio-tools distribution via pip:

pip install "jack-audio-tools[rtmidi]"


A simple JACK timebase master, which provides musical timing related information (i.e. currents bar, beats per bar, beat denominator, BPM etc.) to other JACK clients.


Query or change the JACK transport state.


The scripts in the jackaudiotools.lv2 package help with querying information from the LV2 plugins installed on the system.

They require the lilv Python bindings to be installed. Unfortunately, these can not be installed from the Python Package Index. Instead, install a recent version of the lilv library, either from your distribution's package repository or from source.


Print URIs of all installed LV2 plugins matching the given regular expression.

Can optionally output the list of matching plugins in JSON format, where each list item is an object with the plugin name and uri and optionally the list of categories the plugin belongs to, as properties.


Print a list of all URIs associated with an LV2 plugin.


List all presets of an LV2 plugin with the given URI.


Generate a JSON document with information about a single or all installed LV2 plugins. This allows plugin meta data to be loaded quickly in other programs.

Depending on the number of plugins installed on your system, this script may run for several seconds or even minutes and produce an output file of several megabytes in size.


The scripts in the jackaudiotools.carla package manipulate or query Carla project files.


Export plugin settings from a Carla project file (.carxp) as LV2 preset bundles.

This script requires the rdflib package to be installed. To install it, specify the rdflib extra dependency when installing the jack-audio-tools distribution via pip:

pip install "jack-audio-tools[rdflib]"


This software is distributed under the MIT License.

See the file LICENSE for more information.


This software is written by Christopher Arndt.

Project details

Download files

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

Files for jack-audio-tools, version 0.3.1
Filename, size File type Python version Upload date Hashes
Filename, size jack_audio_tools-0.3.1-py3-none-any.whl (47.8 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size jack-audio-tools-0.3.1.tar.gz (35.0 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page