Jafz2001andClaude Opus 4.8 23047291e3 Expose sandboxed VST parameter values via kListParameters
A sandboxed (out-of-process) VST3 exposes no host-side JUCE parameter proxies,
so SignalChain::getParameters returned an empty list for it. That left the
renderer with no way to read a plugin's live values — the plugin's own editor
window could not be mirrored back into the in-app UI, and "Capture state" was a
no-op for sandboxed gear.

- vst-host/main.cpp: implement the (already-declared) op::kListParameters
  handler, replying with each parameter's index/name/value(0..1)/label/text
  from the child's live AudioProcessor.
- SandboxedProcessor::listSandboxedParameters(): blocking control-pipe
  round-trip returning the reply's params array.
- SignalChain::getParameters: resolve the slot under the audio lock, then do
  the sandboxed IPC AFTER releasing it (a blocking round-trip must not stall
  processBlock) — same discipline getStateInformation() already uses.
  In-process plugins still read their JUCE proxies directly under the lock.

Verified end-to-end against a bundled VST3: getParameters now returns live
values and setParameter -> getParameters round-trips.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-15 10:37:35 -04:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
2026-06-16 18:48:12 +02:00
S
Description
No description provided
AGPL-3.0
2.8 MiB
Languages
C++ 52%
TypeScript 18.6%
JavaScript 17.9%
Shell 7.3%
CMake 2.4%
Other 1.8%