Audio sample deconstruction + recreation assistant for HALion and other synths.
Prerequisite: Node.js 20+.
Run all main services together:
npm run start:all
- Install dependencies:
npm install - Create
.env.local(optional for browser-direct mode):VITE_GEMINI_API_KEY=...VITE_OPENAI_API_KEY=...VITE_ANALYZE_API_URL=http://localhost:8787/api/analyze(optional, recommended)VITE_CONTROL_API_URL=http://localhost:8790(for remote recreation control)
- Start app:
npm run dev
Running analysis through a backend keeps provider API keys off the browser and allows future heavier DSP processing.
- Set server env vars:
GEMINI_API_KEY=...and/orOPENAI_API_KEY=...PORT=8787(optional)
- Start server:
npm run analyze-server - In app Settings, set
Analyze API URLto your endpoint (for local:http://localhost:8787/api/analyze).
- Start control backend:
npm run control-server - Start local agent (same or another terminal):
npm run agent- Agent is intentionally not part of
start:allbecause pairing code/device setup may vary per machine.
- Agent is intentionally not part of
- Open an analysis result and use the Remote HALion Recreation Loop panel:
- Register device to get pairing code.
- Launch agent with that pairing code:
- PowerShell example:
$env:PAIRING_CODE="ABC123"; npm run agent
- PowerShell example:
- Select online device, run loop, monitor similarity chart, export best script/preset.
- The app now adds richer DSP constraints (pitch stability, flatness, transient density, attack/release, spectral spread/rolloff) before prompting AI.
- Perfect 1:1 recreation is still not guaranteed, especially for heavily layered or post-processed sounds.
- For best results, analyze short isolated notes/hits and then iterate with user context for each region.
- V1 architecture for remote control + iterative recreation loop:
docs/remote-halion-v1.md
