Merge pS-ga-stereo: pin stereo bus (kills dual-mono hard-right pan) + auto-default channel mode from capture (v9)

This commit is contained in:
2026-07-28 07:00:14 -04:00
8 changed files with 267 additions and 80 deletions
+5 -4
View File
@@ -76,10 +76,11 @@ std::vector<std::uint8_t> buildVstPresetBytes(
std::vector<std::uint8_t> instrumentDropStateBytes(const std::string& sampleId) {
// The ONE fact the drop carries: this capture is the instance's selection. Everything
// else stays at the fresh-instance defaults (no zones, mono, generation 0) — the same
// ComponentState a browser click would produce. serializeComponentState is the
// instrument's own writer (the single source of truth for the byte layout), so this is
// NOT a parallel encoder — it IS the instrument's encoder.
// else stays at the fresh-instance defaults (no zones, implicit channel mode, generation
// 0) — the same ComponentState a browser click would produce. The implicit mode means
// the GA auto-default will follow the loaded capture's channel count on first reload.
// serializeComponentState is the instrument's own writer (the single source of truth for
// the byte layout), so this is NOT a parallel encoder — it IS the instrument's encoder.
ComponentState cs;
cs.selectionId = sampleId;
return serializeComponentState(cs);