How bazedfrog/songgeneration-studio works
SongGeneration Studio is a local web app for creating complete AI-generated songs. A creator configures lyrics and style in the browser, optionally uploads reference audio, and submits a generation that the API queues and the generation service sends to the persistent LeVo model server. Results feed the song library for playback and export. The README also advertises model selection, batch queueing, stem output, and cover/metadata management. Some backend wiring and UI behavior are unsampled, so uncertain links are omitted.
Main entry points: app.js Studio interface · main.py FastAPI routes · generation.py Generation workflow · levo_inference_lowmem.py LeVo inference
Components 16
Web experience
- Studio interface
web/static/app.js - Audio and song UI
web/static/components.js - Client state hooks
web/static/hooks.js - API client
web/static/api.js
API and workflow
- FastAPI routes
main.py - Generation workflow
generation.py - Timing estimates
timing.py
Music inference
- Model server
model_server.py - LeVo inference
patches/gradio/levo_inference_lowmem.py - Model builders
patches/builders.py - Audio separation
patches/demucs/apply.py
Library and outputs
- Song library
generation.py - Generated audio
main.py - Cover and video export
main.py
Other components
- Music creator
- Reference audio
Connections 18
- Music creator → Studio interface: configures songs
- Studio interface → Audio and song UI: renders controls
- Studio interface → Client state hooks: tracks state
- Studio interface → API client: requests data
- API client → FastAPI routes: calls routes
- Reference audio → FastAPI routes: uploads reference
- FastAPI routes → Generation workflow: submits work
- Generation workflow → Model server: requests generation
- Generation workflow → Timing estimates: records timing
- Model server → LeVo inference: runs inference
- LeVo inference → Model builders: builds models
- LeVo inference → Audio separation: separates audio
- Generation workflow → Song library: updates generations
- FastAPI routes → Song library: lists generations
- FastAPI routes → Generated audio: serves audio
- FastAPI routes → Cover and video export: serves exports
- Song library → Studio interface: refreshes library
- Studio interface → API client: fetches status