-
Notifications
You must be signed in to change notification settings - Fork 37
feature: piano + drums plugins should register synth volume faders #8
Copy link
Copy link
Open
Labels
audioAudio engine, latency, routing, VST/NAMAudio engine, latency, routing, VST/NAMcap:1:audio-mixFaders, mixer state, analyser integration, and per-source balanceFaders, mixer state, analyser integration, and per-source balancecap:2:ui-plugin-screensPlugin-owned screens and plugin surface layoutPlugin-owned screens and plugin surface layoutpluginRelates to a slopsmith pluginRelates to a slopsmith pluginuxuser-experienceuser-experience
Description
Activity
Metadata
Metadata
Assignees
Labels
audioAudio engine, latency, routing, VST/NAMAudio engine, latency, routing, VST/NAMcap:1:audio-mixFaders, mixer state, analyser integration, and per-source balanceFaders, mixer state, analyser integration, and per-source balancecap:2:ui-plugin-screensPlugin-owned screens and plugin surface layoutPlugin-owned screens and plugin surface layoutpluginRelates to a slopsmith pluginRelates to a slopsmith pluginuxuser-experienceuser-experience
Follow-up from #378 / #94.
slopsmith#94 introduces a fader registry (`window.slopsmith.audio.registerFader`). The piano and drums visualization plugins each have their own `synthVolume` slider in their config screens, persisted to plugin-prefixed localStorage keys (`piano_synth_vol`, `drums_synth_vol`). They could each register a mixer fader so users can balance piano/drum synth volume from the player popover alongside Song and Amp.
Each migration is small (≤15 lines per plugin) — looks like the NAM PR (slopsmith-plugin-nam-tone#1):
```js
function _registerFader() {
const api = window.slopsmith && window.slopsmith.audio;
if (!api) return;
api.registerFader({
id: 'piano_synth',
label: 'Piano',
min: 0, max: 1, step: 0.05,
defaultValue: _cfg.synthVolume,
getValue: () => _cfg.synthVolume,
setValue: (v) => _setSynthVolume(v), // existing setter — writes _synthGain.gain.value, persists, updates label
});
}
```
Plugins to update
Acceptance criteria
Reference: parent feature #378, registry implemented in #94, NAM as canonical reference: byrongamatos/slopsmith-plugin-nam-tone#1.