openmixer — generated API reference
    Preparing search index...

    Interface Source

    A named input with physical preamp identity, decoupled from any channel. Only the analog trio (Source.gainDb/Source.pad/Source.phantom) lives here — the properties one preamp can only hold ONE value of, so they follow the source and a split shares them by construction. Digital trim and polarity are CHANNEL-owned (2026-07-30 — see this module's header): they live on the channel strip, never here, so two legs of a split can run different trims/polarities. The engine applies the analog trio at the channel head (or the direct-path head), fanning it out to the REAC box.

    interface Source {
        gainDb: number;
        headAmp?: HeadAmpCapability;
        icon?: string;
        id: string;
        name: string;
        pad: boolean;
        patch: SourcePatch;
        phantom: boolean;
    }
    Index
    gainDb: number

    The head-amp's GAIN, in dB — the analog gain ahead of the A/D converter, and the position of the box's own gain control. REAL only where the patched input declares an analog head-amp (see AdapterInput.sensCapable); inert on a PipeWire / software input.

    The BOX's gain, not the console's — the console's digital stage is the channel's digitalGainDb / trimDb, at its own address. Independent of Source.pad: the pad is a fixed attenuation ahead of a gain scale that does not move, so engaging it leaves this number exactly where it was while the real analog level genuinely drops 20 dB. That is the entire point of a pad, and compensating it away would lie about the signal.

    The analog head-amp capability this source's patched input DECLARES — the resolved headAmpCapabilityOf of the AdapterInput the Source.patch references, captured at patch time. It answers "can this endpoint carry phantom / pad / SENS at all" (a REAC box / a reac-pw proxy / master / virtual-stagebox port → all three; a pure-PipeWire app or browser source → none), and it is the ONE gate the surface reads to decide whether to render those controls — never the source's kind/transport. Absent (a legacy source, or a raw/implicit endpoint) is read as NO_HEAD_AMP: nothing rendered, nothing persisted. See headAmpCapabilityOfSource.

    icon?: string

    Optional surface icon name (instrument/mic glyph).

    id: string

    Stable id, unique within the console.

    name: string

    Human label (follows the source, not the channel — WING/Roland).

    pad: boolean

    −20 dB analog pad ahead of the preamp — an actuator, never a change of travel. Real on a REAC box and on an RME analog mic input; absent elsewhere.

    The physical patch: which adapter input feeds this source.

    phantom: boolean

    +48 V phantom power at the box. REAC sources only (no pin to power on a software input).