Files
steve-adminandClaude Sonnet 5 79691b81c6 Add demucs stem-separation demo; sketch audio-translation pipeline
Two-stem separation (vocals/instrumental) run on RTX 3090 against the
shared sample clip. Isolated vocals.wav is meant as the clean voice
reference for a future voice-cloning TTS step.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Y1oQ4h4WE4R9KRvMQLr5Ey
2026-09-12 16:56:25 +00:00

27 lines
1.1 KiB
Markdown

# demucs
Source separation demos using [Demucs](https://github.com/facebookresearch/demucs) — splitting audio into stems (vocals, drums, bass, other).
## Demo run
Ran two-stem separation (vocals vs. everything else) on an RTX 3090 against
`media-files/audio/service-mbrs-ntscrm-01840194-01840194.m4a`:
```
python3 -m demucs --two-stems=vocals -n htdemucs \
-o separated \
../media-files/audio/service-mbrs-ntscrm-01840194-01840194.m4a
```
Took ~12s for 11 minutes of audio. Outputs `vocals.wav` and `no_vocals.wav` (44.1kHz stereo PCM,
duration matches source) under `separated/htdemucs/<track-name>/` — gitignored, left on the GPU
box at `/root/projects/audio-demo/repo/demucs/separated/`.
**Known gotcha:** demucs 4.1.0's package metadata doesn't declare `numpy` as a dependency even
though `demucs/transformer.py` imports it directly — `pip install demucs` alone leaves the env
broken (`ModuleNotFoundError: No module named 'numpy'` at runtime). Install `numpy` explicitly
alongside it.
The isolated `vocals.wav` is intended as the clean reference/source audio for a voice-cloning TTS
step (see top-level README for the planned audio-translation pipeline).