mixer

mixer · utilities

Four-channel mono summing mixer: out = (in1×Ch1 + in2×Ch2 + in3×Ch3 + in4×Ch4) × Master. Levels are LINEAR AMPLITUDE 0..1 (0.5 = −6 dB, 0.1 = −20 dB — fine fades live near the bottom of the travel), all default to unity, and all five are one-pole smoothed (≈23 ms) so moves are click-free but control-rate — never a VCA. The sum is NOT limited, clamped or headroom-compensated and Master maxes at 1.0 (attenuate only, no make-up gain), so four hot unity channels can leave at up to 4× full scale (+12 dB) and clip downstream: trim the channels or pull Master, and watch the face level meter. Audio cables only (the inputs declare no CV widening) — for per-channel CV, direct outs and soft-clip use ATTENUMIX; for stereo with EQ and aux sends use MIXMSTRS.

The four-into-one utility: patch up to four mono sources in, set how much of each goes to the bus, and one summed output comes back out. The whole processor is out = (in1×Ch1 + in2×Ch2 + in3×Ch3 + in4×Ch4) × Master — no pan, no EQ, no sends, no direct outs and no CV inputs, which is the point (per-channel CV, direct outs and soft-clip are ATTENUMIX; stereo with EQ and aux sends is MIXMSTRS). Two things worth knowing before you patch it. FIRST, the levels are LINEAR AMPLITUDE, not decibels and not an audio-taper fader: half travel is only −6 dB, a quarter is −12 dB, and everything below −20 dB is squeezed into the bottom tenth of the knob — so fine fades live near the bottom and the top half of the travel is a fairly small loudness change. SECOND, MIXER does not protect you: the sum is never limited, clamped or headroom-compensated, and Master maxes out at 1.0 so it can only attenuate — there is no make-up gain. Every level defaults to 1.0, which makes a fresh MIXER a clean unity pass-through for one source, but four hot sources at unity add up to as much as 4× full scale (+12 dB) and will clip wherever the signal is finally clamped, not here. Trim the channels or pull the master down, and watch the face's level meter (it reads the real bus, live) to see it happen. All five levels are one-pole smoothed with a roughly 23 ms time constant, so moves and remote/MIDI writes are click-free — and, by the same token, control-rate: patching an envelope at a level is not possible here and the knobs cannot be used as a VCA or a ring modulator.

the faceplate

mixerin1audioin2audioin3audioin4audioaudioaudioaudiocvgatepitch
4 inputs · 1 outputs · 5 params

inputs

idcablewhat it does
in1audioChannel 1 audio input; multiplied by the Ch1 level, then summed with the other three channels. AUDIO cables only — the port declares no widening, so CV, gate and pitch cables are refused (MIXER is not a CV summer). Unpatched it contributes silence, so an unused channel costs nothing whatever Ch1 is set to.
audio signal
in2audioChannel 2 audio input; multiplied by the Ch2 level, then summed with the other three channels. AUDIO cables only (CV / gate / pitch sources are refused). Unpatched it contributes silence, so an unused channel costs nothing whatever Ch2 is set to.
audio signal
in3audioChannel 3 audio input; multiplied by the Ch3 level, then summed with the other three channels. AUDIO cables only (CV / gate / pitch sources are refused). Unpatched it contributes silence, so an unused channel costs nothing whatever Ch3 is set to.
audio signal
in4audioChannel 4 audio input; multiplied by the Ch4 level, then summed with the other three channels. AUDIO cables only (CV / gate / pitch sources are refused). Unpatched it contributes silence, so an unused channel costs nothing whatever Ch4 is set to.
audio signal

outputs

idcablewhat it does
audioaudioThe summed bus: (in1×Ch1 + in2×Ch2 + in3×Ch3 + in4×Ch4) × Master, mono. It is a plain sum — nothing here limits, soft-clips or divides by the channel count, and Master cannot exceed 1.0, so with several channels open the output can legitimately run well past full scale (four correlated unity sources reach 4×, about +12 dB) and will clip at the first stage that clamps rather than in this module. The bus goes silent when all four levels are at 0 or Master is at 0 — reached as a ≈23 ms glide, not an instant cut, because every level is one-pole smoothed.
audio signal

params

idlabelrangedefaultcurve
ch1Ch10..11linear
ch2Ch20..11linear
ch3Ch30..11linear
ch4Ch40..11linear
masterMaster0..11linear

controls

controlwhat it does
Ch1Channel 1 level: a LINEAR AMPLITUDE multiplier from 0 (silent) to 1 (the input at its own level), default 1. Linear means the dB scale bunches at the bottom — 0.5 is −6 dB, 0.25 is −12 dB, 0.1 is −20 dB — so use the lower part of the travel for real fades. It only attenuates; there is no gain above unity anywhere in this module. Smoothed with a ≈23 ms one-pole, so moves never zipper — and are control-rate, not audio-rate.
Ch2Channel 2 level: a LINEAR AMPLITUDE multiplier from 0 (silent) to 1 (the input at its own level), default 1. Linear means the dB scale bunches at the bottom — 0.5 is −6 dB, 0.25 is −12 dB, 0.1 is −20 dB — so use the lower part of the travel for real fades. It only attenuates; there is no gain above unity anywhere in this module. Smoothed with a ≈23 ms one-pole, so moves never zipper — and are control-rate, not audio-rate.
Ch3Channel 3 level: a LINEAR AMPLITUDE multiplier from 0 (silent) to 1 (the input at its own level), default 1. Linear means the dB scale bunches at the bottom — 0.5 is −6 dB, 0.25 is −12 dB, 0.1 is −20 dB — so use the lower part of the travel for real fades. It only attenuates; there is no gain above unity anywhere in this module. Smoothed with a ≈23 ms one-pole, so moves never zipper — and are control-rate, not audio-rate.
Ch4Channel 4 level: a LINEAR AMPLITUDE multiplier from 0 (silent) to 1 (the input at its own level), default 1. Linear means the dB scale bunches at the bottom — 0.5 is −6 dB, 0.25 is −12 dB, 0.1 is −20 dB — so use the lower part of the travel for real fades. It only attenuates; there is no gain above unity anywhere in this module. Smoothed with a ≈23 ms one-pole, so moves never zipper — and are control-rate, not audio-rate.
MasterThe level on the summed bus (linear amplitude 0..1, default 1) — the fader you ride to bring the whole submix up and down without touching the balance between channels. Note what 1.0 does and does not mean: it is a unity COEFFICIENT on the sum, not a unity OUTPUT — with more than one channel open the bus is already louder than any single input, and Master cannot go above 1.0, so it is the module's only headroom control and the way you pull an over-hot sum back under full scale. At 0 the whole mix is silent. Smoothed like the channel levels (≈23 ms), so it fades rather than steps.

source

mixer.ts on GitHub.

Generated from packages/web/src/lib/{audio,video}/module-registry.ts · repo