Closed9
so-vits-svcを試す
参考にするサイト
git cloneする
git clone git@github.com:svc-develop-team/so-vits-svc.git
pythonはv3.10らしい
wsl2だとこけたので、このセクションのコマンドはpowershellで動かす
venvを作って有効にする
python -m venv venv
.\venv\Scripts\Activate.ps1
pytorchを入れる
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117
残りを入れる
pip install SoundFile
pip install sounddevice
pip install requests==2.28.1
pip install onnx onnxsim onnxoptimizer
pip install scipy==1.9.3
pip install Flask==2.1.2 Flask_Cors==3.0.10
pip install playsound==1.3.0 PyAudio==0.2.12
pip install pydub==0.25.1
pip install pyworld
pip install tqdm==4.63.0
pip install scikit-maad
pip install praat-parselmouth
pip install gradio==3.9
pip install starlette==0.20.4
pip install fairseq==0.12.2
pip install tensorboard
※pip install -r requirements_win.txt
だとエラーを吐いた。
※モジュールはこちらを参照
v4なのでこちらも入れる
pip install librosa
Microsoft C++ Build Toolsがないエラーがでた
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
リンクからダウンロード&インストールする
データセットを用意する
構造
dataset_raw
├───speaker0
│ ├───xxx1-xxx1.wav
│ ├───...
│ └───Lxx-0xx8.wav
└───speaker1
├───xx2-0xxx2.wav
├───...
└───xxx7-xxx007.wav
トレーニングデータはつくよみちゃんコーパス Vol.1を使う
※クレジット表記必要:つくよみちゃんコーパス(CV.夢前黎)
WAV(+12dB増幅&高音域削減)
の中身をdataset_raw/tsukuyomi
ディレクトリに入れる
プリプロセス
44100hzにリサンプリングする
python resample.py
コンフィグファイルなどを作る
python preprocess_flist_config.py
hubertとf0をつくる
python preprocess_hubert_f0.py
学習の設定はここでする
configs/config.json
{
"train": {
"log_interval": 200,
"eval_interval": 800,
"seed": 1234,
"epochs": 1000,
"learning_rate": 0.0001,
"betas": [
0.8,
0.99
],
"eps": 1e-09,
"batch_size": 6,
batch_sizeを自身のGPUメモリ-1Gぐらいがいいらしい
(自分の環境だとGPUメモリ12GBだったので、"batch_size": 10
)
epochsは学習データ1000個で400とのこと
学習開始
python train.py -c configs/config.json -m 44k
変換してみる
音声データはso-vits-svc/raw
に入れておく
手元にmp3しかなかったので、ffmpegでwavに変換した
mp3->wavに変換
sudo apt install ffmpeg
ffmpeg -i "input.mp3" -vn -ac 2 -ar 44100 -acodec pcm_s16le -f wav "output.wav"
変換開始
python inference_main.py -m "logs/44k/G_1000.pth" -c "configs/config.json" -n "output.wav" -t 0 -s "tsukuyomi" -a
※.pth, .wav, -sのオプションを変える
※長いファイルだとVRAM不足になりがち
このスクラップは2023/03/17にクローズされました