Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
bitwig.hpp File Reference

Per-host quirks for Bitwig Studio (macOS plan item 5.5). More...

Go to the source code of this file.

Namespaces

namespace  pulp
namespace  pulp::format
 What the product grants a device: the quota table indexed by capability tier and live thermal state.
namespace  pulp::format::host_quirks

Functions

void pulp::format::host_quirks::apply_bitwig (HostQuirks &q, HostVersion v)
 Populate Bitwig host-gated flags onto q based on v.

Detailed Description

Per-host quirks for Bitwig Studio (macOS plan item 5.5).

DAW-quirks rows 8 + 9 (VST3):

  • row 8: on Linux / BSD, Bitwig does not auto-invalidate after a host-initiated editor resize. The adapter must force a full-view View::invalidate() after IPlugView::onSize() returns so the plugin's UI actually repaints. No-op off Linux — the flag is set unconditionally because the Linux VST3 adapter is the only call site that consults it.
  • row 9: older Bitwig versions (< 6.0) call setBusArrangements() while the plugin is active, in violation of the VST3 spec. The adapter must treat that call as advisory — either silently ignore when the new arrangement matches the current one, or transparently deactivate / reconfigure / reactivate. Modern Bitwig (6.0+) honors the spec, so the workaround stays off there.

Version handling: row 8 is platform-keyed (Linux), not version-keyed, so it fires unconditionally and the adapter no-ops off Linux. Row 9 only fires on major < 6.0. HostVersion{0,0,0} (unknown) is treated as legacy — the conservative workaround stays on so a misdetected older Bitwig still survives.

Reference-Lineage: independent reproducer=macos-plan-item-5.5 docs=https://www.bitwig.com/userguide/latest/