Forma Labs Audio
filamentDocsLearnSupport
Forma Labs Audio

MIDI orchestration tools built by working composers, for working composers.

No telemetry. No tracking. Your sessions stay yours.

Products

  • filament

Support

  • Help Center
  • FAQ
  • Contact
  • Terms
  • Privacy
© 2026 Forma Labs Audio. All rights reserved.
Manchester, UK
Home/Documentation

filamentdocs

Getting Started

  • Introduction
  • Installation
  • Core Concepts
  • Signal Flow

Core Features

  • Keyswitches
  • Voice Layers
  • Chord Revoicing
  • Grid Inputs
  • Routing Matrix
  • Output Rows
  • Latch Mode

Modules

  • Phrase Arpeggiator
  • MIDI Clip Launcher
  • Smart Modifier
  • Articulation Trigger

Mixer & Presets

  • Mixer
  • Macros
  • The Preset System

Reference

  • Global Settings
  • Parameter Reference
  • Glossary
  • Troubleshooting
  • Requirements

DAW Setup

  • Logic Pro
  • Cubase
  • Reaper
  • Ableton Live
By the Forma Labs teamUpdated March 2026

filament uses a three-tier preset system: Banks define the structure, Library Sets provide the instruments, and Orchestrations contain the musical content.

How the Three Tiers Work Together

When you load a Bank, it determines which Library Sets and Orchestrations are available to you. The Bank acts as an interface between musical content and instruments:

Bank→defines structure (layout, track names, keyswitch count)
↳ Library Set→fills with instruments (mixer, effects, articulations)
↳ Orchestrations→fill keyswitches with musical content

Banks

A Bank defines the structure of your setup—it's the skeleton that Library Sets and Orchestrations attach to:

  • •The layout of output rows
  • •Track names for each output row
  • •The number of keyswitches in use

Banks are stored as .bank.json files.

Example Banks

  • •Five Piece String Ensemble — Violin I, Violin II, Viola, Cello, Bass across 5 output rows
  • •String Brass Wind — 12 rows: 4 strings, 4 brass, 4 woodwinds
  • •Hybrid Scoring — orchestral sections plus synth layers and percussion

Library Sets

A Library Set fills the Bank's structure with actual instruments:

  • •Which instruments are loaded in each output row
  • •All effect chains and their settings
  • •The full mixer state (volume, pan, mute, solo)
  • •Articulation maps for each instrument
  • •Macro control definitions

Library Sets are stored as .libset.json files.

Example Library Sets

  • •Spitfire Appassionata Strings — lush divisi strings with expression-mapped dynamics
  • •CSS + CineBrass — Cinematic Studio Strings paired with CineBrass, balanced and EQ'd together
  • •BBC Symphony Orchestra — full orchestra with pre-configured articulation maps

The same Bank can load different Library Sets—hear your arrangement with Appassionata one moment, BBC SO the next.

Orchestrations

An Orchestration saves the musical content of a keyswitch:

  • •All 8 voice layer configurations
  • •The full routing matrix with transposition values
  • •Intelligent chord revoicing settings
  • •All module settings (arpeggiators, clip launchers, smart modifiers)
  • •MIDI plugins and articulation trigger configurations

Orchestrations are stored as .orch.json files.

Example Orchestrations

  • •Wide Voiced Chord + Melody Doubled — spread voicing with bass isolated, melody sent to both Violin I and flute
  • •Rhythmic Ostinato — strings playing a repeating arpeggiator pattern while brass holds sustained chords
  • •Unison Power — all sections playing the same notes in octaves for maximum impact
  • •Call and Response — woodwinds answer brass phrases using the clip launcher

These orchestrations work with any Library Set that matches the Bank structure—swap instruments without losing your arrangement.

Why Three Tiers?

This separation keeps your musical ideas independent from your instrument choices:

  • •Swap libraries instantly — keep the same orchestrations, load a different Library Set to hear them with different sample libraries
  • •Reuse orchestrations — a voicing pattern you created for strings works with any string Library Set
  • •Mix and match — combine any Bank structure with any compatible Library Set and any Orchestrations
  • •Share orchestrations — send an orchestration file to someone who has different sample libraries; it still works

Loading Orchestrations into Keyswitches

There are multiple ways to load orchestrations:

Drag and Drop

Open the orchestration browser and drag an orchestration directly onto a keyswitch in the keyswitch bar. The orchestration loads into that slot instantly.

Load into Current Keyswitch

Select a keyswitch, then load an orchestration from the browser. It replaces the content in the currently selected keyswitch.

Copy Between Keyswitches

Drag a keyswitch onto another to copy its orchestration. Hold modifier keys for additional options (swap, etc.).

Saving

Save Bank

Saves the current structure. Use when you've set up a new layout with different track names or keyswitch counts.

Save Library Set

Saves the current mixer, instruments, effects, and articulation maps. Use when you've loaded and configured a new set of sample libraries.

Save Orchestration

Saves the current keyswitch's musical content. Use when you've created a voicing, routing, or pattern you want to reuse.

All save options are accessible from the preset bar at the top of the main view.

Preset Metadata

All preset types carry metadata for organisation:

  • •Name: Display name in the browser
  • •Author: Creator attribution
  • •Category: Ensemble, Solo, Texture, Experimental
  • •Tags: Searchable keywords
  • •Description: Notes about the preset

Related

Core Concepts

Keyswitch, Orchestration, Bank definitions

The Keyswitch System

How orchestrations work with keyswitches