livepilot 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/LICENSE +21 -0
  3. package/README.md +409 -0
  4. package/bin/livepilot.js +390 -0
  5. package/installer/install.js +95 -0
  6. package/installer/paths.js +79 -0
  7. package/mcp_server/__init__.py +2 -0
  8. package/mcp_server/__main__.py +5 -0
  9. package/mcp_server/connection.py +210 -0
  10. package/mcp_server/memory/__init__.py +5 -0
  11. package/mcp_server/memory/technique_store.py +296 -0
  12. package/mcp_server/server.py +87 -0
  13. package/mcp_server/tools/__init__.py +1 -0
  14. package/mcp_server/tools/arrangement.py +407 -0
  15. package/mcp_server/tools/browser.py +86 -0
  16. package/mcp_server/tools/clips.py +218 -0
  17. package/mcp_server/tools/devices.py +256 -0
  18. package/mcp_server/tools/memory.py +198 -0
  19. package/mcp_server/tools/mixing.py +121 -0
  20. package/mcp_server/tools/notes.py +269 -0
  21. package/mcp_server/tools/scenes.py +89 -0
  22. package/mcp_server/tools/tracks.py +175 -0
  23. package/mcp_server/tools/transport.py +117 -0
  24. package/package.json +37 -0
  25. package/plugin/agents/livepilot-producer/AGENT.md +62 -0
  26. package/plugin/commands/beat.md +18 -0
  27. package/plugin/commands/memory.md +22 -0
  28. package/plugin/commands/mix.md +15 -0
  29. package/plugin/commands/session.md +13 -0
  30. package/plugin/commands/sounddesign.md +16 -0
  31. package/plugin/plugin.json +19 -0
  32. package/plugin/skills/livepilot-core/SKILL.md +208 -0
  33. package/plugin/skills/livepilot-core/references/ableton-workflow-patterns.md +831 -0
  34. package/plugin/skills/livepilot-core/references/device-atlas/00-index.md +110 -0
  35. package/plugin/skills/livepilot-core/references/device-atlas/distortion-and-character.md +687 -0
  36. package/plugin/skills/livepilot-core/references/device-atlas/drums-and-percussion.md +753 -0
  37. package/plugin/skills/livepilot-core/references/device-atlas/dynamics-and-punch.md +525 -0
  38. package/plugin/skills/livepilot-core/references/device-atlas/eq-and-filtering.md +402 -0
  39. package/plugin/skills/livepilot-core/references/device-atlas/midi-tools.md +963 -0
  40. package/plugin/skills/livepilot-core/references/device-atlas/movement-and-modulation.md +874 -0
  41. package/plugin/skills/livepilot-core/references/device-atlas/space-and-depth.md +571 -0
  42. package/plugin/skills/livepilot-core/references/device-atlas/spectral-and-weird.md +714 -0
  43. package/plugin/skills/livepilot-core/references/device-atlas/synths-native.md +953 -0
  44. package/plugin/skills/livepilot-core/references/m4l-devices.md +352 -0
  45. package/plugin/skills/livepilot-core/references/memory-guide.md +107 -0
  46. package/plugin/skills/livepilot-core/references/midi-recipes.md +402 -0
  47. package/plugin/skills/livepilot-core/references/mixing-patterns.md +578 -0
  48. package/plugin/skills/livepilot-core/references/overview.md +209 -0
  49. package/plugin/skills/livepilot-core/references/sound-design.md +392 -0
  50. package/remote_script/LivePilot/__init__.py +42 -0
  51. package/remote_script/LivePilot/arrangement.py +693 -0
  52. package/remote_script/LivePilot/browser.py +424 -0
  53. package/remote_script/LivePilot/clips.py +211 -0
  54. package/remote_script/LivePilot/devices.py +596 -0
  55. package/remote_script/LivePilot/diagnostics.py +198 -0
  56. package/remote_script/LivePilot/mixing.py +194 -0
  57. package/remote_script/LivePilot/notes.py +339 -0
  58. package/remote_script/LivePilot/router.py +74 -0
  59. package/remote_script/LivePilot/scenes.py +99 -0
  60. package/remote_script/LivePilot/server.py +293 -0
  61. package/remote_script/LivePilot/tracks.py +268 -0
  62. package/remote_script/LivePilot/transport.py +151 -0
  63. package/remote_script/LivePilot/utils.py +123 -0
  64. package/requirements.txt +2 -0
@@ -0,0 +1,402 @@
1
+ # EQ & Filtering Device Atlas
2
+
3
+ > Signal-shaping tools for frequency sculpting, resonance, spectral manipulation, and vocoding.
4
+ > Covers 8 native Ableton devices + 5 user M4L devices from the CLX_02 collection.
5
+
6
+ ---
7
+
8
+ ## Native Ableton Devices
9
+
10
+ ---
11
+
12
+ ### EQ Eight
13
+
14
+ - **Type:** Native
15
+ - **Load via:** `find_and_load_device("EQ Eight")`
16
+ - **What it does:** Surgical 8-band parametric EQ with real-time spectrum analyzer. Clean, transparent, and precise. The workhorse EQ for mixing and sound design. Supports stereo, L/R, and Mid/Side processing modes.
17
+ - **Signal flow:** Input -> 8 independent filter bands (series) -> Spectrum Analyzer -> Output. Each band has its own filter type, frequency, gain, and Q. In M/S mode the signal is encoded to mid+side, processed separately, then decoded back to stereo.
18
+ - **Key parameters:**
19
+ - **Band 1-8 Frequency** -> sets center/cutoff frequency for each band -> 20 Hz to 20 kHz; place surgical cuts at problem frequencies (e.g., 250 Hz mud, 3 kHz harshness)
20
+ - **Band 1-8 Gain** -> boost or cut at the set frequency -> +/-15 dB; gentle 1-3 dB moves for mixing, larger cuts for problem solving; gain is locked for Low Cut, High Cut, and Notch types
21
+ - **Band 1-8 Q** -> bandwidth/resonance of each band -> narrow Q (4-8) for surgical notches, wide Q (0.5-1.5) for broad tonal shaping
22
+ - **Band 1-8 Filter Type** -> selects filter shape -> choices: Low Cut 48, Low Cut 12, Low Shelf, Bell, Notch, High Shelf, High Cut 12, High Cut 48
23
+ - **Mode** -> stereo processing mode -> Stereo (both channels linked), L/R (independent left/right), M/S (independent mid/side)
24
+ - **Edit** -> toggles between L/R or M/S channel editing (only active when Mode is L/R or M/S)
25
+ - **Adaptive Q** -> models analog EQ behavior; Q narrows as gain increases -> on by default; leave on for musical results, turn off for precise digital control
26
+ - **Oversampling** -> 2x internal processing to smooth high-frequency filter curves -> enable for mastering or when shaping above 10 kHz; slight CPU increase
27
+ - **Scale** -> scales all gain values proportionally -> useful for A/B comparison; dial down to 0% to hear the unprocessed signal, then back to 100%
28
+ - **Output** -> trim output level after all EQ processing
29
+ - **Reach for this when:** You need precise frequency sculpting; cutting resonances; shaping tonal balance during mixing; working in mid/side; any situation requiring more than 3 bands or specific filter shapes.
30
+ - **Don't use when:** You just need a quick high/low shelf (use Channel EQ); you want analog DJ-style kills (use EQ Three); you want moving/modulated filtering (use Auto Filter).
31
+ - **Pairs well with:** Compressor (EQ before compression for tonal balance), Glue Compressor (EQ Eight on bus -> Glue for glue), Utility (for gain staging before EQ), Spectrum (for visual analysis alongside).
32
+ - **vs Channel EQ:** EQ Eight is surgical with 8 bands and multiple shapes; Channel EQ is quick and musical with 3 fixed bands. Use Channel EQ for fast broad strokes, EQ Eight when precision matters.
33
+ - **vs EQ Three:** EQ Eight is a mixing tool; EQ Three is a performance/DJ tool. EQ Eight has no kill switches but far more control.
34
+
35
+ ---
36
+
37
+ ### EQ Three
38
+
39
+ - **Type:** Native
40
+ - **Load via:** `find_and_load_device("EQ Three")`
41
+ - **What it does:** Simple 3-band DJ-style EQ with kill switches. Modeled on mixer circuitry -- even at default settings it imparts a slight color. The gain knobs go to negative infinity (full kill). Designed for live performance, not surgical mixing.
42
+ - **Signal flow:** Input -> 3-band crossover (split at FreqLow and FreqHi) -> independent gain per band -> sum -> Output. Each band has a kill switch that fully mutes that range.
43
+ - **Key parameters:**
44
+ - **GainLow** -> boost/cut low frequencies below FreqLow -> -inf to +6 dB; turn fully left to kill bass completely
45
+ - **GainMid** -> boost/cut mid frequencies between FreqLow and FreqHi -> -inf to +6 dB; cut mids for "scooped" DJ transitions
46
+ - **GainHi** -> boost/cut high frequencies above FreqHi -> -inf to +6 dB; kill highs to remove hats/cymbals during transitions
47
+ - **FreqLow** -> crossover point between Low and Mid bands -> sweet spot 200-300 Hz for bass/mid separation
48
+ - **FreqHi** -> crossover point between Mid and High bands -> sweet spot 2.5-4 kHz for mid/high separation
49
+ - **L / M / H kill switches** -> instant mute of Low, Mid, or High band -> map to MIDI controller for live performance
50
+ - **24 / 48 slope buttons** -> filter slope per crossover -> 24 dB/oct for smooth transitions, 48 dB/oct for sharp DJ-style cuts
51
+ - **Reach for this when:** DJing; live performance; quick frequency kills; drop buildups where you want to remove and reintroduce bass.
52
+ - **Don't use when:** Mixing (too coarse, adds coloration); mastering; any situation requiring precision. The analog modeling adds subtle artifacts even at neutral settings.
53
+ - **Pairs well with:** Beat Repeat (kill mids -> Beat Repeat on highs), Utility (gain after kills to compensate), any performance effect chain.
54
+ - **vs Channel EQ:** EQ Three has kill switches and DJ character; Channel EQ is cleaner and better for static mixing.
55
+ - **vs EQ Eight:** EQ Three is a blunt performance tool; EQ Eight is a precision mixing tool. They serve completely different purposes.
56
+
57
+ ---
58
+
59
+ ### Channel EQ
60
+
61
+ - **Type:** Native
62
+ - **Load via:** `find_and_load_device("Channel EQ")`
63
+ - **What it does:** Simple, musical 3-band EQ inspired by classic analog mixing consoles. Quick tonal shaping with minimal parameters. Built-in spectrum display. Very low CPU. Introduced in Live 10.
64
+ - **Signal flow:** Input -> HP 80 Hz filter (optional) -> Low shelf (100 Hz) -> Mid peak (sweepable 120 Hz - 7.5 kHz) -> High shelf (with built-in LP rolloff when attenuating) -> Output gain -> Output.
65
+ - **Key parameters:**
66
+ - **HP 80 Hz** -> toggles a fixed high-pass filter at 80 Hz -> enable on every non-bass track to remove rumble; essential on vocals, guitars, keys
67
+ - **Low** -> low shelf gain at 100 Hz -> +/-15 dB; boost 2-4 dB to warm up thin tracks; cut 2-4 dB to reduce muddiness
68
+ - **Mid** -> sweepable peak filter gain -> +/-12 dB; the frequency slider (120 Hz - 7.5 kHz) lets you target the mid range; boost at 1-3 kHz for presence, cut at 300-500 Hz for clarity
69
+ - **Mid Frequency** -> center frequency of the mid band -> 120 Hz to 7.5 kHz; sweep to find problem frequencies
70
+ - **High** -> high shelf gain, with a special behavior: when boosting, pure shelf; when attenuating, combines shelf with a LP filter that rolls from 20 kHz down to 8 kHz -> +/-15 dB; cut 2-3 dB for de-harshness; boost 1-2 dB for air
71
+ - **Output** -> gain compensation after EQ -> use to match loudness before/after EQ adjustments
72
+ - **Spectrum** -> real-time frequency display overlaid on the EQ curves
73
+ - **Reach for this when:** Quick mix moves on individual tracks; you want console-style simplicity; shaping drum hits in a Drum Rack (one per pad); taming reverb tails.
74
+ - **Don't use when:** You need more than 3 bands; you need mid/side processing; you need precise notch filtering.
75
+ - **Pairs well with:** Compressor (Channel EQ first for tonal shaping, then compress), Saturator (EQ -> Saturator for focused harmonic drive), Drum Rack (one Channel EQ per pad).
76
+ - **vs EQ Eight:** Channel EQ is faster to dial in with fewer decisions; EQ Eight offers more bands, shapes, and modes. Channel EQ for tracking/rough mix, EQ Eight for detailed mixing.
77
+ - **vs EQ Three:** Channel EQ is cleaner and has a sweepable mid; EQ Three has kill switches for performance. Channel EQ for mixing, EQ Three for DJing.
78
+
79
+ ---
80
+
81
+ ### Auto Filter
82
+
83
+ - **Type:** Native
84
+ - **Load via:** `find_and_load_device("Auto Filter")`
85
+ - **What it does:** Feature-rich resonant filter with envelope follower, LFO, and sidechain modulation. Models multiple analog circuit types. Massive sonic range from subtle warmth to aggressive screaming sweeps. Completely overhauled in Live 12.2 with new filter types and circuit models.
86
+ - **Signal flow:** Input -> Drive/Saturation -> Filter (type + circuit model) -> Envelope Follower & LFO modulate cutoff -> Sidechain input (optional) -> Mix -> Output.
87
+
88
+ - **Key parameters:**
89
+
90
+ *Filter Section:*
91
+ - **Filter Type** -> selects the core filter behavior -> choices: Low-pass, High-pass, Band-pass, Notch, Morph, DJ, Comb, Resampling, Notch+LP, Vowel
92
+ - **Freq (Cutoff)** -> filter cutoff frequency -> 20 Hz to 20 kHz; the single most important parameter; automate for sweeps. For DJ filter: replaced by "Control" knob. For Vowel: replaced by "Pitch" knob
93
+ - **Res (Resonance)** -> emphasis at cutoff frequency -> 0-100%; subtle warmth at 20-30%, screaming at 70%+, self-oscillation near 100% on some circuits
94
+ - **Morph** -> transforms the filter character depending on type -> on LP/HP/BP/Notch: morphs between filter shapes; on DJ: blends LP and HP; on Vowel: shifts vowel formant
95
+ - **Circuit Type** -> analog filter model -> choices:
96
+ - *SVF*: Clean state-variable filter, transparent, no coloration; best for surgical filtering
97
+ - *DFM*: Feeds back distortion internally, warm to aggressive; new in 12.2
98
+ - *MS2*: Modeled on Korg MS-20 filter; smashes resonant peaks, smooth limiting; great for synth-like character
99
+ - *PRD*: Modeled on Moog Prodigy filter; pokiest resonance, wild harmonics at high res; most aggressive
100
+ - *SMP*: Middle ground, crushes lows slightly more than highs; good default when unsure
101
+ - *OSR*: Maintains signal contour, tasteful saturation; best for preserving top end
102
+ - **Drive** -> input gain before filter (adds saturation/distortion) -> 0-24 dB; works on all filter types in Live 12.2; push to 6-12 dB for warmth, above for aggressive grit
103
+
104
+ *Envelope Follower:*
105
+ - **Env Amount** -> how much the input amplitude modulates cutoff -> positive values open filter on loud signals; negative values close it
106
+ - **Attack** -> envelope rise time -> fast (1 ms) for percussive response, slow (50-200 ms) for smooth following
107
+ - **Release** -> envelope fall time -> fast for rhythmic pumping, slow for gentle movement
108
+
109
+ *LFO:*
110
+ - **LFO Amount** -> modulation depth on cutoff -> subtle movement at 10-20%, dramatic sweeps at 50%+
111
+ - **LFO Rate** -> frequency in Hz or synced to tempo -> sync to 1/4 or 1/8 for rhythmic filtering; free-running for evolving textures
112
+ - **LFO Wave** -> shape of modulation -> Sine (smooth), Triangle, Saw, Square, Ramp Up, Ramp Down, Wander (random smooth), S&H (random stepped)
113
+ - **Stereo Mode** -> Phase (LFO offset between L/R in degrees) or Spin (percentage detuning between L/R)
114
+
115
+ *Sidechain:*
116
+ - **External toggle** -> enables external sidechain input
117
+ - **SC Source** -> selects sidechain track and tap point (Pre FX, Post FX, Post Mixer)
118
+ - **SC Mix** -> blend of external vs internal sidechain -> 100% = fully external
119
+ - **SC Filter** -> frequency-selective sidechain filter (LP/HP/BP/shelf)
120
+
121
+ *Output:*
122
+ - **Dry/Wet** -> blend processed and dry signal
123
+
124
+ - **Reach for this when:** Filter sweeps; envelope-following duck effects; rhythmic LFO filtering; sidechain-triggered filter effects; DJ-style crossfader filtering; comb filtering; vowel sounds; any situation where the filter needs to move.
125
+ - **Don't use when:** You need static EQ (use EQ Eight); you want tuned resonant bodies (use Corpus or Resonators).
126
+ - **Pairs well with:** Compressor (tame resonance peaks after filter), Reverb (filter sweep into reverb for builds), Delay (filtered delay textures), LFO MIDI effect (for complex modulation routing).
127
+ - **vs EQ Eight:** Auto Filter is a creative/performance effect with modulation; EQ Eight is a static mixing tool. Different purposes entirely.
128
+
129
+ ---
130
+
131
+ ### Spectral Resonator
132
+
133
+ - **Type:** Native (Live 11+ Suite only)
134
+ - **Load via:** `find_and_load_device("Spectral Resonator")`
135
+ - **What it does:** Decomposes audio into spectral partials via FFT, then applies pitched resonance, stretching, and modulation in the frequency domain. Creates everything from shimmering harmonics to metallic drones to vocoder-like pitched effects. Can be played via MIDI sidechain for melodic control of the resonance.
136
+ - **Signal flow:** Input -> FFT analysis -> Spectral processing (resonance at Freq/MIDI pitch, with Decay, Stretch, Shift applied to partials) -> Modulation (Chorus/Wander/Granular) -> IFFT resynthesis -> Dry/Wet mix -> Output.
137
+ - **Key parameters:**
138
+ - **Freq** -> fundamental frequency of the resonance in Hz mode -> lower values = darker, dirtier; higher = brighter, more tonal. In MIDI mode, pitch is determined by incoming MIDI notes
139
+ - **MIDI toggle** -> switches from internal Freq knob to external MIDI pitch control -> enable to play the resonator melodically from a MIDI track
140
+ - **Decay** -> how long partials ring after excitation -> short (50-200 ms) for percussive shimmer; medium (500-800 ms) for delay-like effects; long (2000+ ms) for infinite drones
141
+ - **Unison** -> number of detuned voices -> 1-8 voices; more voices = thicker, darker, chorus-like
142
+ - **Uni. Amt (Unison Amount)** -> detuning spread of unison voices -> 0-100%; high values with many voices create dense clouds
143
+ - **Stretch** -> shifts the spacing of harmonic partials -> 0% = natural harmonic series; positive = stretched (inharmonic, metallic); negative = compressed (bell-like)
144
+ - **Shift** -> shifts all partials up or down in frequency -> subtle shifts add shimmer; large shifts create alien textures
145
+ - **Mod Type** -> modulation applied to partials -> Chorus (gentle detuning), Wander (random sawtooth modulation of partials), Granular (random amplitude modulation with exponential decay)
146
+ - **Mod Rate** -> speed of the selected modulation -> Granular: controls density of grains; Wander: speed of random movement
147
+ - **Mono/Poly** -> polyphony for MIDI input -> Mono, 2, 4, 8, or 16 voices; use Poly 4-8 for chords
148
+ - **Dry/Wet** -> blend -> 20-40% for subtle harmonic enhancement; 60-100% for full spectral transformation
149
+ - **Reach for this when:** Adding harmonic shimmer to pads; turning percussion into melodic content via MIDI; creating spectral freezes and drones; vocoder-like effects without a carrier signal; build-ups and transitions.
150
+ - **Don't use when:** You want a simple filter sweep (use Auto Filter); you want transparent EQ (use EQ Eight); you need physical modeling resonance (use Corpus).
151
+ - **Pairs well with:** Spectral Time (spectral freeze + delay after resonance), Reverb (enormous washed-out spaces), Corpus (spectral into physical modeling for hybrid textures), Utility (tame output level).
152
+ - **vs Vocoder:** Spectral Resonator works on a single input using FFT partials; Vocoder requires carrier + modulator and uses filter banks. Spectral Resonator is better for transforming a single source; Vocoder is better for imposing one signal's character onto another.
153
+ - **vs Resonators:** Spectral Resonator works in the frequency domain (FFT); Resonators uses tuned delay lines. Spectral Resonator is more experimental and alien; Resonators is more musical and predictable.
154
+
155
+ ---
156
+
157
+ ### Corpus
158
+
159
+ - **Type:** Native
160
+ - **Load via:** `find_and_load_device("Corpus")`
161
+ - **What it does:** Physical modeling resonator that simulates the acoustic behavior of resonant bodies. Excites a virtual physical object (beam, string, membrane, plate, pipe, tube, marimba bar) with the input signal. Adds tuned resonant character -- from subtle wooden warmth to full metallic ringing.
162
+ - **Signal flow:** Input -> Band-pass filter (optional) -> Physical model resonator (left + right with independent listening positions) -> LFO modulation -> Bleed (dry signal mixed back) -> Gain/Limiter -> Dry/Wet -> Output.
163
+ - **Key parameters:**
164
+
165
+ *Resonator:*
166
+ - **Resonance Type** -> selects physical model -> Beam, Marimba, String, Membrane, Plate, Pipe, Tube. Each has fundamentally different harmonic structure and decay characteristics
167
+ - **Quality** -> Eco or High -> Eco for performance, High for final rendering; High adds more overtones
168
+ - **Decay** -> internal damping -> short (0.1-0.5 s) for percussive hits; long (2-5 s) for sustained ringing
169
+ - **Material** -> how damping varies across frequency -> low values = higher frequencies damped first (warm, woody); high values = even damping (bright, metallic)
170
+ - **Radius** -> size of Pipe/Tube models -> affects pitch and sustain characteristics
171
+ - **Bright** -> amplitude of upper frequency components -> push for presence and shimmer
172
+ - **Inharm (Inharmonics)** -> shifts overtone pitches relative to fundamental -> negative = compressed (bell-like); positive = stretched (metallic/industrial)
173
+ - **Opening** -> how closed/open Pipe model is -> 0% = closed pipe (odd harmonics only, clarinet-like); 100% = open (all harmonics)
174
+ - **Ratio** -> X/Y axis proportion for Membrane/Plate -> changes the modal frequency pattern
175
+ - **Hit** -> where the excitation strikes the object -> 0% = center (fewer modes); higher = off-center (more complex overtones)
176
+
177
+ *Listening Position:*
178
+ - **Pos. L / Pos. R** -> where vibrations are measured on left/right resonators -> 0% = center of object; higher = closer to edge; different positions emphasize different overtones
179
+ - **Width** -> stereo mix between L and R resonators -> 0% = mono; increase for stereo spread
180
+
181
+ *Tuning:*
182
+ - **Tune** -> resonator pitch in Hz
183
+ - **MIDI Frequency** -> enables pitch control via MIDI sidechain -> allows playing the resonator melodically
184
+ - **Fine** -> fine tuning in cents
185
+ - **Spread** -> detunes L/R resonators -> positive = L higher, R lower; adds stereo width
186
+ - **Transpose** -> coarse MIDI tuning offset in semitones
187
+ - **PB Range** -> pitch bend range in semitones
188
+
189
+ *Filter:*
190
+ - **Filter toggle** -> band-pass filter on input -> narrow the excitation frequency range
191
+ - **Freq** -> center frequency of input filter
192
+ - **Bdwidth** -> bandwidth of input filter
193
+
194
+ *LFO:*
195
+ - **LFO Amount** -> modulation depth on resonant frequency
196
+ - **LFO Rate** -> Hz or tempo-synced
197
+ - **LFO Wave** -> Sine, Square, Triangle, Saw Up, Saw Down, Stepped Noise, Smooth Noise
198
+
199
+ *Global:*
200
+ - **Bleed** -> mixes unprocessed input back in -> restore transients and high frequencies lost in resonance
201
+ - **Gain** -> output level (has automatic limiter)
202
+ - **Dry/Wet** -> blend
203
+
204
+ - **Reach for this when:** Making drums sound like they're played on a resonant surface; adding pitched body resonance to percussion; creating tuned metallic textures; simulating marimbas, gongs, or struck objects from noise/clicks; MIDI-controlled resonant effects.
205
+ - **Don't use when:** You want a simple filter (use Auto Filter); you want parallel tuned delay lines (use Resonators); you want spectral-domain processing (use Spectral Resonator).
206
+ - **Pairs well with:** Drum Rack (Corpus on individual drum pads for tuned percussion), Operator/Simpler (excite Corpus with short clicks for synthetic instruments), Auto Filter (filter before Corpus to control excitation bandwidth), Reverb (after Corpus for resonant spaces).
207
+ - **vs Resonators:** Corpus uses physical modeling (real object simulation); Resonators uses tuned delay lines. Corpus sounds more organic and varied; Resonators is more musical and chord-oriented.
208
+ - **vs Spectral Resonator:** Corpus models physical objects; Spectral Resonator works in FFT domain. Corpus for realistic resonant body simulation; Spectral Resonator for otherworldly spectral effects.
209
+
210
+ ---
211
+
212
+ ### Resonators
213
+
214
+ - **Type:** Native
215
+ - **Load via:** `find_and_load_device("Resonators")`
216
+ - **What it does:** Five parallel tuned delay lines that ring at set pitches, creating tonal resonance from any input. The input passes through a multi-mode filter first, then feeds all five resonators simultaneously. Each resonator is tuned relative to the first, making it easy to set up chord voicings. Turns noise, drums, and speech into pitched, ringing tones.
217
+ - **Signal flow:** Input -> Multi-mode filter (LP/HP/BP/Notch) -> Resonator I (stereo) + Resonator II (left) + Resonator III (right) + Resonator IV (left) + Resonator V (right) in parallel -> Width control -> Output.
218
+ - **Key parameters:**
219
+
220
+ *Input Filter:*
221
+ - **Filter Type** -> LP, HP, BP, Notch -> shapes what frequencies excite the resonators; HP filters remove low rumble for cleaner resonance
222
+ - **Filter Freq** -> cutoff frequency of input filter
223
+ - **Filter Gain** -> gain of input filter (for shelf modes)
224
+
225
+ *Resonator Controls:*
226
+ - **Note (Resonator I)** -> root pitch of the resonator bank -> sets the fundamental; all other resonators are relative to this
227
+ - **Fine (Resonator I)** -> fine tuning in cents
228
+ - **Resonators II-V Pitch** -> semitone offset from Resonator I -> +/-24 semitones; set to chord intervals (e.g., +4, +7 for major triad; +3, +7 for minor)
229
+ - **Resonators II-V Fine** -> cent offset for each
230
+ - **Resonator I-V Gain** -> individual level per resonator -> balance the chord voicing
231
+ - **Resonator II-V On/Off** -> enable/disable individual resonators
232
+
233
+ *Global:*
234
+ - **Mode A / B** -> two distinct tonal characters -> Mode A is brighter and more present; Mode B drops pitch by an octave and sounds darker, more muffled. Try both on every source
235
+ - **Decay** -> feedback/ring time for all resonators -> short (0.1-1 s) for percussive pings; medium (2-5 s) for sustained chords; long (10+ s) for infinite drones
236
+ - **Const (Constant)** -> keeps delay time constant regardless of pitch -> when off, higher pitches decay faster (natural behavior); when on, even decay across all pitches
237
+ - **Color** -> brightness of the resonance -> low values roll off highs (warm, muffled); high values keep brightness (twangy, metallic)
238
+ - **Width** -> stereo spread of resonators II-V -> 0% = mono center; 100% = full stereo panning
239
+
240
+ - **Reach for this when:** Turning drums or noise into pitched chords; creating drone/chord beds from any audio; sympathetic string resonance effects; adding pitched ringing to percussion; sound design where you want a specific chord to ring out.
241
+ - **Don't use when:** You need a single resonant body simulation (use Corpus); you want spectral processing (use Spectral Resonator); you need a clean EQ (use EQ Eight).
242
+ - **Pairs well with:** Drum Rack (Resonators on a bus creates pitched rhythm), Reverb (after Resonators for massive spaces), Compressor (tame resonant peaks), Auto Filter (modulated filter before Resonators for evolving excitation).
243
+ - **vs Corpus:** Resonators creates chord-based resonance via delay lines; Corpus simulates a single physical object. Resonators for harmonic/musical effects; Corpus for realistic physical modeling.
244
+ - **vs Spectral Resonator:** Resonators is simple and musical (5 pitched delay lines); Spectral Resonator is complex and experimental (FFT-based). Resonators for predictable pitched resonance; Spectral Resonator for alien transformations.
245
+
246
+ ---
247
+
248
+ ### Vocoder
249
+
250
+ - **Type:** Native
251
+ - **Load via:** `find_and_load_device("Vocoder")`
252
+ - **What it does:** Classic vocoder effect using parallel filter banks. Analyzes the modulator signal's spectral envelope and imposes it onto the carrier signal. The modulator provides the rhythm and articulation (typically voice or drums); the carrier provides the pitch and timbre (typically a synth). Creates robotic speech, harmonic rhythms, and spectral blending effects.
253
+ - **Signal flow:** Modulator input -> Analysis filter bank (4-40 bands) -> Envelope followers extract amplitude per band -> Carrier input (Noise/External/Modulator/Pitch Tracking) -> Synthesis filter bank (same band count) -> Envelope followers control synthesis band levels -> Sum -> Formant shift -> Output.
254
+ - **Key parameters:**
255
+
256
+ *Carrier:*
257
+ - **Carrier Type** -> source of the output's tonal content -> Noise (built-in filtered noise), External (audio from another track via sidechain), Modulator (signal vocodes itself), Pitch Tracking (monophonic oscillator follows modulator pitch)
258
+ - **Noise** -> when Carrier = Noise, a built-in broadband noise source provides the harmonic material
259
+ - **External** -> select sidechain source track (typically a synth playing sustained chords)
260
+ - **Enhance** -> normalizes carrier volume and dynamics -> on = brighter, clearer vocoded output; off = more natural dynamics
261
+
262
+ *Filter Bank:*
263
+ - **Bands** -> number of analysis/synthesis filter bands -> 4-40; more bands = more intelligible/accurate; fewer = more smeared/abstract. Sweet spot: 16-24 for voice, 8-12 for drums
264
+ - **Range (Low/High)** -> frequency range of the filter bank -> default covers full spectrum; narrow for focused effects (e.g., 200 Hz - 8 kHz for voice)
265
+ - **BW (Bandwidth)** -> overlap between adjacent filter bands -> low % = narrow, precise; high % = blurred, smeared; 100% = natural overlap
266
+
267
+ *Envelope:*
268
+ - **Depth** -> how much modulator envelope shapes the carrier -> 0% = no modulation (pure carrier); 100% = classic vocoder; 200% = exaggerated peaks only. Sweet spot: 80-120% for voice
269
+ - **Attack** -> how fast filter bands respond to rising modulator levels -> 1 ms for crisp articulation; 10-50 ms for smoother response
270
+ - **Release** -> how fast filter bands respond to falling modulator levels -> 50-150 ms for speech clarity; 500+ ms for sustain and pad-like smoothing
271
+
272
+ *Formant & Voicing:*
273
+ - **Formant** -> shifts the synthesis filter bank up or down relative to analysis -> positive = smaller/brighter/female character; negative = larger/darker/male character; 0 = neutral
274
+ - **Unvoiced** -> adds white noise layer for consonants and transients -> 0% = fully vocoded (muffled consonants); 10-30% restores sibilance and "s"/"t" sounds; essential for speech intelligibility
275
+ - **Sens (Sensitivity)** -> threshold for the Unvoiced detector -> adjusts when consonant noise kicks in
276
+ - **Gate** -> threshold below which output is silenced -> use to remove background noise between words/phrases
277
+
278
+ *Output:*
279
+ - **Processing Mode** -> Precise, Retro, Fast -> Precise = clean digital; Retro = vintage vocoder character; Fast = lowest latency
280
+ - **Mono / Stereo / L/R** -> stereo processing mode
281
+ - **Dry/Wet** -> blend
282
+
283
+ - **Reach for this when:** Robotic voice effects; making drums speak; imposing vocal rhythm onto synth pads; harmonic sound design; creating rhythmic textures from static sounds; Daft Punk-style vocal processing.
284
+ - **Don't use when:** You want pitched resonance without a carrier signal (use Spectral Resonator); you want a simple filter (use Auto Filter); you just need EQ (use EQ Eight).
285
+ - **Pairs well with:** Operator/Analog (as carrier synth), Reverb (after Vocoder for space), Compressor (tame dynamic range of vocoded output), Utility (gain staging before Vocoder input), Chorus (after Vocoder for width).
286
+ - **vs Spectral Resonator:** Vocoder uses filter banks and needs carrier + modulator; Spectral Resonator uses FFT on a single input. Vocoder for classic robotic effects; Spectral Resonator for spectral transformation.
287
+
288
+ ---
289
+
290
+ ## User M4L Devices (CLX_02 Collection)
291
+
292
+ ---
293
+
294
+ ### 3-Band EQ (M4L by TheM)
295
+
296
+ - **Type:** M4L User
297
+ - **Load via:** `find_and_load_device("3-Band EQ")` (search user library)
298
+ - **What it does:** Zero-latency 3-band equalizer designed specifically for DJing. Fixes the phase distortion issues present in Ableton's native EQ Three (which can cause unwanted signal peaks at crossover points). Cleaner crossover behavior with adjustable frequency points.
299
+ - **Signal flow:** Input -> 3-band crossover (adjustable FreqLow and FreqHi) -> independent gain per band -> Volume fader with adjustable curve -> Output.
300
+ - **Key parameters:**
301
+ - **Low / Mid / High Gain** -> per-band level control -> two modes: "-52 dB to 0 dB" (cut only, safer for DJ use) or "-42 to +10 dB" (cut + boost)
302
+ - **FreqLow** -> low/mid crossover frequency -> adjustable; set to match your genre (e.g., 120 Hz for house, 200 Hz for hip-hop)
303
+ - **FreqHi** -> mid/high crossover frequency -> adjustable
304
+ - **Volume Fader** -> master output level
305
+ - **Volume Curve** -> adjusts the response curve of the volume fader -> tailor to your controller's feel
306
+ - **Reach for this when:** DJing in Ableton and you want cleaner crossovers than EQ Three; you need phase-correct band separation; you want a cut-only DJ EQ.
307
+ - **Don't use when:** Mixing or mastering (use EQ Eight or Channel EQ); you need kill switches (use EQ Three natively or map buttons).
308
+ - **vs EQ Three:** Cleaner phase response, no coloration at neutral, adjustable crossover points. EQ Three has built-in kill switches and the familiar DJ mixer character.
309
+
310
+ ---
311
+
312
+ ### GMaudio VSEQ 1.0 (M4L by groovmekanik)
313
+
314
+ - **Type:** M4L User
315
+ - **Load via:** `find_and_load_device("VSEQ")` or `find_and_load_device("GMaudio VSEQ")` (search user library)
316
+ - **What it does:** Combines a dual-shelf EQ (the "V-Filter") with a 3-band multiband saturation engine. The V-Filter uses two first-order shelving filters centered at 700 Hz with automatic volume compensation. The saturation splits the signal into 3 bands, each feeding a separate wave-shaper to generate distinct overtones. Includes 4x oversampling to minimize aliasing. Designed as a "tone + harmonics" channel strip tool.
317
+ - **Signal flow:** Input -> V-Filter (low shelf + high shelf at 700 Hz pivot, with auto-gain compensation) -> [EQ Mode switch: filter can apply to original signal OR to saturation input only] -> 3-band multiband saturation (3 independent wave-shapers) -> Colour control (harmonic balance) -> Output.
318
+ - **Key parameters:**
319
+ - **V-Filter Low** -> low shelf gain around 700 Hz -> positive = boost lows; negative = cut lows (emphasizes mids/highs)
320
+ - **V-Filter High** -> high shelf gain around 700 Hz -> positive = boost highs; negative = cut highs (emphasizes lows/mids)
321
+ - **EQ Mode** -> where the V-Filter is applied -> "Signal" = filters the output; "Sat Input" = filters only the saturation input (focus harmonics where needed)
322
+ - **Amount** -> saturation intensity -> gentle at low values, aggressive distortion at high values
323
+ - **Colour** -> harmonic balance of the 3-band saturation -> shapes which overtones are emphasized
324
+ - **Reach for this when:** You want quick tonal shaping plus harmonic enhancement in one device; adding warmth and presence to a mix bus; focusing saturation harmonics on specific frequency ranges.
325
+ - **Don't use when:** You need precise surgical EQ (use EQ Eight); you want clean transparent EQ without saturation (use Channel EQ).
326
+ - **vs Channel EQ:** VSEQ adds multiband saturation that Channel EQ lacks; Channel EQ has a sweepable mid that VSEQ lacks. VSEQ for "tone + grit", Channel EQ for "tone only".
327
+
328
+ ---
329
+
330
+ ### REW EQ by Iftah (M4L)
331
+
332
+ - **Type:** M4L User
333
+ - **Load via:** `find_and_load_device("REW EQ")` (search user library)
334
+ - **What it does:** Imports filter settings from Room EQ Wizard (.txt export files) and applies them as parametric EQ corrections inside Ableton. Visualizes the imported EQ curve. Designed for studio monitoring correction -- measure your room with REW, export the correction filters, import into this device on your master bus to hear a corrected response while mixing.
335
+ - **Signal flow:** Import REW .txt filter file -> Parse PK (peak) filter parameters -> Apply as parametric EQ bands -> Output with corrected frequency response.
336
+ - **Key parameters:**
337
+ - **Import** -> loads a REW filter export file (.txt format)
338
+ - **EQ Curve Display** -> visual representation of the imported correction curve
339
+ - **Filter bands** -> automatically set from the imported REW data; supports PK (peak/parametric) filter type, which covers 99.9% of room correction use cases
340
+ - **Reach for this when:** You've measured your room with Room EQ Wizard and want to apply correction directly in Ableton on the master bus; monitoring correction without external software; comparing corrected vs uncorrected monitoring.
341
+ - **Don't use when:** Creative EQ work (this is purely corrective); you haven't measured your room with REW first; you need filter types other than PK (peak).
342
+ - **Pairs well with:** Utility (place before REW EQ for monitoring level control), Spectrum (verify correction is working as expected).
343
+ - **Note:** Only supports PK (peak) filter type from REW exports. Other filter types (shelf, etc.) are not currently supported but rarely needed for room correction.
344
+
345
+ ---
346
+
347
+ ### Cat Growl Filter (M4L by Nick Holiday)
348
+
349
+ - **Type:** M4L User
350
+ - **Load via:** `find_and_load_device("Cat Growl Filter")` (search user library)
351
+ - **What it does:** Multi-purpose FX rack designed for aggressive, characterful filter sweeps. Features a custom dual-channel filter (independent L/R) with 8 interchangeable filter types per channel. The channels can move in sync or independently. Built for bass music, dubstep growls, and aggressive sound design. Includes 10 pre-mapped macros for quick performance control.
352
+ - **Signal flow:** Input -> Dual-channel filter (L and R processed independently or synced) -> FX modules (series of carefully tuned processors that enhance the "growl" character) -> Macro-controlled parameters -> Output.
353
+ - **Key parameters:**
354
+ - **Filter Type L / Filter Type R** -> independent filter type per channel -> 8 types each: Lowpass, Highpass, Bandpass, Bandstop, Peaknotch, Low Shelf, High Shelf, Resonant
355
+ - **Filter Frequency** -> cutoff frequency for filter sweep -> the core performance parameter; automate or map to a controller
356
+ - **L/R Sync** -> whether both channels move together or independently -> sync for standard sweeps; independent for stereo movement and phase effects
357
+ - **Macro 1-10** -> pre-programmed control mappings -> each macro affects multiple internal parameters for instant sonic variation; turning any one can produce subtle or drastic effects
358
+ - **Resonance** -> filter emphasis -> push for more aggressive growl character
359
+ - **Reach for this when:** Bass music sound design; aggressive dubstep/riddim growl effects; you want stereo filter effects with independent L/R processing; performance-oriented filter sweeps with macro control.
360
+ - **Don't use when:** You need clean, transparent filtering (use Auto Filter with SVF circuit); you want simple EQ (use EQ Eight); subtle mix work.
361
+ - **vs Auto Filter:** Cat Growl Filter is purpose-built for aggressive character with dual-channel and macro FX chain; Auto Filter is more versatile and transparent. Cat Growl Filter for bass music growls; Auto Filter for everything else.
362
+
363
+ ---
364
+
365
+ ### Stretta Filter Sequencer (M4L by Matthew Davidson / stretta)
366
+
367
+ - **Type:** M4L User
368
+ - **Load via:** `find_and_load_device("Filter Sequencer")` or `find_and_load_device("Step Filter")` (search user library)
369
+ - **What it does:** Eight independent step sequencers, each controlling a bandpass filter. Originally designed as a monome controller app for a Doepfer vocoder filter bank, now has the filter bank built-in. Each of the 8 bandpass filters can have a different loop length, creating polymetric rhythmic filtering patterns. Essentially a rhythmic vocoder-like effect driven by step sequencing rather than a modulator signal.
370
+ - **Signal flow:** Input -> 8 parallel bandpass filters -> each filter's amplitude is sequenced by its own step sequencer (independent loop lengths) -> Sum of filtered outputs -> Output.
371
+ - **Key parameters:**
372
+ - **Step Sequences 1-8** -> each row is an independent step sequencer controlling one bandpass filter's amplitude -> edit steps to create rhythmic filter patterns
373
+ - **Loop Length per filter** -> independent loop length for each of the 8 sequencers -> set different lengths for polymetric patterns (e.g., 5, 7, 8, 11 steps)
374
+ - **Band Frequencies** -> center frequency for each of the 8 bandpass filters -> spread across the spectrum for full vocoder-like coverage
375
+ - **Rate/Clock** -> sequencer speed, typically synced to tempo
376
+ - **Reach for this when:** Rhythmic spectral effects; polymetric filter patterns; vocoder-like rhythmic gating without needing a modulator signal; experimental sequenced filtering; glitch and IDM production.
377
+ - **Don't use when:** You need a standard filter sweep (use Auto Filter); you need static EQ (use EQ Eight); you want standard vocoding with speech (use Vocoder).
378
+ - **vs Vocoder:** Stretta Filter Sequencer uses step-sequenced bandpass filters; Vocoder uses a modulator signal's envelope. Filter Sequencer for precise rhythmic control; Vocoder for real-time spectral imprinting.
379
+ - **Note:** Originally designed for monome hardware controllers but works without one. Best experience is with the monome surface for direct tactile sequence editing.
380
+
381
+ ---
382
+
383
+ ## Quick Decision Matrix
384
+
385
+ | I want to... | Use this | Why |
386
+ |---|---|---|
387
+ | Surgically shape frequency balance | **EQ Eight** | 8 bands, multiple filter shapes, M/S mode |
388
+ | Quick console-style tone shaping | **Channel EQ** | 3 musical bands, fast, low CPU |
389
+ | DJ-style frequency kills | **EQ Three** | Kill switches, -inf gain, DJ mixer character |
390
+ | Phase-correct DJ EQ | **3-Band EQ (M4L)** | Cleaner crossovers than EQ Three |
391
+ | Moving filter sweeps | **Auto Filter** | LFO, envelope follower, sidechain, 10 filter types, 6 circuits |
392
+ | Aggressive bass growl filter | **Cat Growl Filter (M4L)** | Dual-channel, 8 types, macro FX, purpose-built for growl |
393
+ | Tuned resonant body on drums | **Corpus** | Physical modeling of beams, plates, strings, pipes |
394
+ | Chord-based pitched resonance | **Resonators** | 5 parallel tuned delay lines, easy chord voicing |
395
+ | Spectral shimmer and harmonics | **Spectral Resonator** | FFT-based, MIDI-playable, unison/stretch/modulation |
396
+ | Robotic voice / speech on synth | **Vocoder** | Classic carrier/modulator filter bank vocoding |
397
+ | Rhythmic sequenced filtering | **Stretta Filter Sequencer (M4L)** | 8 independent step-sequenced bandpass filters |
398
+ | Tone shaping + saturation in one | **GMaudio VSEQ (M4L)** | V-Filter shelves + 3-band multiband saturation |
399
+ | Room correction from REW | **REW EQ (M4L)** | Direct import of Room EQ Wizard correction curves |
400
+ | Transparent static EQ, no color | **EQ Eight** (Oversampling on) | Cleanest native EQ, adaptive Q off for digital precision |
401
+ | Warm analog-modeled filter | **Auto Filter** (MS2 or PRD circuit) | Korg/Moog circuit models with drive |
402
+ | Turn anything into a pitched drone | **Resonators** (long Decay) or **Spectral Resonator** (long Decay) | Both can create infinite sustain from transient input |