Web service which lets you demix stems using remote compute resources.
.vscode | ||
src | ||
.editorconfig | ||
.gitignore | ||
.python-version | ||
demucs-stems-zip.nginx.conf | ||
pyproject.toml | ||
README.md | ||
requirements-dev.lock | ||
requirements.lock |
demucs-server
Web service which lets you demix stems using remote compute resources.
Setup
$ rye sync
$ rye shell
[rye] $ cd src/
src/ [rye] $ ./dev_run.py
Architecture
- flask application mostly lives in
demucs_server.routes
- demucs / ffmpeg is run on a separate thread at
demucs_server.torch_worker
- songs are queued with
torch_worker.work_queue.put(DemucsTask(..))
- songs are processed by the thread worker and the database is written to report progress