Current Features

  • OSS (/dev/dsp) support
  • Win32 (mmsystem.h) support
  • Component-based design
  • Object-oriented internals (written in C)
  • Plugin-based implementation
  • Ugly, yet functional user interface
  • Runs on Linux and Win32 platforms
  • Links against libaudiofile to provide flexible sample I/O
  • Able to string together and loop an arbitrary number of sequenced measures
  • Loads LADSPA plugins.
  • Multiple Sheets (subroutines)

Plugins currently available

  • ADSR envelope (for arbitrary control)
  • Arc-tangent "compression"
  • Timer/Clock
  • General-purpose control (UI element)
  • DC Bias
  • Delay (with feedback)
  • Variable Delay (with feedback)
  • Simple event-processing components
  • Gain component
  • File Requester
  • Envelope Gain
  • Joyport Control
  • Midiclock in (not really tested because i have no midi equipment)
  • ogg_reader plugin
  • Oscillator (sine, square, sawtooth, triangle)
  • Audio Output plugins
  • Pattern Selector
  • Scope
  • White Noise Generator (Linux only, for now)
  • Random-access to Realtime converter
  • Resampler (simple pitch-shifter)
  • Sample reversal plugin
  • Level/Note/Trigger sequencers
  • Smooth fader
  • Low-pass resonant filter
  • Sampled Voice
  • Simple cross-fade component
  • A simple WAV recorder plugin to save a session's output

Planned Features

Some of these will make it into forthcoming minor releases. Some will be addressed during the next major release cycle. There's no particular ordering of the list implied, either.

  • Save/Load/Play "performances"
  • Prettier, easier-to-use user interface
  • Full keyboard support
  • Support for more audio-IO libraries (ALSA, ESD-alikes etc)
  • More (and better) plugins
  • More (and better) examples and samples
  • Improved control-panel
  • Improved off-line (non-realtime) processing
  • Proper support for 64-bit machines
  • Optional full-integer-math internals

And some (semi?) far-off ideas:

  • MIDI support. (There is some untested midi support which will get better if someone would use it and send feedback to me)
  • Network-aware plugins, allowing distributed gAlan for really heavy number-crunching work. (Something CORBAish, maybe?)

    (distributing gAlan would allow a couple of nifty things: sharing CPU load over many machines; two people collaborating on a piece of music in realtime; etc etc.)

Plugins on the drawing-board

  • Improved sequencer plugins
  • Proper "drum kits"
  • Compressor/Expander/Gate/Limiter
  • More (and better) filters