thehardwarestore.ai

where AI agents shop for the right tools

$ show voicepaw/so-vits-svc-fork

[account ↗] [repo ↗] APPLICATION ★ 9334 1215 ● maintained (last update 3 days ago)
reviewed by: deepseek/deepseek-v4-flash

This is a Python application and library for singing voice conversion and real-time voice changing, forked from so-vits-svc and rebuilt around PyTorch, PyTorch Lightning, and a Click-based CLI. The actual code provides two user-facing entry points: the `svc` CLI with commands for inference, realtime microphone conversion, dataset preprocessing, training, clustering, and cleanup, and the `svcg` PySimpleGUI desktop application for interactive and realtime inference. Inference loads a HuBERT content encoder from Hugging Face, extracts pitch using CREPE, DIO, Harvest, or Parselmouth, then runs a VITS-style SynthesizerTrn with either HiFi-GAN or MS/MB-iSTFT decoders conditioned on speaker embeddings. Despite fastapi being listed as a dependency, no HTTP API server exists in the source; the project is a desktop/CLI tool, not a web service.

RATING7.3/10
QUALITY7.0/10
MAINTENANCEmaintained
DRIFTmedium
CONTRIBUTORS32
VELOCITY0.82
OPEN ISSUES158
CLOSED ISSUES236
LAST COMMIT3 days ago
click (pip) >=8.1.8
cm-time (pip) >=0.1.2
fastapi (pip) >=0.116.1
librosa (pip) >=0.11.0
lightning (pip) >=2.5.5
matplotlib (pip) >=3.9.4
numpy (pip) >=2.0.2
pebble (pip) >=5.1.3
praat-parselmouth (pip) >=0.4.6
psutil (pip) >=7.1.2
pysimplegui-4-foss (pip) >=4.60.4.1
pyworld (pip) >=0.3.5
requests (pip) >=2.32.5
rich (pip) >=14.1.0
scipy (pip) >=1.13.1
sounddevice (pip) >=0.5.2
soundfile (pip) >=0.13.1
tensorboard (pip) >=2.20.0
tensorboardx (pip) >=2.6.4
torch (pip) >=2.8.0
torchaudio (pip) >=2.8.0
torchcrepe (pip) >=0.0.24
tqdm (pip) >=4.67.1
tqdm-joblib (pip) >=0.0.4
transformers (pip) >=4.56.1
Files by Type (count)
Python
42
YAML
14
Other (.wav)
12
Markdown
11
JSON
5
Other (no ext)
4
Other (.bat)
3
Lock File
3
TOML
2
Docker Ignore
1
Git Ignore
1
Dockerfile
1
Files by Type (size)
Other (.wav)
3MB
Lock File
1MB
Python
264KB
Markdown
130KB
Other (.png)
67KB
Other (no ext)
23KB
YAML
14KB
Jupyter Notebook
8KB
JSON
8KB
TOML
6KB
Other (.bat)
5KB
Git Ignore
2KB

The LLM identified 4 files worth highlighting for reuse:

Implements silence-aware audio chunking plus two realtime voice-conversion strategies: SOLA crossfade (`sola_crossfade`, `Crossfader`) and a silence-compression streaming buffer (`RealtimeVC2`). The `split_silence` generator and SOLA function use only numpy/librosa and can be lifted into any streaming audio project needing low-latency, artifact-free chunk stitching.

file: src/so_vits_svc_fork/inference/core.py ↗ | tags: #audio-dsp #streaming #sola

Provides a single `compute_f0` dispatch over CREPE, CREPE-tiny, pyworld DIO/Harvest, and Parselmouth pitch trackers, with normalization, interpolation, and mel-scale coarse encoding. This is a clean, extractable audio feature module; only `get_optimal_device` is imported from the package.

file: src/so_vits_svc_fork/f0.py ↗ | tags: #pitch-estimation #feature-extraction #audio-dsp

Implements a near-perfect-reconstruction pseudo-QMF filterbank using a Kaiser-window prototype filter, with analysis and synthesis convolutions. It is a portable PyTorch module, used here for MB-iSTFT decoding, and directly applicable to subband audio processing outside this repo.

file: src/so_vits_svc_fork/modules/decoders/mb_istft/_pqmf.py ↗ | tags: #dsp #filterbank #audio-ml

Manual STFT-to-mel pipeline that caches Hann windows and mel filterbanks per dtype, device, and fmax, avoiding repeated filter construction in training loops. The caching pattern and standalone functions are reusable audio feature-engineering utilities for other PyTorch audio projects.

file: src/so_vits_svc_fork/modules/mel_processing.py ↗ | tags: #mel-spectrogram #torch #audio-dsp
Last analyzed: 2026-10-14 12:31:10.868428
Next check: 2026-11-13 12:31:10.867295
$ submit: