Skip to content

Latest commit

 

History

History
64 lines (51 loc) · 1.37 KB

README.md

File metadata and controls

64 lines (51 loc) · 1.37 KB

Split Stems


High Level Architecture

step1_BPMAnalysis.py - analyzes BPM and prepends "BPM_" to a copy of the song and puts in folder /output where BPM is a number step2_KeyAnalysis.py - analyzes Key of song, maps it to Camelot Wheel Notation, and prepends "Key_" where Key = 1A, 2B, 12B, etc. Camelot Wheel

**Notes: set explorer.sortOrder to "mixed"

Prerequisites

  • Python 3.11 (recommended) or Python 3.8-3.11
  • macOS (including Apple Silicon), Linux, or Windows
brew install [email protected]

Verify the installation:

python3.11 --version  # Should show Python 3.11.x

Set Up Virtual Environment

# Create virtual environment
python3.11 -m venv .venv

# Activate virtual environment
source .venv/bin/activate  # On macOS/Linux
# OR
.venv\Scripts\activate  # On Windows

# Install dependencies
pip install -r requirements.txt
# Install drum separator
cd drumsep
bash drumsepInstall

# Install synth separator
cd ../synthsep
bash synthsepInstall

Step 4: Run the Splitter

python split_stems.py

Troubleshooting

If you need to recreate the virtual environment:

deactivate
rm -rf .venv
python3.11 -m venv .venv
source .venv/bin/activate  # On macOS/Linux
pip install -r requirements.txt

Algorithm

Based on DeepRhythm