Understanding Antigone's architecture

Introduction

Antigone's architecture may seem dense at first, but it rests on a small number of clearly defined concepts. Once these are understood, every screen of the module — and every file on the SD card — falls into place.

The two top-level concepts are:

  • the project, which holds every parameter of the module (up to 6 simultaneous instruments);
  • the instrument, which is the unit of sound generation inside a project.

The project

The project is the foundation of everything in Antigone. It is comparable to what other synthesizers call a patch, preset or program — except that an Antigone project does not describe a single sound, but a whole multi-instrument setup, ready to play.

A project gathers, in a single autonomous container:

  • a voice layout — how the 6 voices of the module are distributed between 1 and 6 instruments;
  • the instruments themselves — see The instruments;
  • the project-level components that act on every instrument: Mixer, Modulation matrix, Clock and Macros.
flowchart TB
    P["PROJECT (.nagp)"]
    P --> VL["Voice Layout"]
    P --> IN["1 to 6 Instruments"]
    P --> MX["Mixer"]
    P --> MM["Mod Matrix"]
    P --> CK["Clock"]
    P --> MA["16 Macros"]

    classDef root fill:#1e3a8a,stroke:#60a5fa,color:#fff,stroke-width:2px
    classDef voiceLayout fill:#0f766e,stroke:#2dd4bf,color:#fff
    classDef instr fill:#9a3412,stroke:#fb923c,color:#fff
    classDef component fill:#581c87,stroke:#c084fc,color:#fff

    class P root
    class VL voiceLayout
    class IN instr
    class MX,MM,CK,MA component

For more on how a project is loaded, edited and saved, see How projects work.

The concept of voice — the voice layout

Antigone offers up to 6 voices per project. A voice is a circuit able to produce sound. Having 6 voices available means you can, for example, build one 6-voice polyphonic instrument (capable of playing 6-note chords), or six monophonic instruments (each one playing a single note at a time), or any combination in between (2 instruments × 3 voices, 3 instruments × 2 voices, etc.).

The voice layout is the property of the project that defines this distribution. It is no longer a separate preset — it lives inside the project itself, and is edited directly from the PROJECT screen. See Voice layout for the editing procedure.

The instruments

A project can hold from 1 to 6 instruments, depending on the voice layout. Each instrument is built from the following slots, all reachable from its INSTRUMENT page:

SlotRoleLearn more
CONTROLDefines how the instrument receives notes — control source (CV/Gate or MIDI), MIDI channel, pitch bend, voice mode, V/Oct and Gate routing.Voice control / Instrument control
NOTE FXA processor placed at the input of the instrument that reshapes the incoming note information (pitch, gate, velocity) before it reaches the machine. One Note FX per instrument.Note FX
MACHINEThe synthesis algorithm that actually generates the sound. Antigone offers 6 different machines, each with its own sonic character.Synthesis machines
FLT ENV / AMP ENVBuilt-in envelopes for the filter section and the amp section. Available when the active machine uses the standard signal chain.Filter & Amp sections
6 MODULATORSSix modulation sources running in parallel, attached to the instrument. Each one can be configured per-voice or shared, and assigned to any modulable parameter via the modulation system.ModulatorsModulations system

Modulators are now per-instrument. Each instrument carries its own 6 modulators — there is no longer a separate set of "global" modulators at project level. A modulator from one instrument can still be assigned to a parameter of another instrument: open the destination parameter's MOD ASSIGN screen (long-press the button below the parameter) and pick the cross-instrument source from there.

flowchart LR
    EXT["Note input
CV/Gate or MIDI"] --> CTRL["CONTROL"] CTRL --> NFX["NOTE FX"] NFX --> MCH["MACHINE"] MCH --> OUT(["Mixer / Out"]) subgraph MODS ["Modulator slots"] direction TB FLT["FLT ENV*"] AMP["AMP ENV*"] M1["MOD 1"] M2["MOD 2"] M3["MOD 3"] M4["MOD 4"] M5["MOD 5"] M6["MOD 6"] end MODS -.-> NFX MODS -.->|"modulate any param"| MCH MODS -.-> OUT classDef external fill:#374151,stroke:#9ca3af,color:#fff classDef ctrl fill:#854d0e,stroke:#fbbf24,color:#fff classDef notefx fill:#14532d,stroke:#4ade80,color:#fff classDef machine fill:#1e3a8a,stroke:#60a5fa,color:#fff,stroke-width:2px classDef mixer fill:#581c87,stroke:#c084fc,color:#fff classDef modslot fill:#831843,stroke:#f472b6,color:#fff class EXT external class CTRL ctrl class NFX notefx class MCH machine class OUT mixer class FLT,AMP,M1,M2,M3,M4,M5,M6 modslot style MODS fill:#1f2937,stroke:#be185d,color:#f9a8d4

FLT ENV and AMP ENV are extra modulator slots, pre-wired to the filter cutoff and the VCA, that only appear on machines using the standard filter+amp signal chain (Synthesizer, Sample Player, Granular). They are at the same level as the 6 user modulator slots — not part of the signal chain itself.

For a full walk-through of how an instrument is built and edited, see How instruments work.

Project-level components

In addition to its instruments, a project owns four components that act on the whole module:

ComponentRoleLearn more
MIXERThe mixing desk for the project: per-instrument volume, pan, mute and solo, plus output routing.Mixer
MOD MATRIXA single view of every modulation routing in the project, useful to audit, edit or remove existing assignments.Modulation matrix
CLOCKThe master clock used to synchronise tempo-driven behaviours (LFOs, arpeggiator, rhythm generator, etc.). Internal or external.Clock
MACROSHigh-level controls that can drive multiple parameters at once across the project, for performance use.Macros

File types

Now that the components of a project are clear, it is useful to see how they map to actual files on the SD card.

Antigone uses two file types:

ConceptFile contentFile type
ProjectEverything that defines the project — the voice layout, the configuration of every instrument, and all project-level components (mixer, mod matrix, clock, macros). A project file is therefore complete and self-contained..nagp
InstrumentOne instrument: its machine, its Note FX, its 6 modulators and its modulations. Use this file type to save a reusable instrument that can later be loaded into another project..navp

The voice layout is no longer a separate file. It is stored inside the project (.nagp) and travels with it.

For more on file management and templates, see Project file templates and Instrument file templates.