Skip to content

Synthstrom Deluge: hold long-decay silent-sustain amplitude envelopes at the zone level#173

Merged
git-moss merged 2 commits into
git-moss:mainfrom
douglas-carmichael:deluge-pad-and-filter-envelope
Jul 8, 2026
Merged

Synthstrom Deluge: hold long-decay silent-sustain amplitude envelopes at the zone level#173
git-moss merged 2 commits into
git-moss:mainfrom
douglas-carmichael:deluge-pad-and-filter-envelope

Conversation

@douglas-carmichael

Copy link
Copy Markdown
Contributor

Problem

Several source formats fake a slow, sustaining pad with a near-silent amplitude sustain plus a very long decay — e.g. a SoundFont 2 pad whose amplitude decays over tens of seconds — relying on that long decay to keep the note audible while the key is held.

The Deluge's decay/release rate table only reaches about 5.9 seconds, so when the converted envelope keeps the silent sustain but clamps the decay to what the Deluge can represent, the note collapses to near-silence within a couple of seconds. Converted pads then play far too quietly compared to the source.

Concretely: an E-mu Orbit patch such as JUNO PHASE or HIWEED (sustain ≈ -100 dB, decay ≈ 44 s) plays at full level in the original and in TX16Wx, but was almost inaudible after conversion to the Deluge.

Fix

In DelugeCreator, when the amplitude sustain is (near) silent and the decay is longer than the Deluge can represent, write the sustain as a hold at the level implied by the zone's own attenuation (10^(gain/20)) instead of the silent sustain. The note then sustains at the source's intended level rather than dropping out. Envelopes that already sustain at an audible level, or whose decay fits within the Deluge's range, are unchanged.

This is intentionally narrow — it only rewrites the sustain value for the silent-sustain + over-long-decay case; normal envelopes take the existing envelopeSustain path untouched.

Notes

  • Scoped to the amplitude envelope only. The related filter-envelope carry-over is already handled by the filter cutoff key-tracking work merged upstream.
  • Verified against the original patches and TX16Wx on hardware: the converted JUNO PHASE / HIWEED pads now play at the correct volume on the Deluge.
  • CHANGELOG updated.

douglas-carmichael and others added 2 commits July 7, 2026 17:18
…e zone level

SoundFonts (and similar formats) often fake a slow, sustaining pad with a
near-silent sustain plus a very long amplitude decay - e.g. a pad whose
amplitude decays over tens of seconds - relying on that long decay to keep the
note audible. The Deluge's decay/release rate table only reaches about 5.9
seconds, so such an envelope collapsed to near-silence within a couple of
seconds and the converted sound played far too quietly.

When the amplitude sustain is (near) silent but the decay is longer than the
Deluge can represent, write the sustain as a hold at the level implied by the
zone's own attenuation instead, so the note sustains at the source's level
rather than dropping out.
@git-moss git-moss merged commit 40a55b1 into git-moss:main Jul 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants