JACK/LV2 CV ports

The JACK audio system and LV2 plugin format both provide CV port support that allows the patching of audio-rate parameter control signals between clients/plugins, enabling a multi-app modular environment that can be connected with hardware for a hybrid setup. This is an adapted copy of a post on LinuxMusicians.com regarding the ecosystem so far, and I thought it would be a natural fit to cross-post for users and developers on the lines.

Ingen (^) was the first LV2 host to support CVPort, then Non-Mixer and Non-Timeline followed with JACK CV support for automation. More recently the JACK metadata mechanism enabling CV ports was added to JACK2, and CV support is now found in JACK clients/LV2 hosts Carla (v), Synthpod, Jalv, mod-host and Zrythm, with hardware support on the (almost available) MOD Duo X and (eventually) Zynthian devices.

The LV2 format also allows for metadata relating to the min, max and “unit” values for the CVPort. Carla also passes this metadata on to any exposed JACK CV ports, and also allows plug-in parameters to be exposed as CV ports.

In LV2/Ingen:

JACK client/LV2 host commits:

Plugins and plugin suites with support:

(ZLFO in Ingen ^ (Alex put a lot of work into ZLFO recently, though it still has some buggy edges! i.e. doesn’t work in Ingen beyond loading for the screenshot above as an example of Ingen embed-GUI-in-graph option))


  • mod-spi2jack - JACK client for converting SPI to a JACK control-voltage stream and vice-versa
  • midimsg-lv2 - basic MIDI aftertouch, CC and mod wheel to CV
  • MIDIMonster - Multi-protocol translation software (ArtNet, MIDI, OSC, …)
  • mod-fake-control-voltage - A small Jack-internal client to simulate the physical CV-ports
  • jm2cv - older, doesn’t use JACK metadata

Plug-in frameworks that support CV:

Sequencing is possible from MIDI (via mod-midi-to-cv-mono, mod-midi-to-cv-poly, midi2cv of Carla, Note of Ingen, or MIDIMonster), or by using Non-Timeline. True CV recording and sequencing does not exist yet.

More info on the MOD plugins here, here and here, with discussion on the MOD forums, and more on Zynthian there.


Here are some shots of Carla plugin dialog with the CV port filter enabled;

And a basic poly setup;

I had no idea this existed. It looks fantastic. Thank you so much for the introduction!

1 Like

In addtion to that: There is an introduction to Carla from 2017 by FalkTX the developer of Carla and also current JACK maintainer.

A related talk by falktx being Sonoj 2019: JACK/NSM Applications in Carla and Carla as Wine plugin which features VCV Rack.

I did a quick-n-dirty drone thing with Carla a couple of days ago, no real tuning or sequencing, spot the bugs!

A wee update on the modular kick above, slightly more a drum machine now;


Carla is has seen various updates. A solution for sequencing has not arrived yet though…

Benn ‘The Flashbulb’ Jordan reviewing the Poly Digit/Beebo which use LV2 CV ports and the Ingen host behind the scenes;

The Clouds etc. ports are available here and they look like this in Carla;