riotgirls

riotgirls · sources · schema v1

4-voice drum machine. 3x DRUMMERGIRL + 1x Wavetable VCO/ADSR/VCA, per-voice equal-power pan, master QBRT filter, stereo out.

A 4-voice drum/synth machine with a built-in aux-FX rack. Voices 1-3 are DRUMMERGIRL synth-drum voices (one-shot, tuned, with tone/shape/decay), and voice 4 is a sustaining melodic voice — a wavetable oscillator → ADSR → VCA — so RIOTGIRLS covers both percussion AND a playable pad/bass. Each voice has its own TRIGGER and GATE input plus a V/oct PITCH input (voices 1-3 retrigger on the edge; voice 4 holds its envelope while the gate is high), and a full mix strip (pitch/tone/shape/decay or tune/wave/ADSR, plus VOLUME, PAN, and two aux SENDS). The two aux buses feed an internal effects rack: SEND A → a DESTROY bitcrusher, SEND B → a reverb, each with a level RETURN back into the master. The summed stereo mix then runs through a master QBRT resonant filter (cutoff / resonance / mode / ping-decay) out to outL/outR. Every knob also has a CV input, so an LFO or sequencer can modulate any voice or FX parameter. Drive the voices from a SEQUENCER, DRUMSEQZ, or any gate source.

the faceplate

riotgirlstrig1gatetrig2gatetrig3gatetrig4gategate1gategate2gategate3gategate4gatepitch1pitchpitch2pitchpitch3pitchpitch4pitchv1_tonecvv1_shapecvv1_volumecvv1_decaycvv2_tonecvv2_shapecvv2_volumecvv2_decaycvv3_tonecvv3_shapecvv3_volumecvv3_decaycvv4_fmaudiov4_wavePoscvv4_attackcvv4_decaycvv4_sustaincvv4_releasecvv4_volumecvv1_pancvv1_sendAcvv1_sendBcvv2_pancvv2_sendAcvv2_sendBcvv3_pancvv3_sendAcvv3_sendBcvv4_pancvv4_sendAcvv4_sendBcvbc_decimatecvbc_bitscvbc_wetcvrv_sizecvrv_dampcvrv_mixcvflt_cutoffcvflt_resonancecvflt_modecvflt_pingDecaycvreturnAcvreturnBcvoutLaudiooutRaudioaudiocvgatepitch
55 inputs · 2 outputs · 48 params

inputs

idcablewhat it does
trig1gateVoice 1 TRIGGER — a rising edge fires voice 1 once (one drum hit). trig1 and gate1 land on the same input, so a sequencer gate or an external trigger can drive either.
gate / trigger
trig2gateVoice 2 TRIGGER — a rising edge fires voice 2 once (one drum hit). trig2 and gate2 land on the same input, so a sequencer gate or an external trigger can drive either.
gate / trigger
trig3gateVoice 3 TRIGGER — a rising edge fires voice 3 once (one drum hit). trig3 and gate3 land on the same input, so a sequencer gate or an external trigger can drive either.
gate / trigger
trig4gateVoice 4 TRIGGER — a rising edge fires voice 4's ADSR (attack→decay→sustain). Shares its input with gate4.
gate / trigger
gate1gateVoice 1 GATE — a rising edge re-triggers voice 1 (the DRUMMERGIRL voices are one-shot, so they restart on the leading edge). Shares its input node with trig1.
gate / trigger
gate2gateVoice 2 GATE — a rising edge re-triggers voice 2 (the DRUMMERGIRL voices are one-shot, so they restart on the leading edge). Shares its input node with trig2.
gate / trigger
gate3gateVoice 3 GATE — a rising edge re-triggers voice 3 (the DRUMMERGIRL voices are one-shot, so they restart on the leading edge). Shares its input node with trig3.
gate / trigger
gate4gateVoice 4 GATE — voice 4's amp ADSR holds open WHILE this gate is high (sustain), and releases on the falling edge. The level-sensitive gate that lets V4 play sustained pad/bass notes (unlike the one-shot voices 1-3). Shares its input with trig4.
gate / trigger
pitch1pitchVoice 1 V/oct PITCH input — sets the drum voice's tuning; summed with the V1 PIT knob.
V/oct pitch CV
pitch2pitchVoice 2 V/oct PITCH input — sets the drum voice's tuning; summed with the V2 PIT knob.
V/oct pitch CV
pitch3pitchVoice 3 V/oct PITCH input — sets the drum voice's tuning; summed with the V3 PIT knob.
V/oct pitch CV
pitch4pitchVoice 4 V/oct PITCH input — sets the wavetable oscillator's pitch; summed with the V4 TUN + FIN knobs.
V/oct pitch CV
v1_tonecvCV that offsets voice 1's TONE.
control voltage (CV); modulates v1_tone (summed directly (the destination DSP scales it))
v1_shapecvCV that offsets voice 1's SHAPE.
control voltage (CV); modulates v1_shape (summed directly (the destination DSP scales it))
v1_volumecvCV that offsets voice 1's VOLUME.
control voltage (CV); modulates v1_volume (summed directly (the destination DSP scales it))
v1_decaycvCV that offsets voice 1's DECAY (log).
control voltage (CV); modulates v1_decay (summed directly (the destination DSP scales it))
v2_tonecvCV that offsets voice 2's TONE.
control voltage (CV); modulates v2_tone (summed directly (the destination DSP scales it))
v2_shapecvCV that offsets voice 2's SHAPE.
control voltage (CV); modulates v2_shape (summed directly (the destination DSP scales it))
v2_volumecvCV that offsets voice 2's VOLUME.
control voltage (CV); modulates v2_volume (summed directly (the destination DSP scales it))
v2_decaycvCV that offsets voice 2's DECAY (log).
control voltage (CV); modulates v2_decay (summed directly (the destination DSP scales it))
v3_tonecvCV that offsets voice 3's TONE.
control voltage (CV); modulates v3_tone (summed directly (the destination DSP scales it))
v3_shapecvCV that offsets voice 3's SHAPE.
control voltage (CV); modulates v3_shape (summed directly (the destination DSP scales it))
v3_volumecvCV that offsets voice 3's VOLUME.
control voltage (CV); modulates v3_volume (summed directly (the destination DSP scales it))
v3_decaycvCV that offsets voice 3's DECAY (log).
control voltage (CV); modulates v3_decay (summed directly (the destination DSP scales it))
v4_fmaudioVoice 4 FM input (audio-rate) — an external audio signal that frequency-modulates voice 4's oscillator (depth set by the FM amount).
audio signal
v4_wavePoscvCV that offsets voice 4's WAVE POSITION.
control voltage (CV); modulates v4_wavePos (summed directly (the destination DSP scales it))
v4_attackcvCV that offsets voice 4's ATTACK (log).
control voltage (CV); modulates v4_attack (summed directly (the destination DSP scales it))
v4_decaycvCV that offsets voice 4's DECAY (log).
control voltage (CV); modulates v4_decay (summed directly (the destination DSP scales it))
v4_sustaincvCV that offsets voice 4's SUSTAIN.
control voltage (CV); modulates v4_sustain (summed directly (the destination DSP scales it))
v4_releasecvCV that offsets voice 4's RELEASE (log).
control voltage (CV); modulates v4_release (summed directly (the destination DSP scales it))
v4_volumecvCV that offsets voice 4's VOLUME.
control voltage (CV); modulates v4_volume (summed directly (the destination DSP scales it))
v1_pancvCV that offsets voice 1's PAN.
control voltage (CV); modulates v1_pan (summed directly (the destination DSP scales it))
v1_sendAcvCV that offsets voice 1's SEND A amount.
control voltage (CV); modulates v1_sendA (summed directly (the destination DSP scales it))
v1_sendBcvCV that offsets voice 1's SEND B amount.
control voltage (CV); modulates v1_sendB (summed directly (the destination DSP scales it))
v2_pancvCV that offsets voice 2's PAN.
control voltage (CV); modulates v2_pan (summed directly (the destination DSP scales it))
v2_sendAcvCV that offsets voice 2's SEND A amount.
control voltage (CV); modulates v2_sendA (summed directly (the destination DSP scales it))
v2_sendBcvCV that offsets voice 2's SEND B amount.
control voltage (CV); modulates v2_sendB (summed directly (the destination DSP scales it))
v3_pancvCV that offsets voice 3's PAN.
control voltage (CV); modulates v3_pan (summed directly (the destination DSP scales it))
v3_sendAcvCV that offsets voice 3's SEND A amount.
control voltage (CV); modulates v3_sendA (summed directly (the destination DSP scales it))
v3_sendBcvCV that offsets voice 3's SEND B amount.
control voltage (CV); modulates v3_sendB (summed directly (the destination DSP scales it))
v4_pancvCV that offsets voice 4's PAN.
control voltage (CV); modulates v4_pan (summed directly (the destination DSP scales it))
v4_sendAcvCV that offsets voice 4's SEND A amount.
control voltage (CV); modulates v4_sendA (summed directly (the destination DSP scales it))
v4_sendBcvCV that offsets voice 4's SEND B amount.
control voltage (CV); modulates v4_sendB (summed directly (the destination DSP scales it))
bc_decimatecvCV that offsets DESTROY DECIMATE.
control voltage (CV); modulates bc_decimate (summed directly (the destination DSP scales it))
bc_bitscvCV that offsets DESTROY BITS.
control voltage (CV); modulates bc_bits (summed directly (the destination DSP scales it))
bc_wetcvCV that offsets DESTROY WET.
control voltage (CV); modulates bc_wet (summed directly (the destination DSP scales it))
rv_sizecvCV that offsets REVERB SIZE.
control voltage (CV); modulates rv_size (summed directly (the destination DSP scales it))
rv_dampcvCV that offsets REVERB DAMP.
control voltage (CV); modulates rv_damp (summed directly (the destination DSP scales it))
rv_mixcvCV that offsets REVERB MIX.
control voltage (CV); modulates rv_mix (summed directly (the destination DSP scales it))
flt_cutoffcvCV that offsets the MASTER FILTER CUTOFF (log).
control voltage (CV); modulates flt_cutoff (summed directly (the destination DSP scales it))
flt_resonancecvCV that offsets the MASTER FILTER RESONANCE.
control voltage (CV); modulates flt_resonance (summed directly (the destination DSP scales it))
flt_modecvCV that offsets the MASTER FILTER MODE.
control voltage (CV); modulates flt_mode (summed directly (the destination DSP scales it))
flt_pingDecaycvCV that offsets the MASTER FILTER PING DECAY (log).
control voltage (CV); modulates flt_pingDecay (summed directly (the destination DSP scales it))
returnAcvCV (audio-rate) — the aux-A wet RETURN bus; also accepts an external wet signal patched back from an outboard effect.
control voltage (CV); modulates returnA (summed directly (the destination DSP scales it))
returnBcvCV (audio-rate) — the aux-B wet RETURN bus; also accepts an external wet signal patched back from an outboard effect.
control voltage (CV); modulates returnB (summed directly (the destination DSP scales it))

outputs

idcablewhat it does
outLaudioMaster mix output, LEFT — all four voices (post per-voice vol/pan/sends), the two aux returns, summed and passed through the master QBRT filter.
audio signal
outRaudioMaster mix output, RIGHT — the partner of outL (carries the pan-positioned right side of the stereo image).
audio signal

params

idlabelrangedefaultcurve
v1_pitch1P-36..36st0linear
v1_tone1T0..10.3linear
v1_shape1S0..10.3linear
v1_volume1V0..21linear
v1_decay1D0.001..0.5s0.15log
v2_pitch2P-36..36st0linear
v2_tone2T0..10.3linear
v2_shape2S0..10.3linear
v2_volume2V0..21linear
v2_decay2D0.001..0.5s0.15log
v3_pitch3P-36..36st0linear
v3_tone3T0..10.3linear
v3_shape3S0..10.3linear
v3_volume3V0..21linear
v3_decay3D0.001..0.5s0.15log
v4_tune4T-36..36st0linear
v4_fine4F-100..100¢0linear
v4_wavePos4W0..10linear
v4_fmAmount4FM0..10linear
v4_attack4A0.001..2s0.005log
v4_decay4D0.001..4s0.1log
v4_sustain4S0..10.7linear
v4_release4R0.001..8s0.3log
v4_volume4V0..20.8linear
v1_pan1Pn-1..10linear
v1_sendA1sA0..10linear
v1_sendB1sB0..10linear
v2_pan2Pn-1..10linear
v2_sendA2sA0..10linear
v2_sendB2sB0..10linear
v3_pan3Pn-1..10linear
v3_sendA3sA0..10linear
v3_sendB3sB0..10linear
v4_pan4Pn-1..10linear
v4_sendA4sA0..10linear
v4_sendB4sB0..10linear
bc_decimatebcDec1..641linear
bc_bitsbcBits1..1616linear
bc_wetbcWet0..11linear
rv_sizervSize0..10.5linear
rv_damprvDamp0..10.3linear
rv_mixrvMix0..10.3linear
flt_cutofffCut20..20000Hz18000log
flt_resonancefRes0..0.990.4linear
flt_modefMod0..10linear
flt_pingDecayfPng0.005..0.5s0.15log
returnAretA0..10.5linear
returnBretB0..10.5linear

controls

controlwhat it does
bcBitsDESTROY BITS (1..16) — bit-depth reduction on the aux-A bus (quantization crunch); 16 = clean. CV via the bc_bits input.
bcDecDESTROY DECIMATE (1..64) — sample-rate reduction on the aux-A bus (downsampling grit). CV via the bc_decimate input.
bcWetDESTROY WET (0..1) — dry/wet of the bitcrusher on the aux-A bus. CV via the bc_wet input.
fCutMASTER FILTER (QBRT) CUTOFF (20 Hz..20 kHz, log) — the corner frequency of the master resonant filter the whole mix passes through. CV via the flt_cutoff input.
fModMASTER FILTER MODE (0..1) — morphs the QBRT filter's response (e.g. low-pass ↔ band-pass character). CV via the flt_mode input.
fPngMASTER FILTER PING DECAY (0.005..0.5 s, log) — how long the resonant filter 'pings'/rings when struck. CV via the flt_pingDecay input.
fResMASTER FILTER RESONANCE (0..0.99) — emphasis at the cutoff; high values ring/self-oscillate. CV via the flt_resonance input.
retARETURN A level (0..1) — how much of the DESTROY (aux-A) wet bus returns into the master mix. CV via the returnA input.
retBRETURN B level (0..1) — how much of the reverb (aux-B) wet bus returns into the master mix. CV via the returnB input.
rvDampREVERB DAMP (0..1) — high-frequency damping of the reverb tail (darker as it rises). CV via the rv_damp input.
rvMixREVERB MIX (0..1) — dry/wet of the aux-B reverb. CV via the rv_mix input.
rvSizeREVERB SIZE (0..1) — the aux-B reverb tank's room size / decay length. CV via the rv_size input.
1DVoice 1 DECAY (0.001..0.5 s, log) — how long the drum hit rings out. CV via the v1_decay input.
1PnVoice 1 PAN (−1 left .. +1 right) in the stereo mix. CV via the v1_pan input.
1PVoice 1 PITCH (semitones, −36..+36) — coarse tuning of the synth-drum voice. CV via the pitch1 input.
1sAVoice 1 SEND A (0..1) — how much of voice 1 is tapped to aux bus A (→ DESTROY bitcrusher). CV via the v1_sendA input.
1sBVoice 1 SEND B (0..1) — how much of voice 1 is tapped to aux bus B (→ reverb). CV via the v1_sendB input.
1SVoice 1 SHAPE (0..1) — the voice's waveshape/timbre morph. CV via the v1_shape input.
1TVoice 1 TONE (0..1) — DRUMMERGIRL's tonal/click character. CV via the v1_tone input.
1VVoice 1 VOLUME (0..2) — the voice's level before pan + sends. CV via the v1_volume input.
2DVoice 2 DECAY (0.001..0.5 s, log) — how long the drum hit rings out. CV via the v2_decay input.
2PnVoice 2 PAN (−1 left .. +1 right) in the stereo mix. CV via the v2_pan input.
2PVoice 2 PITCH (semitones, −36..+36) — coarse tuning of the synth-drum voice. CV via the pitch2 input.
2sAVoice 2 SEND A (0..1) — how much of voice 2 is tapped to aux bus A (→ DESTROY bitcrusher). CV via the v2_sendA input.
2sBVoice 2 SEND B (0..1) — how much of voice 2 is tapped to aux bus B (→ reverb). CV via the v2_sendB input.
2SVoice 2 SHAPE (0..1) — the voice's waveshape/timbre morph. CV via the v2_shape input.
2TVoice 2 TONE (0..1) — DRUMMERGIRL's tonal/click character. CV via the v2_tone input.
2VVoice 2 VOLUME (0..2) — the voice's level before pan + sends. CV via the v2_volume input.
3DVoice 3 DECAY (0.001..0.5 s, log) — how long the drum hit rings out. CV via the v3_decay input.
3PnVoice 3 PAN (−1 left .. +1 right) in the stereo mix. CV via the v3_pan input.
3PVoice 3 PITCH (semitones, −36..+36) — coarse tuning of the synth-drum voice. CV via the pitch3 input.
3sAVoice 3 SEND A (0..1) — how much of voice 3 is tapped to aux bus A (→ DESTROY bitcrusher). CV via the v3_sendA input.
3sBVoice 3 SEND B (0..1) — how much of voice 3 is tapped to aux bus B (→ reverb). CV via the v3_sendB input.
3SVoice 3 SHAPE (0..1) — the voice's waveshape/timbre morph. CV via the v3_shape input.
3TVoice 3 TONE (0..1) — DRUMMERGIRL's tonal/click character. CV via the v3_tone input.
3VVoice 3 VOLUME (0..2) — the voice's level before pan + sends. CV via the v3_volume input.
4AVoice 4 ATTACK (0.001..2 s, log) — amp-envelope rise time from note-on. CV via the v4_attack input.
4DVoice 4 DECAY (0.001..4 s, log) — fall from the attack peak to the sustain level. CV via the v4_decay input.
4FVoice 4 FINE tune (cents, −100..+100) — fine pitch trim between the semitone steps of TUNE.
4FMVoice 4 FM AMOUNT (0..1) — depth of the audio-rate frequency modulation from the v4_fm input.
4PnVoice 4 PAN (−1 left .. +1 right). CV via the v4_pan input.
4RVoice 4 RELEASE (0.001..8 s, log) — fade to silence after the gate falls. CV via the v4_release input.
4sAVoice 4 SEND A (0..1) — amount tapped to aux bus A (→ DESTROY). CV via the v4_sendA input.
4sBVoice 4 SEND B (0..1) — amount tapped to aux bus B (→ reverb). CV via the v4_sendB input.
4SVoice 4 SUSTAIN level (0..1) — the level held while the V4 gate stays high. CV via the v4_sustain input.
4TVoice 4 TUNE (semitones, −36..+36) — coarse tuning of the wavetable oscillator. CV via the pitch4 input.
4VVoice 4 VOLUME (0..2) — the voice's level before pan + sends. CV via the v4_volume input.
4WVoice 4 WAVE POSITION (0..1) — scans through the wavetable frames (saw → square → triangle → sine), morphing the timbre. CV via the v4_wavePos input.

source

riotgirls.ts on GitHub.

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