Thanks for giving yabridge a shot!
Problem description
When selecting tracks with a bridged VSTi / VST3i, reaper UI lags by ~200ms. This issue is not present when a non-VSTi / VST3i track is selected.
What did you expect to happen?
UI should not lag.
What actually happened?
REAPER queries getMidiControllerAssignment for all 128 CCs × 16 channels = 2,048 calls synchronously on the UI thread when selecting any bridged VSTi track
Each call = one IPC round-trip, causing cumulative ~200ms UI lag
Confirmed via strace: 1379 FUTEX_LOCK_PI acquisitions on VSTi selection vs 350 on FX track selection
-Does not occur with native Linux VST3 instruments (no IPC overhead)
-Does not occur with bridged FX plugins with many more CC parameters, i.e. Pro-Q 4 (since those queries happen on audio thread)
-Reproducible on blank project with single bridged VSTi, zero other plugins
Operating system
Ubuntu Studio 26.04
How did you install yabridge?
manually from latest source
yabridge version
yabridge 5.1.1
yabridgectl version
yabridgectl 5.1.1
Wine version
wine staging 11.9
Plugin
any VSTi / VST3i, in this case using Odeholm Avalanche Bass as example
Plugin type
VST3
Plugin architecture
64-bit
Host
REAPER v7.73
Desktop environment or WM
No response
GPU model
No response
GPU drivers and kernel
No response
Debug log
yabridge.log
Anything else?
truncated debug log, as [Avalanche Bass-15HNTXZp] [host -> plugin] >> 1: IEditController::getParamNormalized(id etc repeats thousands of times in the interim
Requested fix: batch getMidiControllerAssignment queries the same way getParameterInfo was batched
Thanks for giving yabridge a shot!
Problem description
When selecting tracks with a bridged VSTi / VST3i, reaper UI lags by ~200ms. This issue is not present when a non-VSTi / VST3i track is selected.
What did you expect to happen?
UI should not lag.
What actually happened?
REAPER queries getMidiControllerAssignment for all 128 CCs × 16 channels = 2,048 calls synchronously on the UI thread when selecting any bridged VSTi track
Each call = one IPC round-trip, causing cumulative ~200ms UI lag
Confirmed via strace: 1379 FUTEX_LOCK_PI acquisitions on VSTi selection vs 350 on FX track selection
-Does not occur with native Linux VST3 instruments (no IPC overhead)
-Does not occur with bridged FX plugins with many more CC parameters, i.e. Pro-Q 4 (since those queries happen on audio thread)
-Reproducible on blank project with single bridged VSTi, zero other plugins
Operating system
Ubuntu Studio 26.04
How did you install yabridge?
manually from latest source
yabridge version
yabridge 5.1.1
yabridgectl version
yabridgectl 5.1.1
Wine version
wine staging 11.9
Plugin
any VSTi / VST3i, in this case using Odeholm Avalanche Bass as example
Plugin type
VST3
Plugin architecture
64-bit
Host
REAPER v7.73
Desktop environment or WM
No response
GPU model
No response
GPU drivers and kernel
No response
Debug log
yabridge.log
Anything else?
truncated debug log, as [Avalanche Bass-15HNTXZp] [host -> plugin] >> 1: IEditController::getParamNormalized(id etc repeats thousands of times in the interim
Requested fix: batch getMidiControllerAssignment queries the same way getParameterInfo was batched