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,131 @@
1
+ id: resonators
2
+ name: Resonators
3
+ sonic_description: >
4
+ Five parallel tuned resonators, each individually tunable by note, fine pitch,
5
+ gain, and decay time. Creates pitched resonances from incoming audio, turning
6
+ noise, drums, or any sound into tuned harmonic content. Can produce drone-like
7
+ sustains, harmonic series, and chord-based resonant effects.
8
+ effect_type: resonator
9
+ character_tags: [tuned, harmonic, resonant, drone, pitched]
10
+ use_cases: [harmonic_resonance, drone_generator, pitched_noise, chord_resonance, creative_tuning]
11
+ genre_affinity:
12
+ primary: [ambient, experimental, drone]
13
+ secondary: [techno, idm, sound_design, cinematic]
14
+ complexity: intermediate
15
+ introduced_in: "1.0"
16
+
17
+ key_parameters:
18
+ - name: "Mode"
19
+ description: "Overall resonance character — affects overtone structure"
20
+ range: ["A", "B"]
21
+ type: enum
22
+
23
+ - name: "Note (I-V)"
24
+ description: "Pitch of each resonator as a MIDI note — sets the fundamental frequency"
25
+ range: ["C-2", "G8"]
26
+ type: note
27
+ sweet_spots:
28
+ sub_bass: "C2"
29
+ middle: "C4"
30
+ high: "C6"
31
+
32
+ - name: "Fine (I-V)"
33
+ description: "Fine tuning in cents for each resonator"
34
+ range: [-50.0, 50.0]
35
+ unit: "cents"
36
+ type: float
37
+
38
+ - name: "Gain (I-V)"
39
+ description: "Volume of each resonator — balance the harmonic blend"
40
+ range: [-30.0, 0.0]
41
+ unit: "dB"
42
+ type: float
43
+ sweet_spots:
44
+ soft: -20.0
45
+ medium: -10.0
46
+ full: 0.0
47
+
48
+ - name: "Decay (I-V)"
49
+ description: "How long each resonator sustains after excitation"
50
+ range: [0.0, 20.0]
51
+ unit: "s"
52
+ type: float
53
+ sweet_spots:
54
+ tight: 0.5
55
+ medium: 2.0
56
+ long: 8.0
57
+ drone: 20.0
58
+
59
+ - name: "Brightness"
60
+ description: "High-frequency content of all resonators"
61
+ range: [0.0, 1.0]
62
+ type: float
63
+
64
+ - name: "Color"
65
+ description: "Tonal color of the resonance — interacts with overtone structure"
66
+ range: [0.0, 1.0]
67
+ type: float
68
+
69
+ - name: "Dry/Wet"
70
+ description: "Mix between dry signal and resonator output"
71
+ range: [0, 100]
72
+ unit: "%"
73
+ type: int
74
+
75
+ - name: "Width"
76
+ description: "Stereo spread of the resonators"
77
+ range: [0.0, 1.0]
78
+ type: float
79
+
80
+ pairs_well_with:
81
+ - device: "Drum Rack"
82
+ reason: "Drum hits excite resonators to create pitched percussion"
83
+ - device: "Reverb"
84
+ reason: "Spatializes resonator output for immersive drone textures"
85
+ - device: "Auto Filter"
86
+ reason: "Filter sweeps over resonator harmonics for movement"
87
+ - device: "Compressor"
88
+ reason: "Controls resonance dynamics and prevents buildup"
89
+ - device: "Utility"
90
+ reason: "Gain staging to manage resonator output levels"
91
+
92
+ starter_recipes:
93
+ - name: "Harmonic Series"
94
+ description: "Tune five resonators to the harmonic series (fundamental, octave, fifth, octave, major third)"
95
+ genre: ambient
96
+ params:
97
+ "Decay (I-V)": 5.0
98
+ "Brightness": 0.5
99
+ "Dry/Wet": 50
100
+
101
+ - name: "Chord Resonance"
102
+ description: "Tune resonators to a chord — incoming audio excites the chord"
103
+ genre: experimental
104
+ params:
105
+ "Decay (I-V)": 3.0
106
+ "Brightness": 0.6
107
+ "Dry/Wet": 60
108
+
109
+ - name: "Drone Generator"
110
+ description: "Very long decay resonators fed by any audio — creates sustained drones"
111
+ genre: drone
112
+ params:
113
+ "Decay (I-V)": 20.0
114
+ "Brightness": 0.3
115
+ "Dry/Wet": 80
116
+
117
+ - name: "Percussive Resonance"
118
+ description: "Short decay resonators tuned to a scale for melodic percussion"
119
+ genre: techno
120
+ params:
121
+ "Decay (I-V)": 0.5
122
+ "Brightness": 0.7
123
+ "Dry/Wet": 40
124
+
125
+ gotchas:
126
+ - "Each resonator has its own Note, Fine, Gain, and Decay — set all five independently"
127
+ - "Very long Decay values with loud input can cause resonance buildup and volume spikes"
128
+ - "Resonators respond to ANY input — even silence with noise floor can excite long-decay resonators"
129
+ - "The five resonators are parallel, not serial — they all process the same input simultaneously"
130
+ - "Low Note values (bass) with long Decay can cause low-frequency buildup — use with Utility for gain control"
131
+ - "Width spreads the five resonators across the stereo field — 0 is mono, 1 is full spread"
@@ -0,0 +1,63 @@
1
+ id: spectrum
2
+ name: Spectrum
3
+ sonic_description: >
4
+ Real-time frequency spectrum analyzer that displays the spectral content of audio
5
+ passing through it. Purely visual — it does not alter the audio signal. Essential
6
+ for identifying frequency buildups, monitoring bass content, and making informed
7
+ EQ decisions.
8
+ effect_type: analyzer
9
+ character_tags: [analysis, visual, diagnostic, frequency, metering]
10
+ use_cases: [frequency_analysis, mix_monitoring, eq_guidance, bass_monitoring, spectral_comparison]
11
+ genre_affinity:
12
+ primary: [all]
13
+ secondary: []
14
+ complexity: beginner
15
+ introduced_in: "1.0"
16
+
17
+ key_parameters:
18
+ - name: "Block Size"
19
+ description: "FFT analysis window size — larger = more frequency resolution, less time resolution"
20
+ range: [256, 512, 1024, 2048, 4096, 8192, 16384]
21
+ type: enum
22
+ sweet_spots:
23
+ fast_response: 1024
24
+ balanced: 4096
25
+ high_resolution: 8192
26
+
27
+ - name: "Channel"
28
+ description: "Which channel to analyze"
29
+ range: ["L/R", "Left", "Right", "Mid", "Side"]
30
+ type: enum
31
+
32
+ - name: "Range"
33
+ description: "Display range in dB"
34
+ range: [30, 60, 80]
35
+ unit: "dB"
36
+ type: enum
37
+
38
+ - name: "Refresh Rate"
39
+ description: "How frequently the display updates"
40
+ range: ["Slow", "Mid", "Fast"]
41
+ type: enum
42
+
43
+ - name: "Average"
44
+ description: "Averaging mode — smooths the display for easier reading"
45
+ range: ["Off", "Slow", "Mid", "Fast"]
46
+ type: enum
47
+
48
+ pairs_well_with:
49
+ - device: "EQ Eight"
50
+ reason: "Use Spectrum to identify problems, EQ Eight to fix them"
51
+ - device: "Utility"
52
+ reason: "Solo channels with Utility, analyze with Spectrum"
53
+ - device: "Compressor"
54
+ reason: "Monitor spectral changes caused by compression"
55
+
56
+ starter_recipes: []
57
+
58
+ gotchas:
59
+ - "Spectrum is purely visual — it passes audio through unchanged"
60
+ - "Larger Block Size shows more frequency detail but reacts more slowly to transients"
61
+ - "Place at the END of the device chain to see the final processed output"
62
+ - "Mid/Side mode is invaluable for checking stereo width distribution across frequencies"
63
+ - "CPU usage increases with Block Size — use 4096 for normal work, 8192+ only when needed"
@@ -0,0 +1,51 @@
1
+ id: tuner
2
+ name: Tuner
3
+ sonic_description: >
4
+ Chromatic tuner that detects the pitch of incoming audio and displays deviation
5
+ from the nearest note. Passes audio through unchanged. Essential for tuning
6
+ instruments before recording or checking pitch accuracy of audio material.
7
+ effect_type: analyzer
8
+ character_tags: [tuning, pitch_detection, utility, diagnostic]
9
+ use_cases: [instrument_tuning, pitch_checking, intonation_verification]
10
+ genre_affinity:
11
+ primary: [all]
12
+ secondary: []
13
+ complexity: beginner
14
+ introduced_in: "8.0"
15
+
16
+ key_parameters:
17
+ - name: "Reference Pitch"
18
+ description: "Reference frequency for A4 — standard is 440Hz, adjustable for alternate tunings"
19
+ range: [410.0, 480.0]
20
+ unit: "Hz"
21
+ type: float
22
+ sweet_spots:
23
+ standard: 440.0
24
+ baroque: 415.0
25
+ concert_sharp: 442.0
26
+ orchestral: 443.0
27
+
28
+ - name: "Note Display"
29
+ description: "Shows the detected note name and octave"
30
+ type: display
31
+
32
+ - name: "Cents Display"
33
+ description: "Shows deviation from the nearest note in cents"
34
+ range: [-50, 50]
35
+ unit: "cents"
36
+ type: display
37
+
38
+ pairs_well_with:
39
+ - device: "Utility"
40
+ reason: "Use Utility to isolate left or right channel before tuning"
41
+ - device: "EQ Eight"
42
+ reason: "High-pass filter to remove rumble that can confuse pitch detection"
43
+
44
+ starter_recipes: []
45
+
46
+ gotchas:
47
+ - "Tuner is purely visual — it passes audio through unchanged"
48
+ - "Works best with monophonic input — polyphonic audio (chords) will confuse the detection"
49
+ - "Place FIRST in the device chain before any pitch-altering effects"
50
+ - "Very low or very high frequencies may not detect reliably"
51
+ - "Reference pitch changes affect the displayed note name, not the audio itself"
@@ -0,0 +1,136 @@
1
+ id: utility
2
+ name: Utility
3
+ sonic_description: >
4
+ Essential mixing and signal management tool providing gain adjustment, stereo width
5
+ control, channel mode selection, bass mono filtering, and DC offset correction.
6
+ The Swiss army knife of Ableton mixing — used on nearly every track for gain staging,
7
+ mono compatibility checks, and stereo field management.
8
+ effect_type: utility
9
+ character_tags: [mixing, gain, stereo, mono, essential]
10
+ use_cases: [gain_staging, mono_check, stereo_width, bass_mono, channel_swap, dc_offset]
11
+ genre_affinity:
12
+ primary: [all]
13
+ secondary: []
14
+ complexity: beginner
15
+ introduced_in: "1.0"
16
+
17
+ key_parameters:
18
+ - name: "Gain"
19
+ description: "Volume adjustment in dB — primary gain staging tool"
20
+ range: [-35.0, 35.0]
21
+ unit: "dB"
22
+ type: float
23
+ sweet_spots:
24
+ cut_6: -6.0
25
+ unity: 0.0
26
+ boost_3: 3.0
27
+
28
+ - name: "Channel Mode"
29
+ description: "Channel routing and monitoring mode"
30
+ range: ["Stereo", "Left", "Right", "Swap", "Mono"]
31
+ type: enum
32
+ sweet_spots:
33
+ normal: "Stereo"
34
+ mono_check: "Mono"
35
+ side_isolation: "Right"
36
+
37
+ - name: "Width"
38
+ description: "Stereo width control — 0% is mono, 100% is normal, 400% is super-wide"
39
+ range: [0, 400]
40
+ unit: "%"
41
+ type: int
42
+ sweet_spots:
43
+ mono: 0
44
+ normal: 100
45
+ wide: 150
46
+ super_wide: 200
47
+
48
+ - name: "Bass Mono"
49
+ description: "Frequency below which the signal is summed to mono — essential for club mixes"
50
+ range: [50, 500]
51
+ unit: "Hz"
52
+ type: int
53
+ sweet_spots:
54
+ sub_only: 80
55
+ bass_region: 120
56
+ low_mid: 200
57
+
58
+ - name: "Bass Mono On/Off"
59
+ description: "Enables or disables bass mono filtering"
60
+ range: ["On", "Off"]
61
+ type: enum
62
+
63
+ - name: "Phono Filter"
64
+ description: "Applies high-pass and low-pass filtering for DJ-style frequency isolation"
65
+ range: ["Off", "On"]
66
+ type: enum
67
+
68
+ - name: "DC Offset"
69
+ description: "Removes DC offset from the signal — fixes asymmetric waveforms"
70
+ range: ["On", "Off"]
71
+ type: enum
72
+
73
+ - name: "Phase Invert (L)"
74
+ description: "Inverts the phase of the left channel"
75
+ range: ["On", "Off"]
76
+ type: enum
77
+
78
+ - name: "Phase Invert (R)"
79
+ description: "Inverts the phase of the right channel"
80
+ range: ["On", "Off"]
81
+ type: enum
82
+
83
+ - name: "Mute"
84
+ description: "Silences the output completely"
85
+ range: ["On", "Off"]
86
+ type: enum
87
+
88
+ pairs_well_with:
89
+ - device: "EQ Eight"
90
+ reason: "Gain stage before EQ for optimal headroom management"
91
+ - device: "Compressor"
92
+ reason: "Set input level before compression for consistent threshold behavior"
93
+ - device: "Spectrum"
94
+ reason: "Use Utility to solo channels, then Spectrum to analyze"
95
+ - device: "Limiter"
96
+ reason: "Gain stage into limiter for predictable limiting behavior"
97
+
98
+ starter_recipes:
99
+ - name: "Mono Bass Below 120Hz"
100
+ description: "Sum everything below 120Hz to mono for club-ready low end"
101
+ genre: edm
102
+ params:
103
+ "Bass Mono On/Off": "On"
104
+ "Bass Mono": 120
105
+
106
+ - name: "Gain Staging (-6dB)"
107
+ description: "Standard gain reduction for headroom management"
108
+ genre: all
109
+ params:
110
+ "Gain": -6.0
111
+
112
+ - name: "Stereo to Mono Check"
113
+ description: "Collapse to mono to check mix compatibility on mono systems"
114
+ genre: all
115
+ params:
116
+ "Channel Mode": "Mono"
117
+
118
+ - name: "Wide Stereo"
119
+ description: "Widen the stereo image for pads, ambient, or background elements"
120
+ genre: ambient
121
+ params:
122
+ "Width": 150
123
+
124
+ - name: "Phase Fix"
125
+ description: "Invert one channel's phase to correct phase cancellation issues"
126
+ genre: all
127
+ params:
128
+ "Phase Invert (L)": "On"
129
+
130
+ gotchas:
131
+ - "Gain goes up to +35dB — extreme values can cause clipping downstream"
132
+ - "Width at 0% is not silence, it is mono — the mid signal is preserved"
133
+ - "Width above 100% boosts the side signal — can introduce phase issues on mono playback"
134
+ - "Bass Mono frequency is a crossover point, not a hard cutoff — there is a transition slope"
135
+ - "Place Utility BEFORE effects when gain staging, AFTER effects when checking output level"
136
+ - "Mute on Utility silences the track more cleanly than track mute — no tail from effects"
@@ -0,0 +1,160 @@
1
+ id: vocoder
2
+ name: Vocoder
3
+ sonic_description: >
4
+ Classic analysis-synthesis vocoder that imposes the spectral envelope of one sound
5
+ (the modulator/carrier) onto another. Splits audio into frequency bands and uses
6
+ the amplitude envelope of the modulator to shape the carrier signal. Creates iconic
7
+ robot voice effects, talking instruments, and spectral transfer textures.
8
+ effect_type: spectral
9
+ character_tags: [vocoder, spectral, robotic, vocal, synthesis]
10
+ use_cases: [robot_voice, talking_synth, spectral_transfer, vocal_processing, creative_filtering]
11
+ genre_affinity:
12
+ primary: [edm, synthwave, electro]
13
+ secondary: [pop, funk, experimental, hip_hop]
14
+ complexity: advanced
15
+ introduced_in: "8.0"
16
+
17
+ key_parameters:
18
+ - name: "Bands"
19
+ description: "Number of frequency analysis/synthesis bands — more = higher spectral resolution"
20
+ range: [4, 40]
21
+ type: int
22
+ sweet_spots:
23
+ lo_fi: 8
24
+ standard: 20
25
+ high_res: 40
26
+
27
+ - name: "Bandwidth"
28
+ description: "Width of each frequency band — affects spectral smearing"
29
+ range: [0.0, 1.0]
30
+ type: float
31
+ sweet_spots:
32
+ narrow: 0.3
33
+ normal: 0.6
34
+ wide: 0.9
35
+
36
+ - name: "Formant Shift"
37
+ description: "Shifts the spectral envelope up or down — changes perceived vowel character"
38
+ range: [-1.0, 1.0]
39
+ type: float
40
+ sweet_spots:
41
+ deeper: -0.5
42
+ natural: 0.0
43
+ higher: 0.5
44
+
45
+ - name: "Depth"
46
+ description: "How strongly the modulator's envelope shapes the carrier"
47
+ range: [0.0, 1.0]
48
+ type: float
49
+ sweet_spots:
50
+ subtle: 0.3
51
+ normal: 0.7
52
+ extreme: 1.0
53
+
54
+ - name: "Attack"
55
+ description: "How quickly the vocoder responds to changes in the modulator"
56
+ range: [0.1, 500.0]
57
+ unit: "ms"
58
+ type: float
59
+ sweet_spots:
60
+ fast: 1.0
61
+ medium: 10.0
62
+ slow: 100.0
63
+
64
+ - name: "Release"
65
+ description: "How quickly the vocoder releases after the modulator drops"
66
+ range: [0.1, 500.0]
67
+ unit: "ms"
68
+ type: float
69
+ sweet_spots:
70
+ fast: 5.0
71
+ medium: 30.0
72
+ slow: 200.0
73
+
74
+ - name: "Carrier"
75
+ description: "Source for the carrier signal — what gets shaped by the modulator"
76
+ range: ["External", "Noise", "Pitch Track", "Modulator"]
77
+ type: enum
78
+ sweet_spots:
79
+ classic: "External"
80
+ self_vocoder: "Noise"
81
+ monophonic: "Pitch Track"
82
+
83
+ - name: "Gate"
84
+ description: "Threshold below which bands are silenced — cleans up noise"
85
+ range: [-80.0, 0.0]
86
+ unit: "dB"
87
+ type: float
88
+
89
+ - name: "Level"
90
+ description: "Overall output level of the vocoder"
91
+ range: [-30.0, 30.0]
92
+ unit: "dB"
93
+ type: float
94
+
95
+ - name: "Dry/Wet"
96
+ description: "Mix between dry input and vocoder output"
97
+ range: [0, 100]
98
+ unit: "%"
99
+ type: int
100
+
101
+ pairs_well_with:
102
+ - device: "Wavetable"
103
+ reason: "Rich carrier signal with evolving harmonics for detailed vocoding"
104
+ - device: "Analog"
105
+ reason: "Classic synth carrier for retro vocoder sounds"
106
+ - device: "Reverb"
107
+ reason: "Spatializes vocoder output for cinematic vocal processing"
108
+ - device: "Compressor"
109
+ reason: "Evens out the dynamic range of vocoder output"
110
+ - device: "EQ Eight"
111
+ reason: "Shapes the spectral balance after vocoding"
112
+ - device: "Chorus-Ensemble"
113
+ reason: "Thickens vocoder output for wider, richer vocal effects"
114
+
115
+ starter_recipes:
116
+ - name: "Classic Vocoder"
117
+ description: "Traditional robot voice — send voice to modulator, synth pad to carrier"
118
+ genre: electro
119
+ params:
120
+ "Bands": 20
121
+ "Bandwidth": 0.6
122
+ "Depth": 0.8
123
+ "Carrier": "External"
124
+ "Attack": 5.0
125
+ "Release": 30.0
126
+ "Dry/Wet": 100
127
+
128
+ - name: "Robot Voice"
129
+ description: "Heavily processed robotic vocal effect with noise carrier"
130
+ genre: edm
131
+ params:
132
+ "Bands": 40
133
+ "Bandwidth": 0.4
134
+ "Depth": 1.0
135
+ "Carrier": "Noise"
136
+ "Attack": 1.0
137
+ "Release": 10.0
138
+ "Formant Shift": 0.0
139
+ "Dry/Wet": 100
140
+
141
+ - name: "Spectral Transfer"
142
+ description: "Subtle spectral imprint of one sound onto another — creative coloring"
143
+ genre: experimental
144
+ params:
145
+ "Bands": 30
146
+ "Bandwidth": 0.8
147
+ "Depth": 0.5
148
+ "Carrier": "External"
149
+ "Attack": 10.0
150
+ "Release": 50.0
151
+ "Dry/Wet": 60
152
+
153
+ gotchas:
154
+ - "External carrier mode requires routing a sidechain input — the carrier audio must come from another track"
155
+ - "Noise carrier mode does not need external routing — it uses internal noise as the carrier"
156
+ - "More Bands = higher spectral resolution but more CPU and potential for artifacts"
157
+ - "Formant Shift changes perceived vowels — positive sounds smaller/higher, negative sounds larger/deeper"
158
+ - "Attack and Release values affect intelligibility — too slow loses consonants, too fast sounds glitchy"
159
+ - "Gate threshold helps clean up background noise between phrases — set just above the noise floor"
160
+ - "Pitch Track carrier mode works best with monophonic input and may track inaccurately on chords"