openmixer — generated API reference
    Preparing search index...

    Interface ChannelCapabilityState

    What /channel/{kind}/{index}/capability serves: which controls this channel carries right now, which of them can be moved, which hold a real value, and how far the gain travels.

    writable and known are both SUBSETS of features, which is what makes the standing law expressible: a word in features but not in writable renders visible and disabled with reason, and it is never removed from the panel.

    interface ChannelCapabilityState {
        features: readonly (
            | "fader"
            | "gain"
            | "pan"
            | "trim"
            | "phantom"
            | "polarity"
            | "name"
            | "comp"
            | "eq"
            | "gate"
            | "width"
            | "mute"
            | "pad"
            | "solo"
            | "inserts"
            | "meter"
            | "sens"
        )[];
        gainRange?: HeadAmpGainRange;
        known: readonly (
            | "fader"
            | "gain"
            | "pan"
            | "trim"
            | "phantom"
            | "polarity"
            | "name"
            | "comp"
            | "eq"
            | "gate"
            | "width"
            | "mute"
            | "pad"
            | "solo"
            | "inserts"
            | "meter"
            | "sens"
        )[];
        reason?: Refusal;
        writable: readonly (
            | "fader"
            | "gain"
            | "pan"
            | "trim"
            | "phantom"
            | "polarity"
            | "name"
            | "comp"
            | "eq"
            | "gate"
            | "width"
            | "mute"
            | "pad"
            | "solo"
            | "inserts"
            | "meter"
            | "sens"
        )[];
    }
    Index
    features: readonly (
        | "fader"
        | "gain"
        | "pan"
        | "trim"
        | "phantom"
        | "polarity"
        | "name"
        | "comp"
        | "eq"
        | "gate"
        | "width"
        | "mute"
        | "pad"
        | "solo"
        | "inserts"
        | "meter"
        | "sens"
    )[]

    Every capability word this channel carries at this instant — the contract's kind row narrowed by what the patched input declares. The surface's VISIBILITY condition.

    gainRange?: HeadAmpGainRange

    How far this channel's GAIN travels and how finely it resolves — the PREAMP's own declared travel when a preamp owns the fact (ownerOf('gain', …) resolving to its headAmp peer), the desk's own digital stage otherwise. Absent where the channel carries no gain at all. Never a constant a consumer chose (#66).

    known: readonly (
        | "fader"
        | "gain"
        | "pan"
        | "trim"
        | "phantom"
        | "polarity"
        | "name"
        | "comp"
        | "eq"
        | "gate"
        | "width"
        | "mute"
        | "pad"
        | "solo"
        | "inserts"
        | "meter"
        | "sens"
    )[]

    The subset of features the desk holds a real value for. Desk-owned words are always here (the console is the store); a box-owned word is missing until the value was read off the box or set by an operator.

    reason?: Refusal

    Why the carried-but-unwritable words refuse, as the console's own coded refusal. Absent when writable covers features. English never crosses the wire; the client translates the code.

    writable: readonly (
        | "fader"
        | "gain"
        | "pan"
        | "trim"
        | "phantom"
        | "polarity"
        | "name"
        | "comp"
        | "eq"
        | "gate"
        | "width"
        | "mute"
        | "pad"
        | "solo"
        | "inserts"
        | "meter"
        | "sens"
    )[]

    The subset of features a write can reach right now. The surface's ENABLED condition; the difference from features is what renders disabled with reason.