[Announcement] Jamba - a new free/open source VST framework

Hi everyone

I wanted to announce the release of a new, free and open source, VST (2/3) framework called Jamba. The framework is built on top of the VST3 SDK and offers the following set of features:

    • by including jamba/jamba.cmake in your project you gain access to the following
    • include all the necessary files so that your project depends on the VST SDK (including support for VST2)
  • easily write unit tests for your project (using googletest)
  • build on macOS and Windows 10 (Linux untested but support could be added)
  • package your project as an archive (zip file) for production release
  • scripts to build, test, validate, edit and install the plugin from the command line
  • pick and choose which feature is useful to you
  • define your VST parameters in one location (inherit from Parameters) and use both in real time processing (RT) and GUI code
  • define typed VST parameters (ex: a boolean (bool) parameter, a gain (Gain) parameter, etc…)
  • use typed VST parameters directly in RT processing code as well as GUI code
  • use Jamba parameters for handling non VST parameters (ex: a label/text string cannot be represented by a VST parameters). Jamba parameters can be automatically saved/restored part of the state
  • use Jamba parameters to easily exchange messages between RT and GUI (both directions) in a thread safe fashion
  • easily create custom views with their creators (so that they appear in the GUI editor)
  • easily use multiple parameters in a custom view (ex: a custom display which displays a gain value (parameter 1) in a color depending on parameter 2)
  • store/read state in a thread safe fashion (includes version)
  • UI views: toggle button and momentary button with 2 or 4 frames, Text Edit (with input saved part of the state)
  • Generates a fully buildable, testable, editable plugin with a simple command

I am emphasizing the last line because you really get a fully working VST2/3 plugin with a single command… all the boilerplate code (including generating the FUIDs), scripts, makefile, etc… is generated for you.

You can check Jamba at https://github.com/pongasoft/jamba

The project jamba-sample-gain https://github.com/pongasoft/jamba-sample-gain is a rewrite of the again plugin (that comes with the SDK) using Jamba to demonstrate and document the various features.