Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d072cdaa07 | ||
|
|
79691b81c6 | ||
|
|
ff71bd5777 |
No files matched your search
@@ -25,3 +25,11 @@ outputs/
|
||||
.DS_Store
|
||||
.idea/
|
||||
.vscode/
|
||||
|
||||
# Full-size source video — keep locally, commit only compressed derivatives
|
||||
media-files/video/*.mp4
|
||||
!media-files/video/*-480p.mp4
|
||||
|
||||
# Compressed exports of demucs stems — keep committed for review without
|
||||
# local playback (the raw separated/*.wav stems stay local, per *.wav above)
|
||||
!demucs/*.mp3
|
||||
@@ -13,3 +13,15 @@ Each subdirectory has its own README with setup and run instructions.
|
||||
## Requirements
|
||||
|
||||
Some demos are GPU-accelerated and are best run on a CUDA-capable machine (e.g. an RTX 3090).
|
||||
|
||||
## Planned: full audio-translation demo
|
||||
|
||||
Chain the three demos together on `media-files/` into an end-to-end pipeline:
|
||||
|
||||
1. `demucs` — separate the source clip into vocals / instrumental stems
|
||||
2. `whisperx` — transcribe the isolated vocal stem, then machine-translate the transcript
|
||||
3. `tts` — clone the original speaker's voice (from the isolated vocal stem) and synthesize
|
||||
the translated text in that voice, then remix with the original instrumental stem
|
||||
|
||||
Stem separation and transcription are already working end to end (see `demucs/README.md` and
|
||||
`whisperx/README.md`); translation and voice-cloning TTS are not yet implemented.
|
||||
@@ -1,3 +1,30 @@
|
||||
# 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/`.
|
||||
|
||||
Full-length MP3 versions (128kbps, ~10MB each) are committed as `vocals.mp3` and
|
||||
`no_vocals.mp3` in this directory so both stems are reviewable directly from Gitea without
|
||||
needing local playback or GPU-box access.
|
||||
|
||||
**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).
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in new issue
Block a user