FEAT: cài đặt các thư viện để chuẩn bị build exe trên window

This commit is contained in:
2026-08-08 08:46:15 +07:00
parent 9ef622f29a
commit 029ed1c456
24 changed files with 575 additions and 13 deletions
+16 -2
View File
@@ -216,6 +216,19 @@ class PluginManager:
def load_vst(self, plugin_name: str, preset_data: dict = None):
if not HAS_PEDALBOARD:
return None
# Ưu tiên PATH trực tiếp (spec desktop 2026-08-08: synth_engine.plugin_path)
if plugin_name and (plugin_name.endswith(".vst3") or plugin_name.endswith(".so")
or plugin_name.endswith(".component") or "/" in plugin_name or "\\" in plugin_name):
if os.path.exists(plugin_name):
vst = VST3Plugin(plugin_name)
if preset_data:
for k, v in preset_data.items():
try:
setattr(vst, k, v)
except Exception:
pass
return vst
return None
plugins = self._scan_plugins()
if plugin_name not in plugins:
return None
@@ -305,8 +318,9 @@ class PluginManager:
def list_available(self) -> dict:
return {
"vst_instruments": [
{"id": k, "name": k, "type": "VST3", "has_native_support": HAS_PEDALBOARD}
for k in self._scan_plugins().keys()
{"id": "vst3_" + k.lower().replace(" ", "_"), "name": k, "type": "VST3",
"path": p, "has_native_support": HAS_PEDALBOARD}
for k, p in self._scan_plugins().items()
],
"soundfonts": self._scan_soundfonts()
}