livepilot 1.16.0 → 1.17.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 (86) hide show
  1. package/CHANGELOG.md +344 -5
  2. package/README.md +16 -15
  3. package/m4l_device/LivePilot_Analyzer.amxd +0 -0
  4. package/m4l_device/livepilot_bridge.js +1 -1
  5. package/mcp_server/__init__.py +1 -1
  6. package/mcp_server/atlas/__init__.py +85 -0
  7. package/mcp_server/atlas/device_atlas.json +3183 -382
  8. package/mcp_server/atlas/device_techniques_index.json +1510 -0
  9. package/mcp_server/atlas/enrichments/__init__.py +1 -0
  10. package/mcp_server/atlas/enrichments/audio_effects/amp.yaml +112 -0
  11. package/mcp_server/atlas/enrichments/audio_effects/audio_effect_rack.yaml +77 -0
  12. package/mcp_server/atlas/enrichments/audio_effects/cabinet.yaml +81 -0
  13. package/mcp_server/atlas/enrichments/audio_effects/corpus.yaml +128 -0
  14. package/mcp_server/atlas/enrichments/audio_effects/envelope_follower.yaml +99 -0
  15. package/mcp_server/atlas/enrichments/audio_effects/external_audio_effect.yaml +64 -0
  16. package/mcp_server/atlas/enrichments/audio_effects/looper.yaml +85 -0
  17. package/mcp_server/atlas/enrichments/audio_effects/pitch_hack.yaml +61 -0
  18. package/mcp_server/atlas/enrichments/audio_effects/pitchloop89.yaml +111 -0
  19. package/mcp_server/atlas/enrichments/audio_effects/re_enveloper.yaml +51 -0
  20. package/mcp_server/atlas/enrichments/audio_effects/resonators.yaml +121 -0
  21. package/mcp_server/atlas/enrichments/audio_effects/snipper.yaml +53 -0
  22. package/mcp_server/atlas/enrichments/audio_effects/spectral_blur.yaml +64 -0
  23. package/mcp_server/atlas/enrichments/audio_effects/spectrum.yaml +61 -0
  24. package/mcp_server/atlas/enrichments/audio_effects/tuner.yaml +43 -0
  25. package/mcp_server/atlas/enrichments/audio_effects/utility.yaml +118 -0
  26. package/mcp_server/atlas/enrichments/audio_effects/vocoder.yaml +94 -0
  27. package/mcp_server/atlas/enrichments/instruments/analog.yaml +11 -0
  28. package/mcp_server/atlas/enrichments/instruments/bass.yaml +11 -0
  29. package/mcp_server/atlas/enrichments/instruments/bell_tower.yaml +75 -0
  30. package/mcp_server/atlas/enrichments/instruments/collision.yaml +11 -0
  31. package/mcp_server/atlas/enrichments/instruments/drift.yaml +11 -0
  32. package/mcp_server/atlas/enrichments/instruments/drum_rack.yaml +142 -0
  33. package/mcp_server/atlas/enrichments/instruments/electric.yaml +11 -0
  34. package/mcp_server/atlas/enrichments/instruments/emit.yaml +11 -0
  35. package/mcp_server/atlas/enrichments/instruments/granulator_iii.yaml +124 -0
  36. package/mcp_server/atlas/enrichments/instruments/harmonic_drone_generator.yaml +83 -0
  37. package/mcp_server/atlas/enrichments/instruments/impulse.yaml +47 -0
  38. package/mcp_server/atlas/enrichments/instruments/meld.yaml +11 -0
  39. package/mcp_server/atlas/enrichments/instruments/operator.yaml +11 -0
  40. package/mcp_server/atlas/enrichments/instruments/poli.yaml +11 -0
  41. package/mcp_server/atlas/enrichments/instruments/sampler.yaml +12 -0
  42. package/mcp_server/atlas/enrichments/instruments/simpler.yaml +15 -0
  43. package/mcp_server/atlas/enrichments/instruments/sting_iftah.yaml +44 -0
  44. package/mcp_server/atlas/enrichments/instruments/tension.yaml +11 -0
  45. package/mcp_server/atlas/enrichments/instruments/vector_fm.yaml +11 -0
  46. package/mcp_server/atlas/enrichments/instruments/vector_grain.yaml +11 -0
  47. package/mcp_server/atlas/enrichments/instruments/wavetable.yaml +11 -0
  48. package/mcp_server/atlas/enrichments/midi_effects/expressive_chords.yaml +38 -0
  49. package/mcp_server/atlas/enrichments/midi_effects/filler.yaml +49 -0
  50. package/mcp_server/atlas/enrichments/midi_effects/microtuner.yaml +83 -0
  51. package/mcp_server/atlas/enrichments/midi_effects/patterns_iftah.yaml +38 -0
  52. package/mcp_server/atlas/enrichments/midi_effects/phase_pattern.yaml +51 -0
  53. package/mcp_server/atlas/enrichments/midi_effects/polyrhythm.yaml +46 -0
  54. package/mcp_server/atlas/enrichments/midi_effects/retrigger.yaml +40 -0
  55. package/mcp_server/atlas/enrichments/midi_effects/slice_shuffler.yaml +39 -0
  56. package/mcp_server/atlas/enrichments/midi_effects/sq_sequencer.yaml +39 -0
  57. package/mcp_server/atlas/enrichments/midi_effects/stages.yaml +38 -0
  58. package/mcp_server/atlas/enrichments/utility/arrangement_looper.yaml +31 -0
  59. package/mcp_server/atlas/enrichments/utility/cv_clock_in.yaml +25 -0
  60. package/mcp_server/atlas/enrichments/utility/cv_clock_out.yaml +25 -0
  61. package/mcp_server/atlas/enrichments/utility/cv_envelope_follower.yaml +38 -0
  62. package/mcp_server/atlas/enrichments/utility/cv_in.yaml +26 -0
  63. package/mcp_server/atlas/enrichments/utility/cv_instrument.yaml +34 -0
  64. package/mcp_server/atlas/enrichments/utility/cv_lfo.yaml +38 -0
  65. package/mcp_server/atlas/enrichments/utility/cv_shaper.yaml +35 -0
  66. package/mcp_server/atlas/enrichments/utility/cv_triggers.yaml +26 -0
  67. package/mcp_server/atlas/enrichments/utility/cv_utility.yaml +37 -0
  68. package/mcp_server/atlas/enrichments/utility/performer.yaml +51 -0
  69. package/mcp_server/atlas/enrichments/utility/prearranger.yaml +36 -0
  70. package/mcp_server/atlas/enrichments/utility/rotating_rhythm_generator.yaml +35 -0
  71. package/mcp_server/atlas/enrichments/utility/surround_panner.yaml +40 -0
  72. package/mcp_server/atlas/enrichments/utility/variations.yaml +40 -0
  73. package/mcp_server/atlas/enrichments/utility/vector_map.yaml +57 -0
  74. package/mcp_server/atlas/tools.py +291 -0
  75. package/mcp_server/m4l_bridge.py +19 -2
  76. package/mcp_server/sample_engine/tools.py +190 -72
  77. package/mcp_server/server.py +18 -6
  78. package/mcp_server/splice_client/client.py +90 -18
  79. package/mcp_server/splice_client/http_bridge.py +414 -138
  80. package/mcp_server/splice_client/models.py +12 -0
  81. package/mcp_server/tools/analyzer.py +150 -1
  82. package/mcp_server/tools/automation.py +168 -0
  83. package/package.json +2 -2
  84. package/remote_script/LivePilot/__init__.py +1 -1
  85. package/remote_script/LivePilot/arrangement.py +216 -1
  86. package/server.json +3 -3
@@ -0,0 +1,46 @@
1
+ id: polyrhythm
2
+ name: Polyrhythm
3
+ sonic_description: >
4
+ Clip-based MIDI generator by Philip Meyer (MIDI Tools pack). Six
5
+ independent pattern generators, each with its own length and density —
6
+ creates polymetric and polyrhythmic patterns impossible to program by
7
+ hand. Includes Euclidean mode. Operates on a clip (not real-time) and
8
+ bakes results back as MIDI notes, so every generation is different and
9
+ every result is editable.
10
+ category: generator
11
+ character_tags: [polyrhythmic, polymeter, euclidean, generative, clip_based]
12
+ use_cases: [asymmetric_drums, hypnotic_pattern, techno_groove, idm_programming]
13
+ genre_affinity:
14
+ primary: [techno, deep_minimal, idm, experimental]
15
+ secondary: [microhouse, ambient, dub_techno]
16
+ complexity: intermediate
17
+ introduced_in: "12.1"
18
+ pack: MIDI Tools
19
+ creator: Philip Meyer
20
+ class_name: PluginDevice
21
+
22
+ key_parameters:
23
+ - name: "Voice Count"
24
+ description: "How many of the 6 pattern generators are active."
25
+ range: [1, 6]
26
+ - name: "Per-Voice Length"
27
+ description: "Step count for each lane independently. Set to non-coincident numbers (11, 13, 16) for polymeter."
28
+ - name: "Per-Voice Density"
29
+ description: "Pulses per step length. Euclidean distribution fills pulses evenly."
30
+ - name: "Output Pitch"
31
+ description: "MIDI note each voice outputs. Assign to drum-pad notes (36/38/42/46) for drum racks."
32
+
33
+ signature_techniques:
34
+ - name: "Asymmetric techno groove"
35
+ description: "Voice 1 = 16 steps / 4 pulses (kick), Voice 2 = 11 steps / 3 pulses (ghost snare), Voice 3 = 13 steps / 7 pulses (hat). Generates pattern that never repeats exactly for hundreds of bars."
36
+ aesthetic: [techno, deep_minimal]
37
+ - name: "Hypnotic micropattern"
38
+ description: "All 6 voices at sparse density (1-3 pulses each) with asymmetric lengths → organic feel that evolves over minutes."
39
+ aesthetic: [deep_minimal, idm]
40
+
41
+ gotchas:
42
+ - "Output is baked into the clip — regenerate replaces the pattern. Save favorites as separate clip."
43
+ - "Euclidean distribution is deterministic — same length+pulses always gives same pattern."
44
+
45
+ learn_more:
46
+ official: "https://www.ableton.com/en/packs/midi-tools/"
@@ -0,0 +1,40 @@
1
+ id: retrigger
2
+ name: Retrigger
3
+ sonic_description: >
4
+ Clip-based MIDI transformer by Philip Meyer. Replaces selected notes
5
+ with rapid repeats (rolls) — velocity curve and time-shape per repeat.
6
+ Quick source of drum fills, hi-hat rolls, buildup stutters. Preserves
7
+ the underlying clip, so you can apply to just the selected region.
8
+ category: transformation
9
+ character_tags: [roll, stutter, fill, drum_roll, urgency]
10
+ use_cases: [drum_fills, hi_hat_rolls, stutter_buildup, tension_increase]
11
+ genre_affinity:
12
+ primary: [dance, breakbeat, techno, house]
13
+ secondary: [all_genres_with_drums]
14
+ complexity: beginner
15
+ introduced_in: "12.1"
16
+ pack: MIDI Tools
17
+ creator: Philip Meyer
18
+ class_name: PluginDevice
19
+
20
+ key_parameters:
21
+ - name: "Note Selection"
22
+ description: "Which notes to retrigger — individual, some, or all."
23
+ - name: "Repeat Count"
24
+ description: "Number of retriggers per note."
25
+ range: [2, 32]
26
+ type: int
27
+ - name: "Time Curve"
28
+ description: "Exponential/linear spacing of repeats — accelerating fills, decelerating decays."
29
+ - name: "Velocity Curve"
30
+ description: "Velocity envelope across the roll — crescendo, decrescendo, flat."
31
+ signature_techniques:
32
+ - name: "Accelerating hi-hat buildup"
33
+ description: "Select 4 hi-hat notes at end of section → Retrigger count 16, exponential curve → accelerating roll into the downbeat."
34
+ aesthetic: [dance, breakbeat]
35
+ - name: "Decelerating snare fill"
36
+ description: "Single snare hit → Retrigger 8 times with linear-to-long decay → natural-feeling fill."
37
+ aesthetic: [all]
38
+
39
+ learn_more:
40
+ official: "https://www.ableton.com/en/packs/midi-tools/"
@@ -0,0 +1,39 @@
1
+ id: slice_shuffler
2
+ name: Slice Shuffler
3
+ sonic_description: >
4
+ Clip-based MIDI transformer by Philip Meyer. Slices a clip into temporal
5
+ sections and applies transformations (reverse, randomize, shift) to each
6
+ slice independently. Unlike a global shuffle, each section gets its own
7
+ treatment. The tool for controlled chaos on drum patterns — reverse one
8
+ bar of a 4-bar loop for a momentary glitch, randomize the second half.
9
+ category: transformation
10
+ character_tags: [sectional, reverse, controlled_chaos, glitch, asymmetric]
11
+ use_cases: [partial_reverse, sectional_variation, glitch_moment, asymmetric_groove]
12
+ genre_affinity:
13
+ primary: [idm, glitch, experimental, deep_minimal]
14
+ secondary: [microhouse, techno]
15
+ complexity: intermediate
16
+ introduced_in: "12.1"
17
+ pack: MIDI Tools
18
+ creator: Philip Meyer
19
+ class_name: PluginDevice
20
+
21
+ key_parameters:
22
+ - name: "Slice Count"
23
+ description: "Number of sections to divide the clip into. 4 = quarters, 8 = eighths, etc."
24
+ - name: "Reverse (per slice)"
25
+ description: "Toggle reverse for each slice independently."
26
+ - name: "Randomness (per slice)"
27
+ description: "Random note reordering depth per slice."
28
+ - name: "Timing Offset (per slice)"
29
+ description: "Shift slice start time."
30
+ signature_techniques:
31
+ - name: "Ghost-note variations"
32
+ description: "Clean 8-bar kick pattern → Slice Shuffler with 8 slices → randomize slice 4 and slice 7 only → ghost-note drift every ~1 minute of playback."
33
+ aesthetic: [deep_minimal, microhouse]
34
+ - name: "One-bar reverse glitch"
35
+ description: "16-bar loop → 4 slices → reverse slice 3 only → single bar of reverse drums as a momentary disruption."
36
+ aesthetic: [idm, glitch]
37
+
38
+ learn_more:
39
+ official: "https://www.ableton.com/en/packs/midi-tools/"
@@ -0,0 +1,39 @@
1
+ id: sq_sequencer
2
+ name: SQ Sequencer
3
+ sonic_description: >
4
+ 16-step sequencer with per-lane independent step length and direction —
5
+ the polymetric secret weapon from the Sequencers pack. Set melody lane
6
+ to 16 steps, rhythm lane to 15, bass lane to 11 → each lane progresses
7
+ at its own rate → infinite non-repeating patterns from simple inputs.
8
+ Condition feature adds rule-based triggering (every 3rd pass, etc.).
9
+ category: sequencer
10
+ character_tags: [polymetric, asymmetric, condition_based, modular_style]
11
+ use_cases: [polymetric_melody, asymmetric_bass, hypnotic_pattern, generative_loop]
12
+ genre_affinity:
13
+ primary: [deep_minimal, microhouse, techno, idm]
14
+ secondary: [experimental, generative]
15
+ complexity: intermediate
16
+ introduced_in: "11.0"
17
+ pack: Sequencers
18
+ creator: Ableton
19
+ class_name: PluginDevice
20
+
21
+ key_parameters:
22
+ - name: "Per-Lane Step Count"
23
+ description: "Each of up to ~8 lanes has its own step length (1-16). Non-coincident values = polymeter."
24
+ - name: "Per-Lane Direction"
25
+ description: "Forward / Backward / Ping-Pong / Random per lane."
26
+ - name: "Condition"
27
+ description: "Rule-based gating — fire on every Nth pass, after N fails, etc."
28
+ - name: "Output Pitch / Velocity / Gate Length (per lane)"
29
+ description: "Independent control per lane."
30
+ signature_techniques:
31
+ - name: "Villalobos polymeter lock"
32
+ description: "Melody lane 16 steps, rhythm lane 15 steps, bass lane 11 steps → sequences drift in and out of phase over hundreds of bars, never repeating exactly."
33
+ aesthetic: [deep_minimal, microhouse]
34
+ - name: "Condition-based ghost snare"
35
+ description: "Snare lane with condition 'every 3rd pass' → snare appears only once per ~16 bars → organic ghost pattern."
36
+ aesthetic: [deep_minimal, techno]
37
+
38
+ learn_more:
39
+ official: "https://www.ableton.com/en/packs/sequencers/"
@@ -0,0 +1,38 @@
1
+ id: stages
2
+ name: Stages
3
+ sonic_description: >
4
+ Clip-based MIDI generator by Philip Meyer. Transforms basic note input
5
+ into elaborate patterns via slider-driven pitch, note repetitions, and
6
+ rests. Converts a 4-note seed into an entire bassline / motif with
7
+ developmental logic. Operates on clips, so every pass is editable.
8
+ category: generator
9
+ character_tags: [pattern_expansion, developmental, melodic, motif_builder]
10
+ use_cases: [motif_expansion, bassline_from_seed, fill_generation]
11
+ genre_affinity:
12
+ primary: [techno, idm, electronica]
13
+ secondary: [deep_minimal, experimental]
14
+ complexity: intermediate
15
+ introduced_in: "12.1"
16
+ pack: MIDI Tools
17
+ creator: Philip Meyer
18
+ class_name: PluginDevice
19
+
20
+ key_parameters:
21
+ - name: "Pitch Sliders"
22
+ description: "Per-stage pitch assignment. Drag to set each stage's note."
23
+ - name: "Repeat Sliders"
24
+ description: "How many times each stage's note repeats before moving on."
25
+ - name: "Rest Sliders"
26
+ description: "Silence insertion per stage."
27
+ - name: "Pattern Length"
28
+ description: "Total stage count."
29
+ signature_techniques:
30
+ - name: "Bassline from root note"
31
+ description: "Single C1 note → Stages with 8-stage pattern, varied repeat counts, modest pitch offsets → coherent 16-bar bassline with motion."
32
+ aesthetic: [techno, deep_minimal]
33
+ - name: "Melodic fill from a single hook note"
34
+ description: "Apply to melodic element at section-end → Stages generates a 2-bar fill with repeats + rests that feels composed."
35
+ aesthetic: [idm, electronica]
36
+
37
+ learn_more:
38
+ official: "https://www.ableton.com/en/packs/midi-tools/"
@@ -0,0 +1,31 @@
1
+ id: arrangement_looper
2
+ name: Arrangement Looper
3
+ sonic_description: >
4
+ Quick-toggle loop-length device for Arrangement View (Performance Pack).
5
+ Four customizable loop lengths, switchable on/off mid-performance. Studio
6
+ use: rapid arrangement experimentation without manual timeline
7
+ manipulation. Live/DJ use: extended breakdowns and remix sections.
8
+ category: transport_helper
9
+ character_tags: [loop, performance, arrangement]
10
+ use_cases: [extended_breakdown, live_remix, arrangement_sketch]
11
+ genre_affinity:
12
+ primary: [live_performance, dj_sets]
13
+ secondary: [all]
14
+ complexity: beginner
15
+ introduced_in: "11.0"
16
+ pack: Performance Pack
17
+ creator: Iftah
18
+ class_name: PluginDevice
19
+
20
+ key_parameters:
21
+ - name: "Loop Lengths"
22
+ description: "Up to 4 customizable lengths (1/2 bar, 1 bar, 2 bars, 4 bars typical)."
23
+ - name: "Toggle Buttons"
24
+ description: "Enable each loop length individually."
25
+ signature_techniques:
26
+ - name: "DJ-style extended breakdown"
27
+ description: "Playback approaches breakdown → toggle 1-bar loop → hold for as long as needed → release → continue playback."
28
+ aesthetic: [dj_sets, live_techno]
29
+
30
+ learn_more:
31
+ official: "https://www.ableton.com/en/packs/performance-pack/"
@@ -0,0 +1,25 @@
1
+ id: cv_clock_in
2
+ name: CV Clock In
3
+ sonic_description: >
4
+ Synchronizes Live's tempo from an incoming clock signal (from Eurorack).
5
+ Use when the modular is the master timekeeper and Live follows.
6
+ category: cv_sync_in
7
+ character_tags: [cv, sync, tempo, slave]
8
+ use_cases: [modular_master_daw_slave]
9
+ genre_affinity:
10
+ primary: [modular, experimental]
11
+ complexity: intermediate
12
+ introduced_in: "10.0"
13
+ pack: CV Tools
14
+ creator: Ableton
15
+ class_name: PluginDevice
16
+ requires_modular_hardware: true
17
+
18
+ key_parameters:
19
+ - name: "Clock Rate"
20
+ description: "PPQN — pulses per quarter note."
21
+ - name: "Source Channel"
22
+ description: "Which audio input receives the clock."
23
+
24
+ learn_more:
25
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,25 @@
1
+ id: cv_clock_out
2
+ name: CV Clock Out
3
+ sonic_description: >
4
+ Sends Live's tempo as a clock signal out to modular gear. Live is the
5
+ master, modular follows. The more common direction in hybrid setups.
6
+ category: cv_sync_out
7
+ character_tags: [cv, sync, tempo, master]
8
+ use_cases: [daw_master_modular_slave]
9
+ genre_affinity:
10
+ primary: [modular, experimental, hybrid_techno]
11
+ complexity: beginner
12
+ introduced_in: "10.0"
13
+ pack: CV Tools
14
+ creator: Ableton
15
+ class_name: PluginDevice
16
+ requires_modular_hardware: true
17
+
18
+ key_parameters:
19
+ - name: "Clock Rate"
20
+ description: "PPQN — typically 4 PPQN for Eurorack."
21
+ - name: "Output Channel"
22
+ description: "Which audio output carries the clock."
23
+
24
+ learn_more:
25
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,38 @@
1
+ id: cv_envelope_follower
2
+ name: CV Envelope Follower
3
+ sonic_description: >
4
+ Tracks the amplitude envelope of an audio signal and emits CV. Can
5
+ modulate modular gear OR, crucially, any internal Live parameter —
6
+ kick drum → CV Envelope Follower → modulates pad filter cutoff → pad
7
+ opens up on every kick. Creative sidechain alternative that gives CV
8
+ shape, not just gain reduction.
9
+ category: modulation_source
10
+ character_tags: [envelope_follower, dynamic_modulation, audio_to_cv]
11
+ use_cases: [dynamic_filter, audio_driven_modulation, creative_sidechain]
12
+ genre_affinity:
13
+ primary: [deep_minimal, dub_techno, electronic]
14
+ secondary: [all]
15
+ complexity: intermediate
16
+ introduced_in: "10.0"
17
+ pack: CV Tools
18
+ creator: Ableton
19
+ class_name: PluginDevice
20
+ requires_modular_hardware: false
21
+
22
+ key_parameters:
23
+ - name: "Rise / Fall"
24
+ description: "Envelope attack and release times."
25
+ - name: "Scale"
26
+ description: "Output depth."
27
+ - name: "Invert"
28
+ description: "Flip envelope polarity — modulation reduces instead of increases."
29
+ signature_techniques:
30
+ - name: "Kick-driven pad-filter opening"
31
+ description: "Route kick drum to CV Envelope Follower → CV output to pad's filter cutoff → pad brightens with every kick, darkens between."
32
+ aesthetic: [deep_minimal, dub_techno]
33
+ - name: "Vocal-driven reverb duck"
34
+ description: "Route vocal to CV Envelope Follower → invert output → modulate reverb wet → reverb ducks when vocal is present, blooms in silences."
35
+ aesthetic: [ambient, cinematic]
36
+
37
+ learn_more:
38
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,26 @@
1
+ id: cv_in
2
+ name: CV In
3
+ sonic_description: >
4
+ Route incoming CV from modular gear to modulate any Live parameter.
5
+ Turn a modular LFO or envelope follower into a control source for
6
+ internal Live plugins.
7
+ category: cv_in
8
+ character_tags: [cv, audio_to_control, modular]
9
+ use_cases: [modular_modulator_for_daw]
10
+ genre_affinity:
11
+ primary: [modular, experimental]
12
+ complexity: intermediate
13
+ introduced_in: "10.0"
14
+ pack: CV Tools
15
+ creator: Ableton
16
+ class_name: PluginDevice
17
+ requires_modular_hardware: true
18
+
19
+ key_parameters:
20
+ - name: "Input Channel"
21
+ description: "Audio input carrying CV."
22
+ - name: "Scale / Offset"
23
+ description: "Normalize CV range to 0-1 for Live parameter mapping."
24
+
25
+ learn_more:
26
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,34 @@
1
+ id: cv_instrument
2
+ name: CV Instrument
3
+ sonic_description: >
4
+ Sends pitch + gate CV from Live to a modular synth. Cent-accurate
5
+ tuning with flexible modulation routing. Turns any modular voice into
6
+ a MIDI-playable instrument from Live's sequencer. Requires DC-coupled
7
+ audio interface.
8
+ category: cv_out
9
+ character_tags: [cv, modular, pitch_out, gate_out]
10
+ use_cases: [modular_voice_from_live, hybrid_rig]
11
+ genre_affinity:
12
+ primary: [modular, experimental]
13
+ secondary: [all]
14
+ complexity: intermediate
15
+ introduced_in: "10.0"
16
+ pack: CV Tools
17
+ creator: Ableton
18
+ class_name: PluginDevice
19
+ requires_modular_hardware: true
20
+
21
+ key_parameters:
22
+ - name: "Pitch Output"
23
+ description: "V/oct or Hz/V tuning curve."
24
+ - name: "Gate Output"
25
+ description: "Gate signal when note plays."
26
+ - name: "Modulation Outputs"
27
+ description: "Velocity, aftertouch, mod wheel as CV."
28
+ signature_techniques:
29
+ - name: "Modular voice in a DAW session"
30
+ description: "Assign MIDI track → CV Instrument → modular oscillator → modular filter → return audio back to Live track. Modular voice on the timeline."
31
+ aesthetic: [experimental, modular]
32
+
33
+ learn_more:
34
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,38 @@
1
+ id: cv_lfo
2
+ name: CV LFO
3
+ sonic_description: >
4
+ M4L LFO generator from CV Tools. Originally designed to send CV to
5
+ modular systems via a DC-coupled audio interface, but equally useful as
6
+ an extra LFO inside Live — route its output audio to modulate any Live
7
+ parameter via a return-track sidechain or internal MIDI mapping. When
8
+ you want more LFOs than a synth natively provides, CV LFO is the
9
+ answer.
10
+ category: modulation_source
11
+ character_tags: [lfo, modulation, cv, internal_modulation]
12
+ use_cases: [extra_lfo, modular_cv, parameter_modulation]
13
+ genre_affinity:
14
+ primary: [modular, experimental, deep_minimal]
15
+ secondary: [all]
16
+ complexity: beginner
17
+ introduced_in: "10.0"
18
+ pack: CV Tools
19
+ creator: Ableton
20
+ class_name: PluginDevice
21
+ requires_modular_hardware: false # useful even without modular
22
+
23
+ key_parameters:
24
+ - name: "Rate"
25
+ description: "LFO frequency — Hz or tempo-synced."
26
+ - name: "Waveform"
27
+ description: "Sine / Triangle / Saw / Square / Random / custom shape."
28
+ - name: "Depth"
29
+ description: "Output amplitude — controls modulation depth at the destination."
30
+ - name: "Offset"
31
+ description: "DC offset — pre-bias the modulation range."
32
+ signature_techniques:
33
+ - name: "Multi-LFO stack on a patch"
34
+ description: "Drop 3x CV LFO on a return track, each at different rates (0.07Hz, 0.23Hz, 1.11Hz), route outputs to filter/amp/pitch → organic drift that doesn't repeat."
35
+ aesthetic: [ambient, deep_minimal]
36
+
37
+ learn_more:
38
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,35 @@
1
+ id: cv_shaper
2
+ name: CV Shaper
3
+ sonic_description: >
4
+ Create flexible CV shapes inside Live, then send to modular OR use
5
+ internally. Draw custom envelopes/LFOs on a graphical canvas. Useful
6
+ WITHOUT modular hardware as a free-form envelope/LFO source for any
7
+ Live parameter.
8
+ category: modulation_source
9
+ character_tags: [cv, custom_shape, envelope, lfo]
10
+ use_cases: [custom_envelope, bespoke_lfo, parameter_modulation]
11
+ genre_affinity:
12
+ primary: [modular, experimental, deep_minimal]
13
+ secondary: [all]
14
+ complexity: intermediate
15
+ introduced_in: "10.0"
16
+ pack: CV Tools
17
+ creator: Ableton
18
+ class_name: PluginDevice
19
+ requires_modular_hardware: false # useful internally too
20
+
21
+ key_parameters:
22
+ - name: "Shape Canvas"
23
+ description: "Draw the CV curve graphically."
24
+ - name: "Rate"
25
+ description: "Cycle time — tempo-sync or free."
26
+ - name: "Scale / Offset"
27
+ description: "Output amplitude and DC offset."
28
+
29
+ signature_techniques:
30
+ - name: "Bespoke ADSR for any parameter"
31
+ description: "Need a parameter envelope shape that's not on the device? Draw it in CV Shaper, route to the parameter. Unlimited curve flexibility."
32
+ aesthetic: [all]
33
+
34
+ learn_more:
35
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,26 @@
1
+ id: cv_triggers
2
+ name: CV Triggers
3
+ sonic_description: >
4
+ Sends per-pad trigger CV to modular drum modules. Each of 8 pads
5
+ outputs its own gate. Map MIDI notes to pads, sequence modular drums
6
+ from Live's clip view.
7
+ category: cv_out
8
+ character_tags: [cv, modular, drum_trigger, gate_out]
9
+ use_cases: [modular_drums_from_live]
10
+ genre_affinity:
11
+ primary: [modular, experimental, hybrid_techno]
12
+ complexity: intermediate
13
+ introduced_in: "10.0"
14
+ pack: CV Tools
15
+ creator: Ableton
16
+ class_name: PluginDevice
17
+ requires_modular_hardware: true
18
+
19
+ key_parameters:
20
+ - name: "Pad Count"
21
+ description: "Up to 8 independent gate outputs."
22
+ - name: "Per-pad MIDI note assignment"
23
+ description: "Which note triggers which pad."
24
+
25
+ learn_more:
26
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,37 @@
1
+ id: cv_utility
2
+ name: CV Utility
3
+ sonic_description: >
4
+ Process control voltages via automation curves. Scale, offset, invert,
5
+ quantize CV signals. Works standalone even without modular gear — use
6
+ to shape Live's internal automation before it hits the destination
7
+ parameter. Acts as a curve-shaper between a source LFO/envelope and
8
+ the modulated parameter.
9
+ category: cv_processor
10
+ character_tags: [cv_processing, scale, offset, invert, quantize]
11
+ use_cases: [curve_shaping, modulation_scaling, parameter_processing]
12
+ genre_affinity:
13
+ primary: [modular, experimental]
14
+ secondary: [all]
15
+ complexity: beginner
16
+ introduced_in: "10.0"
17
+ pack: CV Tools
18
+ creator: Ableton
19
+ class_name: PluginDevice
20
+ requires_modular_hardware: false
21
+
22
+ key_parameters:
23
+ - name: "Scale"
24
+ description: "Multiply incoming CV by a factor."
25
+ - name: "Offset"
26
+ description: "Add a DC offset."
27
+ - name: "Invert"
28
+ description: "Flip the signal polarity."
29
+ - name: "Quantize"
30
+ description: "Snap CV to discrete steps — useful for pitched CV."
31
+ signature_techniques:
32
+ - name: "Soften aggressive modulation"
33
+ description: "Put CV Utility between an LFO and a filter → scale down to 0.3 → same LFO, subtler effect."
34
+ aesthetic: [all]
35
+
36
+ learn_more:
37
+ official: "https://www.ableton.com/en/packs/cv-tools/"
@@ -0,0 +1,51 @@
1
+ id: performer
2
+ name: Performer
3
+ sonic_description: >
4
+ Macro-control device from Performance Pack (Iftah). Multiple faders,
5
+ crossfaders, buttons, dials — fully user-configurable to mirror any
6
+ hardware controller. Integrated Macro Editor for curve shaping. Studio
7
+ use: unify disparate parameter automation into a single interface. Live
8
+ use: build a one-controller performance surface for Live + external gear.
9
+ category: macro_controller
10
+ character_tags: [macro, performance, curve_shaped, unifier]
11
+ use_cases: [live_control, parameter_unification, curve_automation]
12
+ genre_affinity:
13
+ primary: [all]
14
+ complexity: intermediate
15
+ introduced_in: "11.0"
16
+ pack: Performance Pack
17
+ creator: Iftah
18
+ class_name: PluginDevice
19
+
20
+ key_parameters:
21
+ - name: "Control Layout"
22
+ description: "Add/remove/rename faders, buttons, crossfaders freely."
23
+ - name: "Macro Mappings"
24
+ description: "Each control maps to any Live parameter (including M4L devices and plugin parameters)."
25
+ - name: "Macro Editor Curve"
26
+ description: "Shape the response — exponential, S-curve, stepped — per macro."
27
+ signature_techniques:
28
+ - name: "One-knob chord-chain morph"
29
+ description: "Map one fader to filter cutoff, send level, reverb decay, sat drive simultaneously → turn = whole chord chain morphs."
30
+ aesthetic: [live_performance, studio_sketching]
31
+ - name: "Crossfader-style A/B"
32
+ description: "Build a crossfader that switches between two device states via inverse macro curves."
33
+ aesthetic: [performance]
34
+ - name: "Single pedal = intro-to-drop"
35
+ description: "Map a footpedal input via MIDI → Performer fader → filter open, send boost, reverb decay extend, LFO depth rise. One pedal drives an arrangement energy shift."
36
+ aesthetic: [live_performance]
37
+
38
+ pairs_well_with:
39
+ - device: "Variations"
40
+ reason: "Performer controls continuous, Variations controls discrete — combine for coarse (Variations) + fine (Performer) morphing"
41
+ - device: "Any M4L or plugin"
42
+ reason: "Performer is the glue — any parameter becomes performable via curve-shaped Macro"
43
+
44
+ gotchas:
45
+ - "Performer is a macro CONTROLLER, not a generator. Without mappings, it does nothing"
46
+ - "Curve editor is not exposed via MCP — set shapes in the Max UI"
47
+ - "Crossfader controls are two faders with inverse curves, not a single crossfader — design for that mental model"
48
+ - "Saving a Performer preset captures mappings BY PATH (e.g. track 3 device 2 param X). Duplicating the track breaks the mapping — remap after track restructure"
49
+
50
+ learn_more:
51
+ official: "https://www.ableton.com/en/packs/performance-pack/"
@@ -0,0 +1,36 @@
1
+ id: prearranger
2
+ name: Prearranger
3
+ sonic_description: >
4
+ Structural pre-planning device from Performance Pack (Iftah). Define clip
5
+ locations in Arrangement View as empty slots, then perform live and Live
6
+ auto-fills them with the performance. Transforms live recording into a
7
+ compositional scaffold. Ideal for sketching long hypnotic structures
8
+ (deep minimal) or entire sets without mid-performance arrangement
9
+ decisions.
10
+ category: recording_helper
11
+ character_tags: [performance, scaffold, live_recording, structure]
12
+ use_cases: [long_form_sketch, hypnotic_structure, set_recording]
13
+ genre_affinity:
14
+ primary: [deep_minimal, live_performance, ambient]
15
+ secondary: [electronic_all]
16
+ complexity: intermediate
17
+ introduced_in: "11.0"
18
+ pack: Performance Pack
19
+ creator: Iftah
20
+ class_name: PluginDevice
21
+
22
+ key_parameters:
23
+ - name: "Slot Layout"
24
+ description: "Pre-place empty arrangement clips where you want recorded content to land."
25
+ - name: "Auto-fill Toggle"
26
+ description: "Enable Prearranger — live content records into the pre-placed slots."
27
+ signature_techniques:
28
+ - name: "Hypnotic 60-minute structure sketch"
29
+ description: "Place empty slots every 16 bars across a 60-minute arrangement → press record → improvise → each section lands in its slot."
30
+ aesthetic: [deep_minimal, ambient]
31
+ - name: "Set recording with predetermined structure"
32
+ description: "Build the arrangement scaffold based on your setlist → perform → recording is auto-organized."
33
+ aesthetic: [live_sets]
34
+
35
+ learn_more:
36
+ official: "https://www.ableton.com/en/packs/performance-pack/"
@@ -0,0 +1,35 @@
1
+ id: rotating_rhythm_generator
2
+ name: Rotating Rhythm Generator
3
+ sonic_description: >
4
+ M4L polyrhythmic MIDI generator from CV Tools. Originally a modular
5
+ CV-triggers tool, but operates as a standalone MIDI generator inside
6
+ Live. Generates rotating polyrhythmic patterns across multiple tracks
7
+ or drum-rack pads. One of the most under-utilized M4L devices for
8
+ complex techno / IDM groove programming.
9
+ category: generator
10
+ character_tags: [polyrhythmic, rotating, generative, drum_programming]
11
+ use_cases: [polymetric_drums, techno_groove, idm_pattern]
12
+ genre_affinity:
13
+ primary: [techno, idm, deep_minimal]
14
+ secondary: [all_electronic]
15
+ complexity: intermediate
16
+ introduced_in: "10.0"
17
+ pack: CV Tools
18
+ creator: Ableton
19
+ class_name: PluginDevice
20
+ requires_modular_hardware: false
21
+
22
+ key_parameters:
23
+ - name: "Ring Size"
24
+ description: "Number of steps in the ring (e.g., 16, 12, 7)."
25
+ - name: "Pulse Count"
26
+ description: "Beats distributed around the ring. Classic Euclidean distribution."
27
+ - name: "Rotation"
28
+ description: "Shift the starting position of the pattern on the ring."
29
+ signature_techniques:
30
+ - name: "Multi-lane rotated Euclidean drums"
31
+ description: "Kick: ring 16 / pulses 4 / rotation 0. Snare: ring 16 / pulses 2 / rotation 8. Hat: ring 13 / pulses 7 / rotation 3. Asymmetric groove that sits together but never locks."
32
+ aesthetic: [techno, deep_minimal, idm]
33
+
34
+ learn_more:
35
+ official: "https://www.ableton.com/en/packs/cv-tools/"