SpectMorph is a free software project which allows to analyze samples of musical instruments, and to combine them (morphing). It can be used to construct hybrid sounds, for instance a sound between a trumpet and a flute; or smooth transitions, for instance a sound that starts as a trumpet and then gradually changes to a flute. In its current version, SpectMorph ships with many ready-to-use instruments which can be combined using morphing.
- The main website for this project is: https://www.spectmorph.org
To compile SpectMorph, use the usual
./configure
make
make install
If you get a message that the instruments are missing, you can use the
--with-download-instruments
configure option to fix this (see below).
Configure should automatically determine via pkg-config whether the lv2 development headers are available. When the LV2 plugin doesn't get built, install them.
SpectMorph supports three different plugin formats,
- CLAP plugin
- VST plugin
- LV2 plugin
for Linux, macOS (x86_64 and Apple Silicon) and 64-bit Windows, so it works in many different hosts, such as Ardour, Qtractor, Anklang, Bitwig, Renoise, Cubase, Ableton Live and others. For hosts that support CLAP, using the SpectMorph CLAP plugin is the preferred way of integration.
The plugin has four properties that can be automated by the host, called Control #1 ... Control #4. To use these, for instance for linear morphing, the Control Input can be set to "Control Signal #1" (or #2) in the UI. After that the host can change the morphing from left source to right source and back.
The smjack program is a fully functional JACK Client using SpectMorph. You need to connect midi input and audio output (for instance with using QJackCtl).
The control inputs (Control Signal #1 ... Control Signal #4) are mapped to the midi CC controls (General Purpose Controller 1..4).
SpectMorph has a set of instruments which ship with official releases. These
are required to use SpectMorph. The instruments are included in all binary
releases. If you are building from the original source tarball, the
instruments are also included (in the data
directory).
If you're building from git, you will need to download the instruments before installing SpectMorph. The easiest way to do so is using:
$ ./autogen.sh --with-download-instruments
which will download the correct version of instruments automatically. You can
also download the appropriate version of the instruments from the releases of
the spectmorph-instruments
git repository and store them in the data
directory before building SpectMorph: