memlnaut-nisps/playground/js/synth
monkey-w1n5t0n fbeedba2f3 fix(modular): register worklet via concatenated blob url
The globalThis.FaustWorkletProcessor attachment on the base class isn't
enough in practice: Chrome's AudioWorkletGlobalScope isolates top-level
class declarations between separate addModule() calls, so a subclass
script loaded via a second addModule() still throws ReferenceError on
its 'extends FaustWorkletProcessor' clause.

Workaround: fetch both files, concatenate, and addModule() a single
blob URL. The base class and subclass end up in the same script
evaluation context and the extends clause resolves. Processor names
are memoised on a static Set so repeated sub-engine swaps don't try
to re-register (which would throw).
2026-04-11 08:33:29 +02:00
..
additive-engine.js feat(playground): Additive + FM engine integration, live engine switching (meml-mdy, meml-355) 2026-04-03 17:56:35 +01:00
additive-presets.js feat(playground): per-engine param presets for additive + FM (meml-ax4) 2026-04-03 18:26:12 +01:00
arpeggiator-worker.js feat(playground): engine abstraction layer + C15 adapter (meml-byk) 2026-04-03 17:30:28 +01:00
arpeggiator.js feat(playground): engine abstraction layer + C15 adapter (meml-byk) 2026-04-03 17:30:28 +01:00
c15-adapter.js feat(playground): EOC chain wired into audio graph, bypass mode manual sliders (meml-xp3) 2026-04-03 17:49:14 +01:00
c15-bridge.js feat(playground): EOC chain wired into audio graph, bypass mode manual sliders (meml-xp3) 2026-04-03 17:49:14 +01:00
engine-interface.js feat(playground): Faust WASM build pipeline + param auto-discovery (meml-5s3) 2026-04-03 17:30:23 +01:00
faust-engine-base.js fix(playground): FaustEngineBase creates AudioContext if none passed; add stop()/start() methods 2026-04-03 19:08:52 +01:00
faust-param-meta.js feat(tests): add 24 Playwright e2e tests for engine switching + fix hidden param filtering 2026-04-03 19:28:23 +01:00
fm-engine.js feat(playground): Additive + FM engine integration, live engine switching (meml-mdy, meml-355) 2026-04-03 17:56:35 +01:00
fm-presets.js feat(playground): per-engine param presets for additive + FM (meml-ax4) 2026-04-03 18:26:12 +01:00
midi-input.js fix(playground): decouple MIDIInput from C15Bridge — use SynthEngine interface (meml-se4) 2026-04-03 18:20:29 +01:00
modular-engine.js fix(modular): register worklet via concatenated blob url 2026-04-11 08:33:29 +02:00
modular-presets.js feat(playground): add Modular audio mode with shared mod pool 2026-04-11 07:34:41 +02:00
osc-output.js feat(playground): add OSC output bridge for external synth control 2026-03-25 11:55:58 +02:00
param-map.js feat(playground): add synth parameter tooltips, group drawer with per-param curve/mute controls 2026-03-22 21:57:21 +02:00
presets.js feat(playground): add tiered synth parameter preset system 2026-03-23 00:50:56 +02:00