livepilot 1.9.23 → 1.10.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 (191) hide show
  1. package/.claude-plugin/marketplace.json +3 -3
  2. package/AGENTS.md +3 -3
  3. package/CHANGELOG.md +119 -0
  4. package/CONTRIBUTING.md +1 -1
  5. package/README.md +144 -13
  6. package/bin/livepilot.js +87 -0
  7. package/installer/codex.js +147 -0
  8. package/livepilot/.Codex-plugin/plugin.json +2 -2
  9. package/livepilot/.claude-plugin/plugin.json +2 -2
  10. package/livepilot/skills/livepilot-core/SKILL.md +21 -4
  11. package/livepilot/skills/livepilot-core/references/device-knowledge/00-index.md +34 -0
  12. package/livepilot/skills/livepilot-core/references/device-knowledge/automation-as-music.md +204 -0
  13. package/livepilot/skills/livepilot-core/references/device-knowledge/chains-genre.md +173 -0
  14. package/livepilot/skills/livepilot-core/references/device-knowledge/creative-thinking.md +211 -0
  15. package/livepilot/skills/livepilot-core/references/device-knowledge/effects-distortion.md +188 -0
  16. package/livepilot/skills/livepilot-core/references/device-knowledge/effects-space.md +162 -0
  17. package/livepilot/skills/livepilot-core/references/device-knowledge/effects-spectral.md +229 -0
  18. package/livepilot/skills/livepilot-core/references/device-knowledge/instruments-synths.md +243 -0
  19. package/livepilot/skills/livepilot-core/references/overview.md +13 -9
  20. package/livepilot/skills/livepilot-core/references/sample-manipulation.md +724 -0
  21. package/livepilot/skills/livepilot-core/references/sound-design-deep.md +140 -0
  22. package/livepilot/skills/livepilot-devices/SKILL.md +16 -2
  23. package/livepilot/skills/livepilot-evaluation/references/capability-modes.md +1 -1
  24. package/livepilot/skills/livepilot-release/SKILL.md +19 -5
  25. package/livepilot/skills/livepilot-sample-engine/SKILL.md +104 -0
  26. package/livepilot/skills/livepilot-sample-engine/references/sample-critics.md +87 -0
  27. package/livepilot/skills/livepilot-sample-engine/references/sample-philosophy.md +51 -0
  28. package/livepilot/skills/livepilot-sample-engine/references/sample-techniques.md +131 -0
  29. package/livepilot/skills/livepilot-sound-design-engine/SKILL.md +45 -0
  30. package/livepilot/skills/livepilot-wonder/SKILL.md +15 -0
  31. package/livepilot.mcpb +0 -0
  32. package/m4l_device/livepilot_bridge.js +1 -1
  33. package/manifest.json +2 -2
  34. package/mcp_server/__init__.py +1 -1
  35. package/mcp_server/atlas/__init__.py +357 -0
  36. package/mcp_server/atlas/device_atlas.json +44067 -0
  37. package/mcp_server/atlas/enrichments/__init__.py +111 -0
  38. package/mcp_server/atlas/enrichments/audio_effects/auto_filter.yaml +162 -0
  39. package/mcp_server/atlas/enrichments/audio_effects/beat_repeat.yaml +183 -0
  40. package/mcp_server/atlas/enrichments/audio_effects/channel_eq.yaml +126 -0
  41. package/mcp_server/atlas/enrichments/audio_effects/chorus_ensemble.yaml +149 -0
  42. package/mcp_server/atlas/enrichments/audio_effects/color_limiter.yaml +109 -0
  43. package/mcp_server/atlas/enrichments/audio_effects/compressor.yaml +159 -0
  44. package/mcp_server/atlas/enrichments/audio_effects/convolution_reverb.yaml +143 -0
  45. package/mcp_server/atlas/enrichments/audio_effects/convolution_reverb_pro.yaml +178 -0
  46. package/mcp_server/atlas/enrichments/audio_effects/delay.yaml +151 -0
  47. package/mcp_server/atlas/enrichments/audio_effects/drum_buss.yaml +142 -0
  48. package/mcp_server/atlas/enrichments/audio_effects/dynamic_tube.yaml +147 -0
  49. package/mcp_server/atlas/enrichments/audio_effects/echo.yaml +167 -0
  50. package/mcp_server/atlas/enrichments/audio_effects/eq_eight.yaml +148 -0
  51. package/mcp_server/atlas/enrichments/audio_effects/eq_three.yaml +121 -0
  52. package/mcp_server/atlas/enrichments/audio_effects/erosion.yaml +103 -0
  53. package/mcp_server/atlas/enrichments/audio_effects/filter_delay.yaml +173 -0
  54. package/mcp_server/atlas/enrichments/audio_effects/gate.yaml +130 -0
  55. package/mcp_server/atlas/enrichments/audio_effects/gated_delay.yaml +133 -0
  56. package/mcp_server/atlas/enrichments/audio_effects/glue_compressor.yaml +142 -0
  57. package/mcp_server/atlas/enrichments/audio_effects/grain_delay.yaml +141 -0
  58. package/mcp_server/atlas/enrichments/audio_effects/hybrid_reverb.yaml +160 -0
  59. package/mcp_server/atlas/enrichments/audio_effects/limiter.yaml +97 -0
  60. package/mcp_server/atlas/enrichments/audio_effects/multiband_dynamics.yaml +174 -0
  61. package/mcp_server/atlas/enrichments/audio_effects/overdrive.yaml +119 -0
  62. package/mcp_server/atlas/enrichments/audio_effects/pedal.yaml +145 -0
  63. package/mcp_server/atlas/enrichments/audio_effects/phaser_flanger.yaml +161 -0
  64. package/mcp_server/atlas/enrichments/audio_effects/redux.yaml +114 -0
  65. package/mcp_server/atlas/enrichments/audio_effects/reverb.yaml +190 -0
  66. package/mcp_server/atlas/enrichments/audio_effects/roar.yaml +159 -0
  67. package/mcp_server/atlas/enrichments/audio_effects/saturator.yaml +146 -0
  68. package/mcp_server/atlas/enrichments/audio_effects/shifter.yaml +154 -0
  69. package/mcp_server/atlas/enrichments/audio_effects/spectral_resonator.yaml +141 -0
  70. package/mcp_server/atlas/enrichments/audio_effects/spectral_time.yaml +164 -0
  71. package/mcp_server/atlas/enrichments/audio_effects/vector_delay.yaml +140 -0
  72. package/mcp_server/atlas/enrichments/audio_effects/vinyl_distortion.yaml +141 -0
  73. package/mcp_server/atlas/enrichments/instruments/analog.yaml +222 -0
  74. package/mcp_server/atlas/enrichments/instruments/bass.yaml +202 -0
  75. package/mcp_server/atlas/enrichments/instruments/collision.yaml +150 -0
  76. package/mcp_server/atlas/enrichments/instruments/drift.yaml +167 -0
  77. package/mcp_server/atlas/enrichments/instruments/electric.yaml +137 -0
  78. package/mcp_server/atlas/enrichments/instruments/emit.yaml +163 -0
  79. package/mcp_server/atlas/enrichments/instruments/meld.yaml +164 -0
  80. package/mcp_server/atlas/enrichments/instruments/operator.yaml +197 -0
  81. package/mcp_server/atlas/enrichments/instruments/poli.yaml +192 -0
  82. package/mcp_server/atlas/enrichments/instruments/sampler.yaml +218 -0
  83. package/mcp_server/atlas/enrichments/instruments/simpler.yaml +217 -0
  84. package/mcp_server/atlas/enrichments/instruments/tension.yaml +156 -0
  85. package/mcp_server/atlas/enrichments/instruments/tree_tone.yaml +162 -0
  86. package/mcp_server/atlas/enrichments/instruments/vector_fm.yaml +165 -0
  87. package/mcp_server/atlas/enrichments/instruments/vector_grain.yaml +166 -0
  88. package/mcp_server/atlas/enrichments/instruments/wavetable.yaml +162 -0
  89. package/mcp_server/atlas/enrichments/midi_effects/arpeggiator.yaml +156 -0
  90. package/mcp_server/atlas/enrichments/midi_effects/bouncy_notes.yaml +93 -0
  91. package/mcp_server/atlas/enrichments/midi_effects/chord.yaml +147 -0
  92. package/mcp_server/atlas/enrichments/midi_effects/melodic_steps.yaml +97 -0
  93. package/mcp_server/atlas/enrichments/midi_effects/note_echo.yaml +108 -0
  94. package/mcp_server/atlas/enrichments/midi_effects/note_length.yaml +97 -0
  95. package/mcp_server/atlas/enrichments/midi_effects/pitch.yaml +76 -0
  96. package/mcp_server/atlas/enrichments/midi_effects/random.yaml +117 -0
  97. package/mcp_server/atlas/enrichments/midi_effects/rhythmic_steps.yaml +103 -0
  98. package/mcp_server/atlas/enrichments/midi_effects/scale.yaml +83 -0
  99. package/mcp_server/atlas/enrichments/midi_effects/step_arp.yaml +112 -0
  100. package/mcp_server/atlas/enrichments/midi_effects/velocity.yaml +119 -0
  101. package/mcp_server/atlas/enrichments/utility/amp.yaml +159 -0
  102. package/mcp_server/atlas/enrichments/utility/cabinet.yaml +109 -0
  103. package/mcp_server/atlas/enrichments/utility/corpus.yaml +150 -0
  104. package/mcp_server/atlas/enrichments/utility/resonators.yaml +131 -0
  105. package/mcp_server/atlas/enrichments/utility/spectrum.yaml +63 -0
  106. package/mcp_server/atlas/enrichments/utility/tuner.yaml +51 -0
  107. package/mcp_server/atlas/enrichments/utility/utility.yaml +136 -0
  108. package/mcp_server/atlas/enrichments/utility/vocoder.yaml +160 -0
  109. package/mcp_server/atlas/scanner.py +236 -0
  110. package/mcp_server/atlas/tools.py +224 -0
  111. package/mcp_server/composer/__init__.py +1 -0
  112. package/mcp_server/composer/engine.py +452 -0
  113. package/mcp_server/composer/layer_planner.py +427 -0
  114. package/mcp_server/composer/prompt_parser.py +329 -0
  115. package/mcp_server/composer/tools.py +201 -0
  116. package/mcp_server/connection.py +53 -8
  117. package/mcp_server/corpus/__init__.py +377 -0
  118. package/mcp_server/device_forge/__init__.py +1 -0
  119. package/mcp_server/device_forge/builder.py +377 -0
  120. package/mcp_server/device_forge/models.py +142 -0
  121. package/mcp_server/device_forge/templates.py +483 -0
  122. package/mcp_server/device_forge/tools.py +162 -0
  123. package/mcp_server/hook_hunter/analyzer.py +23 -0
  124. package/mcp_server/hook_hunter/models.py +1 -0
  125. package/mcp_server/hook_hunter/tools.py +4 -2
  126. package/mcp_server/m4l_bridge.py +1 -0
  127. package/mcp_server/memory/taste_graph.py +68 -1
  128. package/mcp_server/memory/tools.py +15 -4
  129. package/mcp_server/musical_intelligence/detectors.py +14 -1
  130. package/mcp_server/musical_intelligence/tools.py +11 -8
  131. package/mcp_server/persistence/__init__.py +1 -0
  132. package/mcp_server/persistence/base_store.py +82 -0
  133. package/mcp_server/persistence/project_store.py +106 -0
  134. package/mcp_server/persistence/taste_store.py +122 -0
  135. package/mcp_server/preview_studio/models.py +1 -0
  136. package/mcp_server/preview_studio/tools.py +56 -13
  137. package/mcp_server/runtime/capability.py +66 -0
  138. package/mcp_server/runtime/capability_probe.py +137 -0
  139. package/mcp_server/runtime/execution_router.py +143 -0
  140. package/mcp_server/runtime/live_version.py +102 -0
  141. package/mcp_server/runtime/remote_commands.py +87 -0
  142. package/mcp_server/runtime/tools.py +18 -4
  143. package/mcp_server/sample_engine/__init__.py +1 -0
  144. package/mcp_server/sample_engine/analyzer.py +216 -0
  145. package/mcp_server/sample_engine/critics.py +390 -0
  146. package/mcp_server/sample_engine/models.py +193 -0
  147. package/mcp_server/sample_engine/moves.py +127 -0
  148. package/mcp_server/sample_engine/planner.py +186 -0
  149. package/mcp_server/sample_engine/sources.py +540 -0
  150. package/mcp_server/sample_engine/techniques.py +908 -0
  151. package/mcp_server/sample_engine/tools.py +442 -0
  152. package/mcp_server/semantic_moves/__init__.py +3 -0
  153. package/mcp_server/semantic_moves/device_creation_moves.py +237 -0
  154. package/mcp_server/semantic_moves/mix_moves.py +41 -41
  155. package/mcp_server/semantic_moves/performance_moves.py +13 -13
  156. package/mcp_server/semantic_moves/sample_compilers.py +372 -0
  157. package/mcp_server/semantic_moves/sound_design_moves.py +15 -15
  158. package/mcp_server/semantic_moves/tools.py +18 -17
  159. package/mcp_server/semantic_moves/transition_moves.py +16 -16
  160. package/mcp_server/server.py +51 -0
  161. package/mcp_server/services/__init__.py +1 -0
  162. package/mcp_server/services/motif_service.py +67 -0
  163. package/mcp_server/session_continuity/tracker.py +29 -1
  164. package/mcp_server/song_brain/builder.py +28 -1
  165. package/mcp_server/song_brain/models.py +4 -0
  166. package/mcp_server/song_brain/tools.py +20 -2
  167. package/mcp_server/sound_design/critics.py +89 -1
  168. package/mcp_server/splice_client/__init__.py +1 -0
  169. package/mcp_server/splice_client/client.py +347 -0
  170. package/mcp_server/splice_client/models.py +96 -0
  171. package/mcp_server/splice_client/protos/__init__.py +1 -0
  172. package/mcp_server/splice_client/protos/app_pb2.py +319 -0
  173. package/mcp_server/splice_client/protos/app_pb2.pyi +1153 -0
  174. package/mcp_server/splice_client/protos/app_pb2_grpc.py +1946 -0
  175. package/mcp_server/tools/arrangement.py +69 -0
  176. package/mcp_server/tools/automation.py +15 -2
  177. package/mcp_server/tools/devices.py +117 -6
  178. package/mcp_server/tools/notes.py +37 -4
  179. package/mcp_server/wonder_mode/diagnosis.py +5 -0
  180. package/mcp_server/wonder_mode/engine.py +85 -1
  181. package/mcp_server/wonder_mode/tools.py +6 -1
  182. package/package.json +12 -2
  183. package/remote_script/LivePilot/__init__.py +8 -1
  184. package/remote_script/LivePilot/arrangement.py +114 -0
  185. package/remote_script/LivePilot/browser.py +56 -1
  186. package/remote_script/LivePilot/devices.py +236 -6
  187. package/remote_script/LivePilot/mixing.py +8 -3
  188. package/remote_script/LivePilot/server.py +5 -1
  189. package/remote_script/LivePilot/transport.py +3 -0
  190. package/remote_script/LivePilot/version_detect.py +78 -0
  191. package/scripts/sync_metadata.py +132 -0
@@ -0,0 +1,164 @@
1
+ id: spectral_time
2
+ name: Spectral Time
3
+ sonic_description: >
4
+ Spectral processing effect that applies delay and freeze to individual frequency bands
5
+ independently. Each frequency component can be delayed by a different amount, creating
6
+ smeared, washed-out textures. The freeze function captures and sustains the spectral
7
+ content indefinitely, turning any input into evolving drones and textures.
8
+ effect_type: special
9
+ character_tags: [spectral, ethereal, frozen, evolving, otherworldly]
10
+ use_cases: [spectral_freeze, spectral_delay, granular_wash, drone, ambient_texture, transition]
11
+ genre_affinity:
12
+ primary: [ambient, experimental, electronic]
13
+ secondary: [sound_design, film_score, idm, shoegaze]
14
+ complexity: advanced
15
+ signal_type: audio
16
+ introduced_in: "11.0"
17
+ m4l_device: true
18
+
19
+ key_parameters:
20
+ - name: "Freeze"
21
+ description: "Captures and infinitely sustains the current spectral content"
22
+ type: toggle
23
+ range: [0, 1]
24
+ sweet_spots:
25
+ off: 0
26
+ frozen: 1
27
+
28
+ - name: "Delay Time"
29
+ description: "Amount of spectral delay applied to frequency components"
30
+ range: [0.0, 100.0]
31
+ unit: "%"
32
+ type: float
33
+ sweet_spots:
34
+ off: 0.0
35
+ subtle: 15.0
36
+ moderate: 40.0
37
+ heavy: 70.0
38
+ full: 100.0
39
+
40
+ - name: "Delay Feedback"
41
+ description: "Feedback of the spectral delay for building density"
42
+ range: [0.0, 100.0]
43
+ unit: "%"
44
+ type: float
45
+ sweet_spots:
46
+ single: 0.0
47
+ moderate: 40.0
48
+ dense: 70.0
49
+ infinite: 100.0
50
+
51
+ - name: "Resolution"
52
+ description: "FFT resolution — higher values give more frequency bands but more latency"
53
+ range: [128, 8192]
54
+ type: int
55
+ sweet_spots:
56
+ low: 256
57
+ medium: 1024
58
+ high: 4096
59
+ ultra: 8192
60
+
61
+ - name: "Tilt"
62
+ description: "Tilts the spectral delay — positive = highs delayed more, negative = lows delayed more"
63
+ range: [-100.0, 100.0]
64
+ unit: "%"
65
+ type: float
66
+ sweet_spots:
67
+ highs_first: -50.0
68
+ even: 0.0
69
+ lows_first: 50.0
70
+
71
+ - name: "Spray"
72
+ description: "Randomizes the delay times per frequency band for scattered textures"
73
+ range: [0.0, 100.0]
74
+ unit: "%"
75
+ type: float
76
+ sweet_spots:
77
+ off: 0.0
78
+ subtle: 15.0
79
+ scattered: 40.0
80
+ chaotic: 80.0
81
+
82
+ - name: "Mod Rate"
83
+ description: "Modulation speed for the spectral parameters"
84
+ range: [0.01, 20.0]
85
+ unit: Hz
86
+ type: float
87
+ sweet_spots:
88
+ slow: 0.1
89
+ moderate: 1.0
90
+ fast: 5.0
91
+
92
+ - name: "Mod Amount"
93
+ description: "Depth of spectral modulation"
94
+ range: [0.0, 100.0]
95
+ unit: "%"
96
+ type: float
97
+ sweet_spots:
98
+ off: 0.0
99
+ subtle: 15.0
100
+ moderate: 40.0
101
+
102
+ - name: "Dry/Wet"
103
+ description: "Mix between dry and spectrally processed signal"
104
+ range: [0.0, 100.0]
105
+ unit: "%"
106
+ type: float
107
+ sweet_spots:
108
+ subtle: 15.0
109
+ blend: 35.0
110
+ heavy: 60.0
111
+ full: 100.0
112
+
113
+ pairs_well_with:
114
+ - device: "Reverb"
115
+ reason: "Reverb on spectral output creates vast, evolving sonic spaces"
116
+ - device: "EQ Eight"
117
+ reason: "Shape the spectral output to control harsh or muddy frequencies"
118
+ - device: "Delay"
119
+ reason: "Layer conventional echoes with spectral delay for complex textures"
120
+ - device: "Auto Filter"
121
+ reason: "Dynamic filtering on the spectral wash for movement"
122
+ - device: "Compressor"
123
+ reason: "Control the dynamics of the spectral output, especially after freeze"
124
+
125
+ starter_recipes:
126
+ - name: "Spectral Freeze"
127
+ description: "Capture and sustain input as an evolving spectral drone"
128
+ genre: ambient
129
+ params:
130
+ Freeze: 1
131
+ Resolution: 4096
132
+ "Mod Rate": 0.1
133
+ "Mod Amount": 15.0
134
+ "Dry/Wet": 80.0
135
+
136
+ - name: "Spectral Delay Shimmer"
137
+ description: "Frequency-smeared delay for ethereal, washed-out textures"
138
+ genre: ambient
139
+ params:
140
+ "Delay Time": 40.0
141
+ "Delay Feedback": 50.0
142
+ Tilt: 30.0
143
+ Resolution: 2048
144
+ "Dry/Wet": 35.0
145
+
146
+ - name: "Granular Wash"
147
+ description: "Scattered spectral delay creating granular-like textures"
148
+ genre: experimental
149
+ params:
150
+ "Delay Time": 60.0
151
+ "Delay Feedback": 40.0
152
+ Spray: 50.0
153
+ Tilt: -20.0
154
+ Resolution: 1024
155
+ "Dry/Wet": 45.0
156
+
157
+ gotchas:
158
+ - "This is a Max for Live device — requires Suite or M4L license"
159
+ - "High Resolution values (4096+) add significant latency — not suitable for real-time monitoring"
160
+ - "Freeze captures whatever is currently in the spectral buffer — automate for transitions"
161
+ - "Delay Feedback at 100% creates infinite buildup — can get very loud"
162
+ - "CPU-intensive, especially at high Resolution — use on a return track for efficiency"
163
+ - "Tilt creates interesting textures where high frequencies arrive before low or vice versa"
164
+ - "Spray adds randomness that evolves over time — no two moments sound identical"
@@ -0,0 +1,140 @@
1
+ id: vector_delay
2
+ name: Vector Delay
3
+ sonic_description: >
4
+ Experimental delay with an XY vector pad that morphs between different delay states.
5
+ Moving through the XY space smoothly transitions between multiple delay time, feedback,
6
+ and filter configurations, creating evolving, animated echo textures that shift character
7
+ in real-time.
8
+ effect_type: delay
9
+ character_tags: [morphing, evolving, experimental, animated, creative]
10
+ use_cases: [morphing_delay, evolving_echoes, performance, creative_effects, sound_design]
11
+ genre_affinity:
12
+ primary: [electronic, ambient, experimental]
13
+ secondary: [idm, sound_design, film_score]
14
+ complexity: advanced
15
+ signal_type: audio
16
+ introduced_in: "12.0"
17
+ m4l_device: true
18
+
19
+ key_parameters:
20
+ - name: "X Position"
21
+ description: "Horizontal position on the XY vector pad — morphs between delay states"
22
+ range: [0.0, 1.0]
23
+ type: float
24
+ sweet_spots:
25
+ left: 0.0
26
+ center: 0.5
27
+ right: 1.0
28
+
29
+ - name: "Y Position"
30
+ description: "Vertical position on the XY vector pad — morphs between delay states"
31
+ range: [0.0, 1.0]
32
+ type: float
33
+ sweet_spots:
34
+ bottom: 0.0
35
+ center: 0.5
36
+ top: 1.0
37
+
38
+ - name: "Delay Time"
39
+ description: "Base delay time affecting all vector states"
40
+ range: ["1/16", "1/8T", "1/8", "3/16", "1/4T", "1/4", "3/8", "1/2", "1"]
41
+ type: enum
42
+ sweet_spots:
43
+ eighth: "1/8"
44
+ quarter: "1/4"
45
+
46
+ - name: "Feedback"
47
+ description: "Amount of delay feedback across all states"
48
+ range: [0.0, 100.0]
49
+ unit: "%"
50
+ type: float
51
+ sweet_spots:
52
+ few: 25.0
53
+ moderate: 45.0
54
+ dense: 70.0
55
+
56
+ - name: "Filter"
57
+ description: "Filter frequency on the feedback path"
58
+ range: [20.0, 20000.0]
59
+ unit: Hz
60
+ type: float
61
+ sweet_spots:
62
+ dark: 1500.0
63
+ warm: 4000.0
64
+ bright: 10000.0
65
+
66
+ - name: "Mod Rate"
67
+ description: "Rate of automatic XY movement modulation"
68
+ range: [0.01, 20.0]
69
+ unit: Hz
70
+ type: float
71
+ sweet_spots:
72
+ slow_drift: 0.1
73
+ moderate: 1.0
74
+ fast: 5.0
75
+
76
+ - name: "Mod Amount"
77
+ description: "Depth of automatic XY position modulation"
78
+ range: [0.0, 100.0]
79
+ unit: "%"
80
+ type: float
81
+ sweet_spots:
82
+ subtle: 15.0
83
+ moderate: 40.0
84
+ wild: 80.0
85
+
86
+ - name: "Dry/Wet"
87
+ description: "Mix between dry and vector-delayed signal"
88
+ range: [0.0, 100.0]
89
+ unit: "%"
90
+ type: float
91
+ sweet_spots:
92
+ subtle: 20.0
93
+ blend: 35.0
94
+ wet: 50.0
95
+
96
+ pairs_well_with:
97
+ - device: "Reverb"
98
+ reason: "Reverb smooths the morphing transitions for ambient textures"
99
+ - device: "Auto Filter"
100
+ reason: "Additional filtering layers on top of the vector morphing"
101
+ - device: "Saturator"
102
+ reason: "Warm the morphing echoes with harmonic saturation"
103
+
104
+ starter_recipes:
105
+ - name: "Morphing Delay"
106
+ description: "Slowly evolving delay character through XY modulation"
107
+ genre: ambient
108
+ params:
109
+ "Delay Time": "1/4"
110
+ Feedback: 45.0
111
+ "Mod Rate": 0.2
112
+ "Mod Amount": 50.0
113
+ "Dry/Wet": 30.0
114
+
115
+ - name: "Evolving Echoes"
116
+ description: "Dynamic, shifting echoes for experimental production"
117
+ genre: experimental
118
+ params:
119
+ "Delay Time": "1/8"
120
+ Feedback: 55.0
121
+ "Mod Rate": 1.5
122
+ "Mod Amount": 70.0
123
+ Filter: 3000.0
124
+ "Dry/Wet": 35.0
125
+
126
+ - name: "Performance Delay"
127
+ description: "Map XY to a controller for real-time delay morphing during performance"
128
+ genre: electronic
129
+ params:
130
+ "Delay Time": "3/16"
131
+ Feedback: 40.0
132
+ "Mod Amount": 0.0
133
+ "Dry/Wet": 30.0
134
+
135
+ gotchas:
136
+ - "This is a Max for Live device — requires Suite or M4L license"
137
+ - "XY pad is ideal for MIDI controller mapping — map X and Y to knobs or a trackpad"
138
+ - "Modulation creates automatic movement but manual control gives more musical results"
139
+ - "Each corner of the XY pad represents a distinct delay configuration — explore all four"
140
+ - "Can be CPU-intensive when feedback is high and modulation is fast"
@@ -0,0 +1,141 @@
1
+ id: vinyl_distortion
2
+ name: Vinyl Distortion
3
+ sonic_description: >
4
+ Vinyl record simulation that adds the warmth, crackle, and imperfections of vinyl
5
+ playback. Features a Tracing Model that simulates the physical interaction of a
6
+ stylus with the groove, plus adjustable crackle and pinch effects for authentic
7
+ vintage character.
8
+ effect_type: distortion
9
+ character_tags: [warm, vintage, crackle, lo_fi, nostalgic]
10
+ use_cases: [vinyl_warmth, crackle_texture, lo_fi_aesthetic, vintage_character, retro_production]
11
+ genre_affinity:
12
+ primary: [lo_fi, hip_hop, jazz]
13
+ secondary: [house, soul, indie, ambient]
14
+ complexity: beginner
15
+ signal_type: audio
16
+ introduced_in: "5.0"
17
+
18
+ key_parameters:
19
+ - name: "Tracing Model"
20
+ description: "Simulates stylus tracing distortion — how the needle interacts with the groove"
21
+ type: toggle
22
+ range: [0, 1]
23
+ sweet_spots:
24
+ off: 0
25
+ on: 1
26
+
27
+ - name: "Tracing Drive"
28
+ description: "Intensity of the tracing distortion — higher values = more stylus nonlinearity"
29
+ range: [0.0, 100.0]
30
+ unit: "%"
31
+ type: float
32
+ sweet_spots:
33
+ subtle: 15.0
34
+ moderate: 35.0
35
+ heavy: 60.0
36
+
37
+ - name: "Tracing Freq"
38
+ description: "Frequency focus of the tracing model distortion"
39
+ range: [20.0, 20000.0]
40
+ unit: Hz
41
+ type: float
42
+ sweet_spots:
43
+ bass_warmth: 100.0
44
+ mid_character: 1000.0
45
+ high_sizzle: 5000.0
46
+
47
+ - name: "Pinch"
48
+ description: "Pinch effect — frequency modulation distortion for metallic color"
49
+ type: toggle
50
+ range: [0, 1]
51
+
52
+ - name: "Pinch Amount"
53
+ description: "Intensity of the pinch effect"
54
+ range: [0.0, 100.0]
55
+ unit: "%"
56
+ type: float
57
+ sweet_spots:
58
+ subtle: 10.0
59
+ moderate: 30.0
60
+ heavy: 60.0
61
+
62
+ - name: "Pinch Width"
63
+ description: "Stereo width of the pinch effect"
64
+ range: [0.0, 100.0]
65
+ unit: "%"
66
+ type: float
67
+ sweet_spots:
68
+ mono: 0.0
69
+ moderate: 50.0
70
+ wide: 100.0
71
+
72
+ - name: "Crackle Volume"
73
+ description: "Level of vinyl crackle noise — the pop and hiss of a record"
74
+ range: [0.0, 100.0]
75
+ unit: "%"
76
+ type: float
77
+ sweet_spots:
78
+ off: 0.0
79
+ subtle: 10.0
80
+ noticeable: 25.0
81
+ heavy: 50.0
82
+
83
+ - name: "Crackle Density"
84
+ description: "How frequent the crackle events are"
85
+ range: [0.0, 100.0]
86
+ unit: "%"
87
+ type: float
88
+ sweet_spots:
89
+ sparse: 15.0
90
+ moderate: 40.0
91
+ dense: 70.0
92
+
93
+ pairs_well_with:
94
+ - device: "EQ Eight"
95
+ reason: "Roll off highs and lows for authentic vinyl frequency response"
96
+ - device: "Saturator"
97
+ reason: "Layer analog warmth with vinyl character"
98
+ - device: "Chorus-Ensemble"
99
+ reason: "Subtle modulation adds tape-like wow and flutter"
100
+ - device: "Redux"
101
+ reason: "Combine for extreme lo-fi vintage degradation"
102
+
103
+ starter_recipes:
104
+ - name: "Vinyl Warmth + Crackle"
105
+ description: "Authentic vinyl record character with subtle crackle"
106
+ genre: lo_fi
107
+ params:
108
+ "Tracing Model": 1
109
+ "Tracing Drive": 25.0
110
+ "Tracing Freq": 1000.0
111
+ "Crackle Volume": 15.0
112
+ "Crackle Density": 30.0
113
+
114
+ - name: "Lo-Fi Aesthetic"
115
+ description: "Heavy vinyl degradation for lo-fi hip-hop and chill beats"
116
+ genre: hip_hop
117
+ params:
118
+ "Tracing Model": 1
119
+ "Tracing Drive": 45.0
120
+ "Tracing Freq": 500.0
121
+ Pinch: 1
122
+ "Pinch Amount": 15.0
123
+ "Crackle Volume": 25.0
124
+ "Crackle Density": 50.0
125
+
126
+ - name: "Subtle Vintage"
127
+ description: "Light vinyl coloring for nostalgic warmth"
128
+ genre: all
129
+ params:
130
+ "Tracing Model": 1
131
+ "Tracing Drive": 15.0
132
+ "Tracing Freq": 800.0
133
+ "Crackle Volume": 8.0
134
+ "Crackle Density": 20.0
135
+
136
+ gotchas:
137
+ - "Crackle is generated noise, not input-dependent — it plays even during silence"
138
+ - "Tracing Model at high Drive with low Frequency adds significant low-end distortion"
139
+ - "Pinch creates frequency-modulation artifacts — can sound metallic and unmusical at high values"
140
+ - "For authentic vinyl sound, combine with EQ Eight: gentle LP at 12kHz, HP at 40Hz"
141
+ - "Crackle Volume should be subtle — real vinyl crackle is barely perceptible unless the record is damaged"
@@ -0,0 +1,222 @@
1
+ id: analog
2
+ name: Analog
3
+ sonic_description: >
4
+ Classic analog-modeled subtractive synthesizer with two oscillators, noise generator,
5
+ two multimode filters, and two amplifiers. Delivers everything from fat basses to
6
+ shimmering pads with the warmth and punch of vintage hardware subtractive synths.
7
+ synthesis_type: subtractive
8
+ character_tags: [warm, punchy, classic, fat, versatile]
9
+ use_cases: [bass, leads, pads, plucks, keys]
10
+ genre_affinity:
11
+ primary: [techno, house, synthwave]
12
+ secondary: [trance, electro, pop, disco]
13
+ complexity: intermediate
14
+ self_contained: true
15
+ introduced_in: "8.0"
16
+
17
+ key_parameters:
18
+ - name: "Osc1 Shape"
19
+ description: "Oscillator 1 waveform — selects the raw tonal character"
20
+ range: ["Saw", "Square", "Sine", "Noise"]
21
+ type: enum
22
+ sweet_spots:
23
+ bass: "Saw"
24
+ pad: "Sine"
25
+ lead: "Square"
26
+
27
+ - name: "Osc2 Shape"
28
+ description: "Oscillator 2 waveform — layer with Osc1 for thickness"
29
+ range: ["Saw", "Square", "Sine", "Noise"]
30
+ type: enum
31
+ sweet_spots:
32
+ reese_bass: "Saw"
33
+ texture: "Noise"
34
+
35
+ - name: "Osc1 Octave"
36
+ description: "Oscillator 1 octave transposition"
37
+ range: [-3, 3]
38
+ type: int
39
+ sweet_spots:
40
+ sub_bass: -1
41
+ lead: 0
42
+
43
+ - name: "Osc2 Octave"
44
+ description: "Oscillator 2 octave transposition"
45
+ range: [-3, 3]
46
+ type: int
47
+ sweet_spots:
48
+ thickness: 0
49
+ sub_layer: -1
50
+
51
+ - name: "Osc2 Detune"
52
+ description: "Fine detune of oscillator 2 for chorus-like thickness"
53
+ range: [-1.0, 1.0]
54
+ unit: "st"
55
+ type: float
56
+ sweet_spots:
57
+ subtle_width: 0.08
58
+ thick_unison: 0.25
59
+ extreme_detune: 0.5
60
+
61
+ - name: "Filter1 Type"
62
+ description: "Filter 1 topology — shapes the harmonic content"
63
+ range: ["LP12", "LP24", "BP", "HP", "Notch"]
64
+ type: enum
65
+ sweet_spots:
66
+ bass: "LP24"
67
+ pad: "LP12"
68
+ acid: "LP24"
69
+
70
+ - name: "Filter1 Freq"
71
+ description: "Filter 1 cutoff frequency"
72
+ range: [20.0, 20000.0]
73
+ unit: "Hz"
74
+ type: float
75
+ sweet_spots:
76
+ deep_bass: 200.0
77
+ warm_pad: 2000.0
78
+ bright_lead: 8000.0
79
+ acid_closed: 400.0
80
+
81
+ - name: "Filter1 Res"
82
+ description: "Filter 1 resonance — adds emphasis at cutoff frequency"
83
+ range: [0.0, 1.0]
84
+ type: float
85
+ sweet_spots:
86
+ clean: 0.0
87
+ warm: 0.2
88
+ squelchy: 0.6
89
+ acid_screech: 0.85
90
+
91
+ - name: "Fil1 Env Amount"
92
+ description: "How much the filter envelope modulates Filter 1 cutoff"
93
+ range: [-1.0, 1.0]
94
+ type: float
95
+ sweet_spots:
96
+ pluck: 0.7
97
+ acid_sweep: 0.9
98
+ subtle_movement: 0.2
99
+
100
+ - name: "Amp1 Attack"
101
+ description: "Amplitude envelope attack time"
102
+ range: [0.0, 10000.0]
103
+ unit: "ms"
104
+ type: float
105
+ sweet_spots:
106
+ percussive: 0.0
107
+ pad: 500.0
108
+ slow_swell: 2000.0
109
+
110
+ - name: "Amp1 Decay"
111
+ description: "Amplitude envelope decay time"
112
+ range: [0.0, 10000.0]
113
+ unit: "ms"
114
+ type: float
115
+ sweet_spots:
116
+ pluck: 200.0
117
+ bass: 500.0
118
+
119
+ - name: "Amp1 Sustain"
120
+ description: "Amplitude envelope sustain level"
121
+ range: [0.0, 1.0]
122
+ type: float
123
+ sweet_spots:
124
+ pluck: 0.0
125
+ bass: 0.8
126
+ pad: 1.0
127
+
128
+ - name: "Amp1 Release"
129
+ description: "Amplitude envelope release time"
130
+ range: [0.0, 10000.0]
131
+ unit: "ms"
132
+ type: float
133
+ sweet_spots:
134
+ tight: 50.0
135
+ normal: 200.0
136
+ pad: 1500.0
137
+
138
+ - name: "LFO1 Rate"
139
+ description: "LFO 1 speed — modulation frequency"
140
+ range: [0.01, 30.0]
141
+ unit: "Hz"
142
+ type: float
143
+ sweet_spots:
144
+ slow_sweep: 0.2
145
+ vibrato: 5.5
146
+ wobble: 3.0
147
+
148
+ - name: "LFO1 Amount"
149
+ description: "LFO 1 modulation depth"
150
+ range: [0.0, 1.0]
151
+ type: float
152
+ sweet_spots:
153
+ subtle: 0.1
154
+ moderate: 0.35
155
+ extreme: 0.8
156
+
157
+ pairs_well_with:
158
+ - device: "Auto Filter"
159
+ reason: "Adds rhythmic filter movement and envelope-following beyond the built-in filters"
160
+ - device: "Chorus-Ensemble"
161
+ reason: "Thickens single-oscillator patches and adds stereo width"
162
+ - device: "Saturator"
163
+ reason: "Adds harmonic warmth and edge, especially for bass sounds"
164
+ - device: "Reverb"
165
+ reason: "Essential for pads — long decay with diffusion creates lush space"
166
+ - device: "Compressor"
167
+ reason: "Tightens dynamics for bass and lead patches in a mix context"
168
+
169
+ starter_recipes:
170
+ - name: "Acid Bass"
171
+ description: "Classic 303-style acid bass line with squelchy resonant filter"
172
+ genre: techno
173
+ params:
174
+ "Osc1 Shape": "Saw"
175
+ "Osc1 Octave": -1
176
+ "Filter1 Type": "LP24"
177
+ "Filter1 Freq": 400.0
178
+ "Filter1 Res": 0.75
179
+ "Fil1 Env Amount": 0.85
180
+ "Amp1 Attack": 0.0
181
+ "Amp1 Decay": 300.0
182
+ "Amp1 Sustain": 0.0
183
+ "Amp1 Release": 50.0
184
+
185
+ - name: "Warm Analog Pad"
186
+ description: "Lush, warm evolving pad with slow attack and gentle filter movement"
187
+ genre: ambient
188
+ params:
189
+ "Osc1 Shape": "Saw"
190
+ "Osc2 Shape": "Saw"
191
+ "Osc2 Detune": 0.1
192
+ "Filter1 Type": "LP12"
193
+ "Filter1 Freq": 2500.0
194
+ "Filter1 Res": 0.15
195
+ "Amp1 Attack": 600.0
196
+ "Amp1 Decay": 0.0
197
+ "Amp1 Sustain": 1.0
198
+ "Amp1 Release": 1500.0
199
+ "LFO1 Rate": 0.2
200
+ "LFO1 Amount": 0.15
201
+
202
+ - name: "Punchy Lead"
203
+ description: "Cutting monophonic lead with moderate resonance and fast envelope"
204
+ genre: synthwave
205
+ params:
206
+ "Osc1 Shape": "Square"
207
+ "Osc2 Shape": "Saw"
208
+ "Osc2 Detune": 0.05
209
+ "Filter1 Type": "LP24"
210
+ "Filter1 Freq": 3000.0
211
+ "Filter1 Res": 0.3
212
+ "Fil1 Env Amount": 0.4
213
+ "Amp1 Attack": 5.0
214
+ "Amp1 Decay": 200.0
215
+ "Amp1 Sustain": 0.7
216
+ "Amp1 Release": 200.0
217
+
218
+ gotchas:
219
+ - "Two separate filter/amp sections — make sure you're editing Filter1/Amp1 (the primary signal path) not Filter2/Amp2 unless you want parallel filtering"
220
+ - "Osc2 Detune is in semitones not cents — small values like 0.05-0.15 give tasteful thickness"
221
+ - "Filter1 Res at maximum can cause self-oscillation and volume spikes — use with caution"
222
+ - "LFO routing is fixed per LFO slot — check which destination is selected before adjusting amount"