Spaces:
Build error
Build error
Commit
·
34fa504
1
Parent(s):
b9295d4
Update README.md
Browse files
README.md
CHANGED
@@ -1,121 +1,8 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
> 2.0版本已经移至 sovits_2.0分支\
|
10 |
-
> 3.0版本使用FreeVC的代码结构,与旧版本不通用\
|
11 |
-
> 与[DiffSVC](https://github.com/prophesier/diff-svc) 相比,在训练数据质量非常高时diffsvc有着更好的表现,对于质量差一些的数据集,本仓库可能会有更好的表现,此外,本仓库推理速度上比diffsvc快很多
|
12 |
-
|
13 |
-
|
14 |
-
## 模型简介
|
15 |
-
歌声音色转换模型,通过SoftVC内容编码器提取源音频语音特征,与F0同时输入VITS替换原本的文本输入达到歌声转换的效果。同时,更换声码器为 [NSF HiFiGAN](https://github.com/openvpi/DiffSinger/tree/refactor/modules/nsf_hifigan) 解决断音问题
|
16 |
-
|
17 |
-
|
18 |
-
## 注意
|
19 |
-
+ 当前分支是32khz版本的分支,32khz模型推理更快,显存占用大幅减小,数据集所占硬盘空间也大幅降低,推荐训练该版本模型
|
20 |
-
+ 如果要训练48khz的模型请切换到[main分支](https://github.com/innnky/so-vits-svc/tree/main)
|
21 |
-
|
22 |
-
|
23 |
-
## 预先下载的模型文件
|
24 |
-
+ soft vc hubert:[hubert-soft-0d54a1f4.pt](https://github.com/bshall/hubert/releases/download/v0.1/hubert-soft-0d54a1f4.pt)
|
25 |
-
+ 放在hubert目录下
|
26 |
-
+ 预训练底模文件 [G_0.pth](https://huggingface.co/innnky/sovits_pretrained/resolve/main/G_0.pth) 与 [D_0.pth](https://huggingface.co/innnky/sovits_pretrained/resolve/main/D_0.pth)
|
27 |
-
+ 放在logs/32k 目录下
|
28 |
-
+ 预训练底模为必选项,因为据测试从零开始训练有概率不收敛,同时底模也能加快训练速度
|
29 |
-
+ 预训练底模训练数据集包含云灏 即霜 辉宇·星AI 派蒙 绫地宁宁,覆盖男女生常见音域,可以认为是相对通用的底模
|
30 |
-
+ 底模删除了optimizer speaker_embedding 等无关权重, 只可以用于初始化训练,无法用于推理
|
31 |
-
+ 该底模和48khz底模通用
|
32 |
-
```shell
|
33 |
-
# 一键下载
|
34 |
-
# hubert
|
35 |
-
wget -P hubert/ https://github.com/bshall/hubert/releases/download/v0.1/hubert-soft-0d54a1f4.pt
|
36 |
-
# G与D预训练模型
|
37 |
-
wget -P logs/32k/ https://huggingface.co/innnky/sovits_pretrained/resolve/main/G_0.pth
|
38 |
-
wget -P logs/32k/ https://huggingface.co/innnky/sovits_pretrained/resolve/main/D_0.pth
|
39 |
-
|
40 |
-
```
|
41 |
-
|
42 |
-
|
43 |
-
## colab一键数据集制作、训练脚本
|
44 |
-
[一键colab](https://colab.research.google.com/drive/1_-gh9i-wCPNlRZw6pYF-9UufetcVrGBX?usp=sharing)
|
45 |
-
|
46 |
-
|
47 |
-
## 数据集准备
|
48 |
-
仅需要以以下文件结构将数据集放入dataset_raw目录即可
|
49 |
-
```shell
|
50 |
-
dataset_raw
|
51 |
-
├───speaker0
|
52 |
-
│ ├───xxx1-xxx1.wav
|
53 |
-
│ ├───...
|
54 |
-
│ └───Lxx-0xx8.wav
|
55 |
-
└───speaker1
|
56 |
-
├───xx2-0xxx2.wav
|
57 |
-
├───...
|
58 |
-
└───xxx7-xxx007.wav
|
59 |
-
```
|
60 |
-
|
61 |
-
|
62 |
-
## 数据预处理
|
63 |
-
1. 重采样至 32khz
|
64 |
-
|
65 |
-
```shell
|
66 |
-
python resample.py
|
67 |
-
```
|
68 |
-
2. 自动划分训练集 验证集 测试集 以及自动生成配置文件
|
69 |
-
```shell
|
70 |
-
python preprocess_flist_config.py
|
71 |
-
# 注意
|
72 |
-
# 自动生成的配置文件中,说话人数量n_speakers会自动按照数据集中的人数而定
|
73 |
-
# 为了给之后添加说话人留下一定空间,n_speakers自动设置为 当前数据集人数乘2
|
74 |
-
# 如果想多留一些空位可以在此步骤后 自行修改生成的config.json中n_speakers数量
|
75 |
-
# 一旦模型开始训练后此项不可再更改
|
76 |
-
```
|
77 |
-
3. 生成hubert与f0
|
78 |
-
```shell
|
79 |
-
python preprocess_hubert_f0.py
|
80 |
-
```
|
81 |
-
执行完以上步骤后 dataset 目录便是预处理完成的数据,可以删除dataset_raw文件夹了
|
82 |
-
|
83 |
-
|
84 |
-
## 训练
|
85 |
-
```shell
|
86 |
-
python train.py -c configs/config.json -m 32k
|
87 |
-
```
|
88 |
-
|
89 |
-
|
90 |
-
## 推理
|
91 |
-
|
92 |
-
使用 [inference_main.py](inference_main.py)
|
93 |
-
+ 更改model_path为你自己训练的最新模型记录点
|
94 |
-
+ 将待转换的音频放在raw文件夹下
|
95 |
-
+ clean_names 写待转换的音频名称
|
96 |
-
+ trans 填写变调半音数量
|
97 |
-
+ spk_list 填写合成的说话人名称
|
98 |
-
|
99 |
-
|
100 |
-
## Onnx导出
|
101 |
-
使用 [onnx_export.py](onnx_export.py)
|
102 |
-
+ 新建文件夹:checkpoints 并打开
|
103 |
-
+ 在checkpoints文件夹中新建一个文件夹作为项目文件夹,文件夹名为你的项目名称
|
104 |
-
+ 将你的模型更名为model.pth,配置文件更名为config.json,并放置到刚才创建的文件夹下
|
105 |
-
+ 将 [onnx_export.py](onnx_export.py) 中path = "NyaruTaffy" 的 "NyaruTaffy" 修改为你的项目名称
|
106 |
-
+ 运行 [onnx_export.py](onnx_export.py)
|
107 |
-
+ 等待执行完毕,在你的项目文件夹下会生成一个model.onnx,即为导出的模型
|
108 |
-
+ 注意:若想导出48K模型,请按照以下步骤修改文件
|
109 |
-
+ 请打开[model_onnx.py](model_onnx.py),将其中最后一个class的hps中32000改为48000
|
110 |
-
+ 请打开[nvSTFT](/vdecoder/hifigan/nvSTFT.py),将其中所有32000改为48000
|
111 |
-
### Onnx模型支持的UI
|
112 |
-
+ [MoeSS](https://github.com/NaruseMioShirakana/MoeSS)
|
113 |
-
|
114 |
-
## Gradio(WebUI)
|
115 |
-
使用 [sovits_gradio.py](sovits_gradio.py)
|
116 |
-
+ 新建文件夹:checkpoints 并打开
|
117 |
-
+ 在checkpoints文件夹中新建一个文件夹作为项目文件夹,文件夹名为你的项目名称
|
118 |
-
+ 将你的模型更名为model.pth,配置文件更名为config.json,并放置到刚才创建的文件夹下
|
119 |
-
+ 运行 [sovits_gradio.py](sovits_gradio.py)
|
120 |
-
|
121 |
-
|
|
|
1 |
+
---
|
2 |
+
license: cc-by-nc-3.0
|
3 |
+
title: YazawaSunrise/LoveLive-so-vits-svc
|
4 |
+
sdk: gradio
|
5 |
+
emoji: 🚀
|
6 |
+
colorFrom: yellow
|
7 |
+
colorTo: red
|
8 |
+
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|