diff --git a/packages/soundfonts/fontloader.mjs b/packages/soundfonts/fontloader.mjs index 4be29fa1..1a3395d5 100644 --- a/packages/soundfonts/fontloader.mjs +++ b/packages/soundfonts/fontloader.mjs @@ -159,9 +159,7 @@ export function registerSoundfonts() { // vibrato let vibratoOscillator = getVibratoOscillator(bufferSource.detune, value, time); // pitch envelope - if (value.penv) { - getPitchEnvelope(bufferSource.detune, value, time, holdEnd); - } + getPitchEnvelope(bufferSource.detune, value, time, holdEnd); bufferSource.stop(envEnd); const stop = (releaseTime) => {}; diff --git a/packages/superdough/sampler.mjs b/packages/superdough/sampler.mjs index 67ee06c0..19fec661 100644 --- a/packages/superdough/sampler.mjs +++ b/packages/superdough/sampler.mjs @@ -299,9 +299,7 @@ export async function onTriggerSample(t, value, onended, bank, resolveUrl) { getParamADSR(node.gain, attack, decay, sustain, release, 0, 1, t, holdEnd, 'linear'); // pitch envelope - if (value.penv) { - getPitchEnvelope(bufferSource.detune, value, t, holdEnd); - } + getPitchEnvelope(bufferSource.detune, value, t, holdEnd); const out = ac.createGain(); // we need a separate gain for the cutgroups because firefox... node.connect(out); diff --git a/packages/superdough/synth.mjs b/packages/superdough/synth.mjs index 7bde4d3a..6d646862 100644 --- a/packages/superdough/synth.mjs +++ b/packages/superdough/synth.mjs @@ -182,10 +182,7 @@ export function getOscillator(s, t, value) { let vibratoOscillator = getVibratoOscillator(o.detune, value, t); // pitch envelope - if (value.penv) { - const holdEnd = t + duration; - getPitchEnvelope(o.detune, value, t, holdEnd); - } + getPitchEnvelope(o.detune, value, t, t + duration); let noiseMix; if (noise) {