Before starting with a new Soft synth project for Linux I decided to track what kind of synthesizers are already out there available. I focused on LV2 plugins, since LV2 is the plugin standard I want to use. LADSPA is outdated and DSSI doesn’t seem to be as widely used as LV2.
With the aim to provide a clear separation between the synthesis engine, the LV2 integration and the GUI I focused also on architectural aspects.
So here is a list of LV2 soft synths for Linux in no particular order.
Calf plugins
Calf plugins provides a set of plugins available as LV2, including a flanger, an organ synth, a phaser, a reverb, some filters, a chorus and a rotary speaker simulator.
The Calf Monosynth is a monophonic subtractive soft synth.
The Calf Organ is a mixture of a traditional drawbar organ and a subtractive synth.
The Calf Fluidsynth is a frontend for the Fluidsynth Sampler engine.
foo-yc20
The YC-20 is a divide-down combo organ designed in the late 60’s. The foo-yc20 emulation faithfully copies the features, sounds and flaws of the original organ.
Newtonator
The Newtonator is a LV2 soft synth that produces some unpredictable sounds.
LinuxSampler
The LinuxSampler is a streaming capable open source pure software audio sampler with professional grade features.
Minaton
The Minaton is a fat sounding mono subtractive software synthesizer.
ll-plugins
ll-plugins provides several synth and utility plugins and a GUI-capable host.
Composite Sampler
Composite Sampler is a LV2 plugin that acts as a MIDI-controllable sampler.
lv2-mdaEPiano
lv2-mdaEPiano is a native LV2 port of the famous mdaEPiano VSTi.
mda-lv2
mda-lv2 is an LV2 port of the popular VST mda plugins.
Russolo Suite
The Russolo Suite consists of the CrazySynth Synthesizer and the “the do-it-all effect” Omnifono.
So-synth-LV2
So-synth-LV2 provides unofficial LV2 ports of 50m30n3’s synthesizers.
Zyn
Zyn provides an LV2 port of Zynaddsubfx.
Qin
Qin is a LV2 synth plugin for plucking sounds
Minicomputer-LV2
Minicomputer-LV2 is a softsynth for creating experimental electronic sounds
lv2_guitar
lv2_guitar is another String synth
This list has been assembled from the contents of the following two webpages:
Summary
Here is also an overview of the used programming languages and GUI toolkits in each plugin:
Name | Languages | GUI | Remarks |
---|---|---|---|
Calf Plugins | C++ | GTK+ | UI is defined in XML, knobs are created from SVG files and rendered via Cairo |
foo-yc20 | C/C++/Faust | GTK+ | Faust is a functional language for DSP design |
Newtonator | C++ | GTK+ | – |
LinuxSampler | C++ | Qt4 | Qt4 is only one GUI option, there is also a Java based UI |
Minaton | C++ | FLTK | – |
ll-plugins | C++ | GTK+ | ported from DSSI plugins |
Composite Sampler | C++ | – | part of bigger Composite audio system effort |
lv2-mdaEPiano | C++ | – | – |
Russolo Suite | C | – | – |
So-synth-LV2 | C | – | – |
Zyn | C/C++ | – | extracted Synth engines from ZynAddSubFx |
Qin | C | – | – |
Minicomputer-LV2 | C | – | – |
lv2_guitar | C | – | – |
From this overview can be seen that most of the GUI-less plugins have been written in C++, whereas the plugins with GUIs have been mostly written in C++. GTK+ is prefered over Qt and FLTK as a GUI toolkit.
Popular Non-LV2 synths
As the LV2 plugin is still quite new, there are lots of great established soft synth projects that are not available in LV2 format.
Here are some of the more popular options:
Name | Languages | GUI | Remarks |
amSynth | C++ | GTK++ | Subtractive synth with 2 Oscillators |
Bristol Audio Synthesis | C | ? | Emulation of various vintage keyboard synths |
Qsynth | C++ | Qt4 | Popular Qt based frontend for FluidSynth |
ZynAddSubFx | C++ | FLTK | Very popular synth with three different synth engines |
Hydrogen | C++ | Qt4 | Popular drum machine |
hexter | C | GTK+ | very good Yamaha DX7 synth emulation |
WhySynth | C | GTK+ | Versatile multi paradigm soft synth |