From 0edede106aaf44194c53348658991ccd9391af44 Mon Sep 17 00:00:00 2001 From: Aria Date: Mon, 29 Dec 2025 13:28:26 -0600 Subject: [PATCH] Fixes for zzfx and soundfonts --- packages/superdough/modulators.mjs | 6 +++++- packages/superdough/zzfx.mjs | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/superdough/modulators.mjs b/packages/superdough/modulators.mjs index 32ebae265..96c68d4bf 100644 --- a/packages/superdough/modulators.mjs +++ b/packages/superdough/modulators.mjs @@ -19,7 +19,11 @@ const getNodeParam = (node, name) => { } } // Built-in node case - const p = node?.[name]; + let p = node?.[name]; + if (p === undefined && name === 'frequency') { + // Fallbacks for source nodes without 'frequency' params (e.g. soundfonts) + p = node?.['detune'] ?? node?.['playbackRate']; + } if (p instanceof AudioParam) { return p; } diff --git a/packages/superdough/zzfx.mjs b/packages/superdough/zzfx.mjs index f3dc710b1..3d6b8e9f5 100644 --- a/packages/superdough/zzfx.mjs +++ b/packages/superdough/zzfx.mjs @@ -75,7 +75,6 @@ export const getZZFX = (value, t) => { source.start(t); return { node: source, - nodes: { source: [source] }, }; }; @@ -91,6 +90,7 @@ export function registerZZFXSounds() { }); return { node: o, + nodes: { source: [o] }, stop: () => {}, }; },