5ad2c681e7
Drop Carla integration across frontend and backend: - plugins.py: remove /carla-midi, /carla-status, /carla-stop, /open-in-carla, /carla-play-notes endpoints and Carla process management - runtime.py: remove find_carla / _carla_* helpers, detect and capabilities - app.jsx: remove Carla bridge UI, SonicCarlaMidi routing, shouldRouteCarla guards, VST row Carla button and preset fallback - system.py: remove /carla-path - Keep audio path unchanged (tracks -> masterBus -> output -> analyser), directOut only for offline render Build frontend, tests pass (124 passed).
20 lines
824 B
Python
20 lines
824 B
Python
# SonicForge System API — capabilities: frontend gọi 1 lần lúc boot để biết
|
|
# môi trường (desktop Windows / docker headless) và bật/tắt tính năng tương ứng.
|
|
from fastapi import APIRouter
|
|
from app.core.runtime import capabilities
|
|
|
|
router = APIRouter()
|
|
|
|
|
|
@router.get("/capabilities")
|
|
async def get_capabilities():
|
|
"""Khả năng của môi trường hiện tại (public — cần trước khi đăng nhập).
|
|
|
|
- runtime: "desktop" (server + client cùng 1 máy Windows/macOS) |
|
|
"headless" (docker server + browser UI)
|
|
- features.preset_upload: luôn True (upload .vstpreset qua web UI)
|
|
- features.preview_mode: "quick_render" (pedalboard render clip ngắn —
|
|
âm thật giống export) | "wasm" (Preview Synth trong browser)
|
|
"""
|
|
return capabilities()
|