openmixer — generated API reference
    Preparing search index...

    Interface ProcessorSnapshotJson

    One Processor node serialised for a snapshot — the recursive-snapshot leaf of the chain-on-strip model. It IS a Processor on disk (id/kind/label/uri/enabled + the generic ProcessorParam controls, which are already plain JSON), so a strip's processing ARRANGEMENT — which nodes it carries, in what order, each enabled or bypassed — persists as one ordered processors: ProcessorSnapshotJson[]. openmixer is greenfield: this is the clean shape, with no legacy mirror and no synthesise-from-old load path.

    IT IS processors, NOT chain. ChannelSnapshotJson.chain is the LV2 plugin insert list (PluginSlotJson), a different and smaller thing that the mod-host controller owns; reusing the name for the arrangement would put two stores behind one key. The two ride together until the insert list is genuinely subsumed into insert processors, which is its own change with its own controller work.

    interface ProcessorSnapshotJson {
        at?: string;
        enabled?: boolean;
        id: string;
        kind:
            | "fader"
            | "trim"
            | "eq"
            | "gate"
            | "dynamics"
            | "drive"
            | "delay"
            | "reverb"
            | "insert";
        label?: string;
        params?: readonly ProcessorParam[];
        sort?: number;
        uri?: string;
    }
    Index
    at?: string

    The TAP POINT this node is attached to — the authored fact the arrangement is made of.

    Persisting the array order alone would persist the DERIVATION and lose the declaration: on load the placements would be re-guessed from node ids, and the operator's own move — the compressor pulled in front of the EQ — would come back undone while the file looked complete. The array stays in derived order for a human reading the file, but it is at and sort that the console rebuilds from.

    enabled?: boolean

    false = bypassed. Absent reads as enabled.

    id: string

    Stable node id (survives reorder).

    kind:
        | "fader"
        | "trim"
        | "eq"
        | "gate"
        | "dynamics"
        | "drive"
        | "delay"
        | "reverb"
        | "insert"

    The processor role.

    label?: string

    Human label; for insert slots the slot name (A/B/post).

    params?: readonly ProcessorParam[]

    The node's controls — the source of truth (already JSON-serialisable).

    sort?: number

    Sort among the nodes at the same at, ascending.

    uri?: string

    Hosted LV2 plugin URI (stages + inserts); absent = built-in/empty.