FLAM Documentation

Luis Garrido


1. Introduction

FLAM is a tool for interface designers to build virtual control surfaces for music-related control protocols. Ultimately it will support a variety of protocols and widgets. Right now it can be used to build moderately complex GUIs for LADSPA plugins.

2. Current Features

  • Protocol support: DSSI.
  • Input widgets:

    • Slider.
    • Dial.
    • Integer Spin Box.
    • Double Spin Box.
    • Combo Box.
    • Check Box.
    • Button.
  • Multiple UIs for any given plugin.
  • Multiple styles.
  • Multiple themes.
  • Keyboard shortcuts with tooltip hints.
  • Response curves for continuous widgets: linear and cube.
  • Slave widgets.
  • WYSIWYG editor (Qt Designer.)
  • Automated initial GUI population (flamwizard.)
  • Rack-like GUI container (flammer.)

3. Planned Features

  • More types of plugins: DSSI, LV2.
  • More control protocols: MIDI.
  • More widgets: file selector, XY, envelop editor, filter/equalizer curves, 3D room editor, etc.
  • Support scripting for more complex interaction.
  • More response curves: arbitrary polyline.
  • Generic OSC/MIDI messages support: build virtual OSC/MIDI control surfaces.
  • Factor out some key parts of FLAM so Qt-based hosts can integrate flams directly.
  • Better integration between flamwizard and Qt Designer (long term.)
  • Preset support.

4. User Documentation

5. Source Code Download

git clone http://vagar.org/git/flam

6. Project Page

Registration required for participation.

http://vagar.org/code/projects/flam