DSSI
about
–
specification
–
why use DSSI?
–
screenshots
–
mailing list
–
download
What is DSSI?
DSSI (pronounced "dizzy") is an API for audio processing plugins,
particularly useful for software synthesis plugins with user
interfaces.
DSSI is an open and well-documented specification developed for use in Linux audio
applications, although portable to other platforms. It may be
thought of as LADSPA-for-instruments, or
something comparable to VSTi.
DSSI consists of a C language API for use by plugins and hosts,
based on the LADSPA API, and an OSC (Open Sound Control) API for use
in user interface to host communications. The DSSI specification consists of an RFC which
describes the background for the proposal and defines the OSC part
of the specification, and a documented header
file which defines the C API.
DSSI is Free Software. The DSSI header file is provided under
the GNU Lesser General Public License.
Status
The DSSI API is currently at version 1.0. Further development
of the API is unlikely, and if it does occur, it is expected that
backward compatibility will be preserved. A host or plugin that
implements the 1.0 API can expect to be compatible with other
DSSI plugins or hosts well into the future.
The current DSSI distribution, version
1.0.0, contains the most recent release of the DSSI header file,
documentation, reference host, and example plugins.
Currently available hosts (as of January 2009) which provide
complete or nearly-complete DSSI support include:
jack-dssi-host, which is a reference
implementation included in the
DSSI 1.0.0 distribution.
- The
Rosegarden MIDI and audio sequencer.
- ghostess, a
host with a simple GTK+ interface, based on
jack-dssi-host.
- dssi~, a
Pure Data external which hosts DSSI plugins.
- Aldrin,
the tracker and modular synth inspired by Buzz. (Full
support for DSSI OSC/UIs is in the current Mercurial
version of
Armstrong; libzubb 0.2.5 did not support
OSC/UIs. See also here.)
-
Qtractor, an audio/MIDI multi-track sequencer.
Hosts which provide partial or specialized DSSI support
include:
-
cli-dssi-host, a command-line tool for producing a
single note from a DSSI plugin, and saving the resulting
audio to a file. Does not include OSC or user interface
support.
-
simplehost, a minimal host for driving a single DSSI
plugin via JACK MIDI. Does not include OSC or user
interface support. The included DSSI C++ classes are
intended to be reusable.
- GNU
Classpath. The 0.19 release added DSSI support to its
Synthesizer class. Does not include OSC or user interface
support.
- Jost,
which can host DSSI, LADSPA, and linux-native VST plugins
in a directed graph. Provides its own UI for controlling
DSSI plugin parameters, but does not (as of version 0.5.4)
support DSSI UIs.
Efforts are underway to add DSSI hosting to:
- The MusE
sequencer. There is some support for DSSI in the SVN
development version. The current stable release, version
0.9, does not include DSSI support.
- Csound5. Csound 5.09
contains some support for DSSI and LADSPA plugins.
- The Wired music
production and creation system has some support for DSSI
in its 0.6 release.
Currently available plugins include:
- FluidSynth-DSSI,
a FluidSynth soundfont-playing plugin.
- Xsynth-DSSI,
an analog-style (VCAs-VCF-VCO) synth plugin.
- dssi-vst, a
wrapper plugin enabling the use of many Windows
VST plugins.
- hexter, a Yamaha DX7 modeling
plugin.
-
ll-scope, a GTK+ oscilliscope plugin.
-
Sineshaper, a waveshaping synth plugin.
-
dssi_convolve, a DSSI wrapper around libconvolve,
providing a friendly convolution plugin for reverb
effects (among other uses).
-
xy-controller-dssi, a GUI controller plugin which
translates mouse input into X-Y control outputs.
- WhySynth,
a synth plugin featuring four oscillators per
voice, multiple oscillator, filter, and envelope modes,
effects, and more.
- Wsynth-DSSI,
a wavetable synth written with the PPG Wave and Prophet VS in
mind.
- nekobee,
a synth plugin that emulates the sound of the TB-303
Bassline.
- nekostring and
nekoplunk are
under development.
- The Calf audio
plugin pack contains a monophonic analog-style synth
and a versatile organ/pad synth.
- HOLAP
contains both DSSI and standalone versions of horgand, an
FM-based organ synth, and the Holharm smart harmonizer
DSSI plugin. (There's also an intriguing start to another
FM synth that uses FLTK for the GUI.)
-
amSynth has almost-complete code for a DSSI plugin
(but no DSSI GUI) in current SVN.
- Two simple example plugins, and two simple-but-useful
monotimbral sampler plugins, are included in
the DSSI distribution.
Page hosted by
