Skip to content

fix(plugins): step VST3 stepped params by 1/stepCount instead of 1 (#49) - #56

Merged
Horuse merged 2 commits into
mainfrom
fix/vst3-float-params
Sep 27, 2026
Merged

Horuse merged 2 commits into
mainfrom
fix/vst3-float-params

Conversation

@Horuse

@Horuse Horuse commented Sep 26, 2026 •

Copy link
Copy Markdown
Owner

What does this PR do?

VST3 params with stepCount > 0 showed only 0/1: VST3 ranges are normalised 0..1, but the slider used step = 1 for stepped params. stepped: bool is replaced by step: f64 (VST3: 1 / stepCount, CLAP/AU: 1, continuous: 0).

Why is this the right approach?

Only the backend knows the step count. Converting VST3 params to plain units instead would touch every write path.

Checklist

  • Diff is limited to the change — no unrelated edits
  • bun run check passes
  • cargo check --manifest-path src-tauri/Cargo.toml passes
  • bun run format leaves the tree clean
  • Generated TS types are committed with the Rust change (if any) — n/a
  • No new dependency without a reason in the PR description
  • I read the RT audio path section of docs/CONCEPT.md and confirmed this change adds no allocations, locks, or syscalls to cpal / SCK callbacks or DspWorker::run

Platform coverage

  • Developed on: macOS 14
  • Tested on: macOS 14, Fedora 44, Windows 11
  • What I did to test: Tested Fabfilter Pro-MB and other vst3 plugins

au_host.rs (macOS only): field rename, behaviour unchanged.

Related

@Horuse
Horuse merged commit e3dbcdb into main Sep 27, 2026
9 checks passed
@Horuse
Horuse deleted the fix/vst3-float-params branch September 27, 2026 16:03
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.

[bug] Parameters of certain VST3 plugins are listed as binary rather than floating point in plugin node

1 participant