https://github.com/voicepaw/so-vits-svc-fork
GitHub - voicepaw/so-vits-svc-fork: so-vits-svc fork with realtime support, improved interface and more features.
so-vits-svc fork with realtime support, improved interface and more features. - voicepaw/so-vits-svc-fork
github.com
본 문서는 so-vits-svc-fork 음성 변환 프로젝트를 Windows 환경에서 실행하기 위한 전체 절차를 다룹니다. 특히 기존 버전(v4.1.59)에서 작업 중인 사용자가 최신 버전(v4.2.26)으로 전환 시 겪게 되는 실행 방식의 변화와 그에 따른 명령어 구조의 차이를 중점적으로 설명합니다.
1. 필수 환경 조건
- 운영체제: Windows 10 이상
- Python 3.10 (Anaconda 환경 권장)
- CUDA 11.8 이상 설치 및 GPU 사용 가능
- Visual Studio Build Tools 사전 설치
- 프로젝트 저장 위치: 예시 기준 D:\Project\svc
2. 가상환경 생성 및 필수 패키지 설치
conda create -n svc python=3.10 -y
conda activate svc
conda install pytorch=2.1.0 torchvision=0.16.0 torchaudio=2.1.0 pytorch-cuda=11.8 -c pytorch -c nvidia
pip install -r requirements.txt
pip install -e .
pip install -e .은 현재 디렉토리를 모듈로 인식시키는 명령입니다. 반드시 so_vits_svc_fork 디렉토리를 포함한 루트 폴더에서 실행해야 합니다.
3. 디렉토리 구성 예시
D:\Project\svc\
├── dataset_raw\
├── dataset\44k\
├── filelists\44k\
├── configs\44k\
│ └── config.json
├── logs\44k\
└── path\to\
├── input_folder\
└── output_folder\
- input_folder: 변환 대상 음성이 저장된 폴더
- output_folder: 변환된 음성이 저장될 위치
4. PowerShell 실행 환경 설정
Windows PowerShell에서 PYTHONPATH 설정은 다음과 같이 수행합니다.
$env:PYTHONPATH = "D:\Project\svc"
모든 명령어는 이 설정 이후에 실행되어야 합니다.
5. 버전별 명령어 차이 정리
v4.2.26 이후 구조 (CLI 기반)
v4.2.26부터는 명령어가 CLI 구조로 통합되었으며, 다음과 같이 간단히 사용할 수 있습니다.
리샘플링
python -m so_vits_svc_fork pre-resample `
-i D:\Project\svc\dataset_raw `
-o D:\Project\svc\dataset\44k `
-s 44100 `
-n 4 `
-d 40 `
-f 1.5 `
-ho 0.5
- 입력 폴더: dataset_raw
- 출력 폴더: dataset\44k
- 샘플링 레이트: 44100Hz
- 병렬 처리 수: 4개 CPU 코어
- 자동 트리밍 기준: -40dB 이하 제거
- 프레임당 분할 길이: 1.5초
- 프레임 간격: 0.5초 간격으로 오버랩 처리
config.json 생성
python -m so_vits_svc_fork pre-config `
-i D:\Project\svc\dataset\44k `
-f D:\Project\svc\filelists\44k `
-c D:\Project\svc\configs\44k\config.json `
-t so-vits-svc-4.0v1
HuBERT 특성 추출
python -m so_vits_svc_fork pre-hubert `
-i D:\Project\svc\dataset\44k `
-c D:\Project\svc\configs\44k\config.json `
-fm crepe
모델 학습 시작
$env:CUDA_VISIBLE_DEVICES = "0"
python -m so_vits_svc_fork train `
-c D:\Project\svc\configs\44k\config.json
CUDA_VISIBLE_DEVICES는 사용할 GPU를 지정하는 환경 변수입니다.
전체 폴더 음성 변환
python -m so_vits_svc_fork infer path\to\input_folder `
-o path\to\output_folder `
-c configs\44k\config.json `
-m logs\44k\G_100.pth `
-s 1799FA4431 `
-fm crepe `
--recursive
6. 버전 확인 및 다운그레이드 방법
현재 버전 확인:
python -m so_vits_svc_fork -h
v4.2.26 이상일 경우, CLI 명령 목록이 함께 출력됩니다. v4.1.59로 복원하려면 아래와 같이 Git을 사용합니다.
cd D:\Project\svc
git checkout v4.1.59
또는 GitHub의 release 페이지에서 직접 다운로드 후 덮어쓰기 하실 수 있습니다.
7. 주의사항
- PowerShell 줄바꿈은 백틱(`)으로 처리합니다. 백슬래시(\)를 사용할 경우 명령이 실패합니다.
- PYTHONPATH 설정은 항상 프로젝트 루트 디렉토리를 가리켜야 하며, 설정하지 않으면 모듈 인식이 실패합니다.
- pip 설치 시 PyTorch 등의 라이브러리가 자동으로 교체될 수 있으므로, 항상 conda를 통한 설치를 우선 고려해야 합니다.
- -s 옵션의 화자 ID는 config.json 내 화자 이름과 일치해야 하며, 일치하지 않을 경우 변환이 정상적으로 수행되지 않습니다.
8. 결론
so-vits-svc-fork는 빠르게 구조가 변화하는 오픈소스 프로젝트로서, 버전별 명령어와 디렉토리 요구사항을 정확히 이해하고 있어야 안정적인 실행이 가능합니다. 특히 Windows 환경에서는 경로 처리, 환경 변수 설정, PowerShell 문법 등에서 사소한 실수가 전체 파이프라인에 영향을 줄 수 있으므로, 각 단계마다 로그와 출력을 면밀히 확인하며 진행하는 것이 중요합니다.
정확한 버전 파악, 패키지 호환성 유지, 환경 변수 설정을 일관되게 관리하는 것이 Windows 기반 음성 변환 파이프라인을 안정적으로 운영하는 핵심입니다.
필요하신 경우, 학습 자동화 스크립트, GUI 실행 방법, 실시간 음성 변환(vc) 구성 방법까지 이어서 안내드릴 수 있습니다.
'Artificial Intelligence > so-vits-svc-fork' 카테고리의 다른 글
| Windows 환경에서 so-vits-svc-fork 설치 및 실행 방법 정리 (v4.1.59 기준) (0) | 2025.05.16 |
|---|---|
| so-vits-svc-fork로 음성 변환 모델 학습하기 (실전 로그 정리 v4.1.59) (0) | 2025.04.07 |
| 리눅스 환경에서 so-vits-svc-fork 설치 및 실행 방법 정리 (v4.1.59 기준) (0) | 2025.04.01 |