Quarterly releases 2019-2
Eteroj
Open Sound Control inside LV2 plugin graphs
This LV2 plugin bundle allows you to handle OSC (Open Sound Control) bundles and messages in modular hosts.
- Insert/dispatch OSC from/to UDP, TCP (IPv4/6) and serial sockets
- Pack/unpack MIDI into OSC
- Pack/unpack OSC into MIDI
- Pack/unpack LV2 atoms into OSC
Makes only sense to be used in hosts that allow routing of LV2 atom messages between plugins, e.g.
Packages
Plugins
ChangeLog
[0.6.0] - 15 Apr 2019
Added
- synchronous mode in eteroj:ninja (needs lock-free urid:map implementation)
- connection status reporting in eteroj:io
- connection errors reporting in eteroj:io
Changed
- build system from CMake to meson
- from libuv to pure POSIX network sockets
- increase buffer sizes in eteroj:io
- from lv2_atom_object_query to lv2_atom_object_get (GCC bug)
- to fixed size scheduling array in eteroj:io
- dispatching bundles immediately if no support for osc:sched (host feature)
Fixed
- endian headers for BSDs
- running forbidden custom worker thread in eteroj:io
- broken automatic reconnections for lost UDP/TCP links in eteroj:io
Deprecated
- support for mingw (POSIX sockets)
- eteroj:control plugin
- eteroj:disk plugin
License
Open Sound Control inside LV2 plugin graphs
Kindly find more details, the source (and binaries) at:
Midi Matrix
An LV2 MIDI channel matrix patcher
Things that can be accomplished with this plugin:
- MIDI channel filtering (e.g. blocking of specific channels)
- MIDI channel multiplication (e.g. send events from channel X to channels X, Y and Z)
- MIDI channel rerouting (e.g send events from channel X to channel Y)
- And any possible combination thereof
Packages
Plugins
Channel Filter

The Midi Matrix - Channel Filter is a 3-in-1 filter plugin with a simple UI enabling you to easily accomplish:
- MIDI channel filtering (e.g. blocking of specific channels)
- MIDI channel multiplication (e.g. send events from channel X to channels X, Y and Z)
- MIDI channel rerouting (e.g send events from channel X to channel Y)
- And any possible combination thereof
ChangeLog
[0.22.0] - 15 Apr 2019
Added
- ui resize extension
- dynamic drawing/erasing while mouse down
- button for one-to-one connection layout
Changed
- build system from CMake to meson
License
An LV2 MIDI channel matrix patcher
Kindly find more details, the source (and binaries) at:
Moony
Realtime Lua as programmable glue in LV2
Write LV2 control port and event filters in Lua. Use it for one-off fillters, prototyping, experimenting or glueing stuff together.
Packages
General Overview
The Moony plugins come in three flavours, whereby some of them are more and others less suitable for linear plugin hosts (e.g. DAWs). All of them are suitable for non-linear hosts (NLH), e.g. Ingen or Synthpod.
- Control to control port conversion (NLH)
- Atom to atom port conversion (DAW, NLH)
- Control+atom to control+atom port conversion (DAW, NLH)
The design goal of the plugin bundle was to create a tool to easily add realtime programmable logic glue in LV2 plugin graphs.
To have plugins which do a specific task efficiently is great, especially for audio plugins. LV2 stands apart from other audio plugin specifications with its extentable event system based on Atoms. As events can be much more varied in nature and represent pretty much anything (NOT ONLY MIDI), it would be useful to have a tool to create arbitrary event filters for a given setup on-the-fly.
For a given setup, one may need a special event filter only once and it seems to be overkill to write a native LV2 event filter in C/C++ just for that. It would also be nice to have a tool for fast prototyping of new event filters.
A scripting language seems to be ideal for these cases, where the user can write an event filter on a higher level of abstraction on-the-fly. The scripting language needs to be realtime safe, though, which restricts the choices dramatically.
One such scripting language is Lua. It is small, fast, easily embeddable and realtime-safe if coupled to a realtime-safe memory allocator like TLSF.
The Moony plugins can handle LV2 control and atom event ports, only. They do not handle LV2 audio ports. They may eventually handle LV2 control-voltage ports in the future, though. Control port values are internally handled as simple floating point numbers, whereas the atom event ports build on top of the LV2 atom and atom forge C headers.
The control port plugins are simple to script and need only low level programming skills.
The atom event port plugins are more complex. You may want to first understand the underlying concepts of LV2 atom and atom forge in the official resources:
- http://lv2plug.in/ns/ext/atom/
- http://lv2plug.in/doc/html/group__atom.html
- http://lv2plug.in/doc/html/group__forge.html
API
The manual can be accessed from within the plugin UI or previewed here:
https://openmusickontrollers.gitlab.io/moony.lv2
Plugins

ChangeLog
[0.26.0] - 15 Apr 2019
Added
- use custom environment in code injection example preset
- global moony:error parameter
- global moony:code parameter
- external editor ui
- supported options to turtle metadata
- HTML reference manual to plugin bundle
- button for opening HTML reference manual
- support for plain atoms as rdf:value in state responder
- support decoding patch:Put events in state responder
Changed
- from Cmake to meson build system
- enable manual garbage collection by default
- internal Lua registry code cleanup
- from lv2_atom_object_query to lv2_atom_object_get (GCC bug)
- from strtok to strsep (the latter is rt-safe)
- to updated (experimental) canvas extension
- use strpbrk to match OSC path wildcards
- always return params:sampleRate from options interface
- render instructions in presets to be compatible with nanovg backend
Fixed
- automatic scaling for hiDPI displays
- initial focus on text edit fields
- text edit for onon-single line edits
- log auto-clear upon code send
- always overwrite error message with latest
Deprecated
- math.random and math.randomseed (use rt-safe ‘random’ module instead)
License
Realtime Lua as programmable glue in LV2
Kindly find more details, the source (and binaries) at:
PatchMatrix
a JACK patchbay in flow matrix style
A simple graphical JACK patchbay that tries to unite the best of both worlds:
- Fast patching and uncluttered port representation of a matrix patchbay
- Excellent representation of signal flow of a flow canvas patchbay
It additionally features tightly embedded graphical mixer clients automatable with JACK MIDI/OSC.
Packages
ChangeLog
[0.14.0] - 15 Apr 2019
Added
- missing call to XinitThreads for asynchronous refresh
- support for BSDs
- audio/MIDI mixer gain automation via JACK MIDI
- audio/MIDI mixer gain automation via JACK OSC
Changed
- build system from CMake to meson
Fixed
- exit after failed execvp
- wrongly ordered numbers in port names
- hardcoded launcher icon file path
- crashing gui on showing tooltips
- hiding connector nodes for zero port source/sink connections
License
a JACK patchbay in flow matrix style
Kindly find more details, the source (and binaries) at:
Sherlock
An investigative LV2 plugin bundle
This plugin bundle contains plugins for visualizing LV2 atom, MIDI and OSC events.
Use them for monitoring and debugging of event signal flows inside plugin graphs.
Packages
Plugins
ChangeLog
[0.18.0] - 15 Apr 2019
Added
- ui resize extension
- tracing to host’s log for atom_inspector
- filtering by URID for atom_inspector
Changed
- build system from CMake to meson
- ui checkboxes
- routing only OSC messages/bundles to ui
- style to always light color row after frame row
- put OSC arguments on separate rows
Fixed
- automatic scaling on hiDPI displays
- end-of-line handling in turtle lexer
- atom item sizes reporting
- turtle pretty number configuration switching
- strobing shadowing when in non-following mode
License
Kindly find more details, the source (and binaries) at:
VM
A programmable virtual machine LV2 plugin
This plugin bundle contains various plugins with a programmable stack-based virtual machine to modify up to 8 LV2 Control, CV, Audio, Atom and MIDI signals.
To be used when that specific simple filter plugin you desperately need does not yet exist.
Packages
Plugins

ChangeLog
[0.6.0] - 15 Apr 2019
Added
- vm:midi MIDI Conversion plugin
- ui button icons
Changed
- build system from CMake to meson
Fixed
- port_event callback to handle all patch ports
License
A programmable virtual machine LV2 plugin
Kindly find more details, the source (and binaries) at: