refactor(bridge): split fx bridge, stabilize VST3 host chain, drop old install engines

- remove diagnostic canaries from audio hot path (crackle fix) and
  stuck C5 note raw-MIDI test (Vst2Instrument::init noteOff)
- split native bridge into daw_vst_bridge (VSTi) + fx_vst_bridge (VST FX)
- VST3: processData prepare before setActive, zero input buses, accept
  both .vstpreset and bridge-state blob in RenderJob presets
- native_render/vst_engine: bridge-exe discovery + render_fx_chain + /fx-gui
- delete old install/ engine binaries (install via sidecar+resources now)
- add BUILD_LAYOUT.md, build_selfcheck, tools/ diagnostics
This commit is contained in:
2026-08-20 09:42:42 +07:00
parent 5df96aef1e
commit 7c22ae1f02
42 changed files with 2363 additions and 210 deletions
+3 -3
View File
@@ -701,12 +701,12 @@ async def open_fx_gui(req: FxGuiRequest, current_user: dict = Depends(get_curren
(exit 0). Không spawn 2 lần cho cùng plugin đang mở (tránh trùng GUI).
"""
enforce_password_changed(current_user)
from app.core.native_render import find_bridge_exe
exe = find_bridge_exe()
from app.core.native_render import find_fx_bridge_exe
exe = find_fx_bridge_exe()
if not exe:
raise HTTPException(
status_code=409,
detail="Không tìm thấy bridge native (daw_vst_bridge.exe). "
detail="Không tìm thấy bridge native (fx_vst_bridge.exe). "
"Hãy chạy bản desktop đã build đầy đủ.",
)
plugin_path = (req.path or "").strip()