Waveform region picker
Drag a ten-second window; that is your style reference.
02 — Open source · AI music/Live
The second studio. HeartLib had reference-audio conditioning that nobody had built a face for, so I built one around the waveform.
Role
Design, frontend, backend, Docker
Year
2026
Stack
A Suno-shaped studio for HeartLib — the MuQ, MuLan and HeartCodec stack. Full songs with vocals, instrumental mode, style tags for genre and mood and tempo, seed control when you want the same take twice, and a queue that chews through a batch while you write the next prompt.
This is the piece I care about. You drop in a track, the waveform renders, and you drag a ten-second region over the part that has the feel you want. That region conditions the generation. It turns a vague prompt into a decision you make with your ears.
Lyrics come from whatever LLM you have: Ollama locally, or OpenRouter if you would rather spend a few cents than VRAM.
Clone and run start.sh, or pull the container. Images are published to Docker Hub as ambsd/heartmula-studio:latest and to GHCR as ghcr.io/fspecii/heartmula-studio:latest, so docker compose up is the whole install.
Ten gigabytes of VRAM is the floor, twelve is comfortable. That was the design constraint the whole way through — it had to run on a card people already own.
What is in it
Drag a ten-second window; that is your style reference.
Reproduce an exact generation.
Batch generations run in sequence, streamed over SSE.
Ollama or OpenRouter, your call.