YazawaSunrise commited on
Commit
34fa504
·
1 Parent(s): b9295d4

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +8 -121
README.md CHANGED
@@ -1,121 +1,8 @@
1
- # SoftVC VITS Singing Voice Conversion
2
- ## English docs
3
- [英语资料](Eng_docs.md)
4
-
5
-
6
- ## Update
7
- > 据不完全统计,多说话人似乎会导致**音色泄漏加重**,不建议训练超过5人的模型,目前的建议是如果想炼出来更像目标音色,**尽可能炼单说话人的**\
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
+ ---