Stemmy's Windows .bat launchers are intentionally excluded from Git history and matched by *.bat in .gitignore. The complete Windows release ZIP contains ready-to-run copies. This guide documents what every launcher does and links to its exact inert plain-text source so a GitHub clone can recreate it locally.
Do not commit recreated .bat files. They belong only in local working folders and packaged release assets.
- Extract the complete Stemmy v1.5 Windows ZIP into a writable folder.
- Run
install_all.bat. - Launch Stemmy from the desktop shortcut created by the installer.
- Clone or download the repository.
- Open the launcher source links below.
- Save each source using the filename in the first column, removing only the final
.txtextension. - Save with Windows CRLF line endings.
- Run
install_all.bat.
setup.bat is a convenience alias for the same installer.
The files under docs/launchers/ are plain-text documentation, not executable BAT files.
| Recreate locally as | Exact source | Purpose |
|---|---|---|
install_all.bat |
docs/launchers/install_all.bat.txt |
Complete install and dependency repair |
setup.bat |
docs/launchers/setup.bat.txt |
Alias for the complete installer |
Repair Stemmy Installation.bat |
docs/launchers/Repair Stemmy Installation.bat.txt |
Upgrade and repair entry point |
run.bat |
docs/launchers/run.bat.txt |
Hidden server plus maximized app window |
stop.bat |
docs/launchers/stop.bat.txt |
Emergency shutdown |
Create Stemmy Shortcut.bat |
docs/launchers/Create Stemmy Shortcut.bat.txt |
Recreates the desktop shortcut |
Check Background GPU Fix.bat |
docs/launchers/Check Background GPU Fix.bat.txt |
Verifies high-priority/high-QoS handling |
get_msst.bat |
docs/launchers/get_msst.bat.txt |
Downloads optional Extended MSST support |
The PowerShell, VBS, Python, icon, and application files referenced by these launchers remain tracked. Only executable .bat files are excluded by policy.
- Close Stemmy.
- Replace the source files with the newer release.
- Keep
projects/,karaoke_jobs/, andmodels_cache/when preserving work or downloaded models. - Run
Repair Stemmy Installation.batfrom the Windows package or recreate it from the documented source above. - Start from the refreshed desktop shortcut.
The installer repairs the existing .venv whenever possible. Delete .venv only when intentionally rebuilding the Python environment.
- Complete Stemmy source exists before installation starts.
- Python 3.10–3.13 is used, preferring Python 3.12.
.venvis created or repaired with pip, wheel, andsetuptools<82.- Core Flask, separation, analysis, YouTube, and FFmpeg dependencies install correctly.
- ShazamIO imports successfully.
- The tested CUDA stack is present: PyTorch 2.11.0, TorchVision 0.26.0, and TorchAudio 2.11.0 from CUDA 12.8.
- Only TorchVision is repaired when Torch and TorchAudio are already correct, avoiding another multi-gigabyte Torch download.
- Basic Pitch uses Stemmy's bundled ONNX model without TensorFlow dependencies or a CPU
onnxruntimeoverwrite. - The real Flask application startup/import check passes.
- Background GPU protection is active.
- The desktop shortcut is created only after fatal core checks pass.
CoreML, TFLite, and TensorFlow warnings are harmless when the final ONNX model test passes.
py -3.12 -m venv .venv
call .venv\Scripts\activate.bat
python -m pip install --upgrade pip wheel "setuptools<82"
python -m pip install -r requirements.txt
python -m pip install shazamio "pretty_midi>=0.2.9" "resampy>=0.4,<0.5" "mir_eval>=0.6" "importlib-resources>=5"
python -m pip install --force-reinstall --no-deps "basic-pitch==0.4.0"
python -m pip install --force-reinstall --no-cache-dir "torch==2.11.0" "torchvision==0.26.0" "torchaudio==2.11.0" --index-url https://download.pytorch.org/whl/cu128
python run_stemmy.pyOpen http://127.0.0.1:5002. Other GPU generations may need a different CUDA package index.
The v1.5 launcher starts Python hidden and detached, writes output to logs/, applies high-priority/high-QoS handling to Stemmy and relevant Python child processes, and opens a maximized dedicated Edge/Chrome app window.
Normal shutdown options are closing the dedicated app window, choosing Settings → Close Stemmy, or using locally recreated stop.bat as an emergency fallback.
Recreate and run get_msst.bat only after the main installer succeeds. It downloads ZFTurbo's MSST inference code and a roughly 2 GB 53-stem checkpoint under models_cache/. Quick, Standard, and Deep do not require it.
| File | Contents |
|---|---|
logs/stemmy.log |
Normal server output |
logs/stemmy-error.log |
Python and Flask errors |
logs/stemmy-performance.log |
Windows performance-policy activity |
logs/stemmy-lyrics.log |
Shazam and lyric-provider details |
logs/stemmy-update.log |
Package update and rollback output |
Check logs/stemmy-error.log when Stemmy does not open. For CUDA verification:
call .venv\Scripts\activate.bat
python -c "import torch; print(torch.__version__, torch.cuda.is_available(), torch.cuda.get_device_name(0) if torch.cuda.is_available() else 'CPU')"For the tested RTX 5060 setup, this should report PyTorch 2.11.0+cu128, CUDA True, and the NVIDIA GPU name.
When GPU use falls after minimizing, launch through the v1.5 shortcut or recreated run.bat, review logs/stemmy-performance.log, and recreate/run Check Background GPU Fix.bat.
When MIDI/Tab is unavailable, recreate/run Repair Stemmy Installation.bat. A successful check reports MIDI / Tab ONNX runtime ready and lists CUDA among ONNX providers.
For YouTube 403 errors, open Settings → Updates, update yt-dlp, restart Stemmy, and use Retry failed in Karaoke.
Stemmy binds to 127.0.0.1 for local single-user use. Do not expose the Flask development server directly to the public internet.