ventosus.ch

Open Music Kontrollers

Synthpod

Lightweight Nonlinear LV2 Plugin Container

Packages

About

Synthpod is an LV2 host. It can be run as a standalone app and be used as a tool for live performances or general audio and event filtering.

It was conceptualized to fill the gap between pure textual (e.g. SuperCollider) and pure visual flow (e.g. Pure Data) audio programming paradigms.

Potential fields of application may include:

The standalone host saves its state in the same format as an LV2 plugin instance,

It may be run on top of an audio system (JACK or ALSA) and on top of an event system (MIDI and OSC). It can be run with a GUI or headless. You can e.g. prepare a patch on your desktop machine and then transfer it to a wearable synth.

Synthpod takes a totally modular approach whereby it provides only the minimal necessary host infrastructure expected by a given plugin.

All additional, non strictly necessary glue shall be implemented with plugins. Synthpod e.g. can be extended with OSC via Eteroj. Sequencing and looping may be added via plugins from the Orbit bundle. When paired with realtime scripting via Moony, it turns Synthpod into a versatile realtime programmable, remote controllable LV2 host framework.

Synthpod screenshot

Hosts

Currently the following hosts are contained in this software bundle:

JACK

Synthpod as host built on top of JACK with support for native JACK audio, MIDI, OSC and CV in/out ports. The right choice on GNU/Linux for modular setups.

This standalone host supports NON session management to neatly integrate into modular setups.

Plugins

Control to CV

Convert between Control Voltage and control ports.

CV to Control

Convert between Control Voltage and control ports.

Heavyload

Just burn CPU cycles away for debugging.

Keyboard

A rudimentary graphical keyboard with a 2 octave range, mainly meant for simple test cases.

MIDI splitter

Split MIDI events based on their channel.

Panic

Silence MIDI downstream plugins upon panic.

Stereo

The Synthpod LV2 non-linear plugin container run as a plugin itself in an other host or itself. It features stereo audio in/out ports, atom event in/out ports and 4 control in/out ports.

Use this to add support for non-linear plugin routing in a strictly linear host.

Usage

Server - client

Synthpod comes as server - client combo, e.g. the server doing the DSP side of things runs in its own process and the client showing the GUI side of things runs in its own process.

By default, synthpod just runs the server. There’s a command line argument to automatically run the GUI, if you want. Please consult the manual page to find out more.

GUI

Mouse actions

Key actions

Mandatory dependencies

Optional dependencies for plugin UIs

Build / install

git clone https://git.open-music-kontrollers.ch/~hp/synthpod
cd synthpod 
meson build
cd build
ninja -j4
sudo ninja install

Issues/Patches

Please report issues to https://todo.open-music-kontrollers.ch/~hp/issues

Please submit patches to https://lists.open-music-kontrollers.ch/~hp/patches