Skip to content

DecentSampler: add source option "Create one multi-sample per group"#196

Merged
git-moss merged 3 commits into
git-moss:mainfrom
douglas-carmichael:add-decentsampler-multisample-per-group
Jul 18, 2026
Merged

DecentSampler: add source option "Create one multi-sample per group"#196
git-moss merged 3 commits into
git-moss:mainfrom
douglas-carmichael:add-decentsampler-multisample-per-group

Conversation

@douglas-carmichael

Copy link
Copy Markdown
Contributor

Stacked on #195 (contains its commit) - please merge that one first, this PR then reduces to a single commit.

Many DecentSampler libraries pack several alternative kits or articulations into one preset: each kit is a group, only one group is enabled and the preset UI switches between them by toggling the groups' ENABLED state. After #195 such a preset correctly converts to just the enabled kit - but the other kits become unreachable.

This adds an opt-in source option "Create one multi-sample per group" (CLI: DecentSamplerMultisamplePerGroup=1, off by default): every group becomes its own multi-sample named <preset name> - <group name>, and disabled groups are included as well in this mode, so every kit of such a preset ends up as its own preset. With the option off the behavior is unchanged.

Documented in README-FORMATS.md, CHANGELOG entry added.

Verified with "80s hits SSS043" (23 kit groups, 1277 samples): the option produces 23 presets whose zone counts add up to exactly 1277, each mapped and lossless; without the option the preset converts to the single enabled kit (40 zones) as before.

douglas-carmichael and others added 3 commits July 18, 2026 10:38
Disabled groups were only skipped when the attribute was written as
enabled="0". Presets in the wild write enabled="false" (e.g. drum kit
libraries which switch between several kits via a drop-down in their UI
where each kit is a group and only one is enabled). All those kits were
converted stacked on the same keys and played simultaneously.
Creates a separate multi-sample for each group instead of one
multi-sample which contains all groups. Intended for presets which
contain several alternative kits or articulations as groups and switch
between them via their user interface (only one group is enabled at a
time). Disabled groups are converted as well in this mode, so every kit
of such a preset becomes its own preset. CLI parameter:
DecentSamplerMultisamplePerGroup=1.
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