mirror of
https://github.com/RVC-Boss/GPT-SoVITS.git
synced 2025-10-07 15:19:59 +08:00
README
This commit is contained in:
parent
5cdbb3b8c3
commit
7f6ca9586d
@ -84,12 +84,9 @@ from module.mel_processing import spectrogram_torch
|
|||||||
from tools.my_utils import load_audio
|
from tools.my_utils import load_audio
|
||||||
from tools.i18n.i18n import I18nAuto, scan_language_list
|
from tools.i18n.i18n import I18nAuto, scan_language_list
|
||||||
|
|
||||||
language=os.environ.get("language","auto")
|
language=os.environ.get("language","Auto")
|
||||||
language=sys.argv[-1] if sys.argv[-1] in scan_language_list() else language
|
language=sys.argv[-1] if sys.argv[-1] in scan_language_list() else language
|
||||||
if language != 'auto':
|
|
||||||
i18n = I18nAuto(language=language)
|
i18n = I18nAuto(language=language)
|
||||||
else:
|
|
||||||
i18n = I18nAuto()
|
|
||||||
|
|
||||||
# os.environ['PYTORCH_ENABLE_MPS_FALLBACK'] = '1' # 确保直接启动推理UI时也能够设置。
|
# os.environ['PYTORCH_ENABLE_MPS_FALLBACK'] = '1' # 确保直接启动推理UI时也能够设置。
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ _注: numba==0.56.4 需要 python<3.11_
|
|||||||
|
|
||||||
### Windows
|
### Windows
|
||||||
|
|
||||||
如果你是 Windows 用户(已在 win>=10 上测试),可以下载[下载整合包](https://huggingface.co/lj1995/GPT-SoVITS-windows-package/resolve/main/GPT-SoVITS-beta.7z?download=true),解压后双击 go-webui.bat 即可启动 GPT-SoVITS-WebUI。
|
如果你是 Windows 用户(已在 win>=10 上测试),可以下载[下载整合包](https://huggingface.co/lj1995/GPT-SoVITS-windows-package/resolve/main/GPT-SoVITS-beta.7z?download=true),解压后双击 go-webui-v2.bat 即可启动 GPT-SoVITS-WebUI。
|
||||||
|
|
||||||
中国地区用户可以通过点击链接并选择“下载副本”[下载整合包](https://www.icloud.com.cn/iclouddrive/030K8WjGJ9xMXhpzJVIMEWPzQ#GPT-SoVITS-beta0706fix1)。(如果下载时遇到错误,请退出登录)
|
中国地区用户可以通过点击链接并选择“下载副本”[下载整合包](https://www.icloud.com.cn/iclouddrive/030K8WjGJ9xMXhpzJVIMEWPzQ#GPT-SoVITS-beta0706fix1)。(如果下载时遇到错误,请退出登录)
|
||||||
|
|
||||||
@ -74,18 +74,11 @@ bash install.sh
|
|||||||
```bash
|
```bash
|
||||||
conda create -n GPTSoVits python=3.9
|
conda create -n GPTSoVits python=3.9
|
||||||
conda activate GPTSoVits
|
conda activate GPTSoVits
|
||||||
|
|
||||||
pip install -r requirements.txt
|
pip install -r requirements.txt
|
||||||
```
|
```
|
||||||
|
|
||||||
### 手动安装
|
### 手动安装
|
||||||
|
|
||||||
#### 安装依赖
|
|
||||||
|
|
||||||
```bash
|
|
||||||
pip install -r requirements.txt
|
|
||||||
```
|
|
||||||
|
|
||||||
#### 安装 FFmpeg
|
#### 安装 FFmpeg
|
||||||
|
|
||||||
##### Conda 用户
|
##### Conda 用户
|
||||||
@ -106,11 +99,18 @@ conda install -c conda-forge 'ffmpeg<7'
|
|||||||
|
|
||||||
下载并将 [ffmpeg.exe](https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffmpeg.exe) 和 [ffprobe.exe](https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffprobe.exe) 放置在 GPT-SoVITS 根目录下。
|
下载并将 [ffmpeg.exe](https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffmpeg.exe) 和 [ffprobe.exe](https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffprobe.exe) 放置在 GPT-SoVITS 根目录下。
|
||||||
|
|
||||||
|
安装 [Visual Studio 2022](https://visualstudio.microsoft.com/zh-hans/downloads/) 环境(仅限韩语)
|
||||||
|
|
||||||
##### MacOS 用户
|
##### MacOS 用户
|
||||||
```bash
|
```bash
|
||||||
brew install ffmpeg
|
brew install ffmpeg
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### 安装依赖
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pip install -r requirements.txt
|
||||||
|
```
|
||||||
### 在 Docker 中使用
|
### 在 Docker 中使用
|
||||||
|
|
||||||
#### docker-compose.yaml 设置
|
#### docker-compose.yaml 设置
|
||||||
@ -142,22 +142,28 @@ docker run --rm -it --gpus=all --env=is_half=False --volume=G:\GPT-SoVITS-Docker
|
|||||||
|
|
||||||
从 [GPT-SoVITS Models](https://huggingface.co/lj1995/GPT-SoVITS) 下载预训练模型,并将它们放置在 `GPT_SoVITS\pretrained_models` 中。
|
从 [GPT-SoVITS Models](https://huggingface.co/lj1995/GPT-SoVITS) 下载预训练模型,并将它们放置在 `GPT_SoVITS\pretrained_models` 中。
|
||||||
|
|
||||||
|
从 [G2PWModel-v2-onnx.zip](https://storage.googleapis.com/esun-ai/g2pW/G2PWModel-v2-onnx.zip) 下载G2PW模型,并将它们解压重命名为`G2PWModel` 后放置在 `GPT_SoVITS\text` 中。
|
||||||
|
|
||||||
对于 UVR5(人声/伴奏分离和混响移除,附加),从 [UVR5 Weights](https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/uvr5_weights) 下载模型,并将它们放置在 `tools/uvr5/uvr5_weights` 中。
|
对于 UVR5(人声/伴奏分离和混响移除,附加),从 [UVR5 Weights](https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/uvr5_weights) 下载模型,并将它们放置在 `tools/uvr5/uvr5_weights` 中。
|
||||||
|
|
||||||
中国地区用户可以进入以下链接并点击“下载副本”下载以上两个模型(如果下载时遇到错误,请退出登录):
|
中国地区用户可以进入以下链接并点击“下载副本”下载以上两个模型(如果下载时遇到错误,请退出登录):
|
||||||
|
|
||||||
- [GPT-SoVITS Models](https://www.icloud.com.cn/iclouddrive/056y_Xog_HXpALuVUjscIwTtg#GPT-SoVITS_Models)
|
- [GPT-SoVITS Models](https://www.icloud.com/iclouddrive/044boFMiOHHt22SNr-c-tirbA#pretrained_models)
|
||||||
|
|
||||||
- [UVR5 Weights](https://www.icloud.com.cn/iclouddrive/0bekRKDiJXboFhbfm3lM2fVbA#UVR5_Weights)
|
- [UVR5 Weights](https://www.icloud.com.cn/iclouddrive/0bekRKDiJXboFhbfm3lM2fVbA#UVR5_Weights)
|
||||||
|
|
||||||
|
- [G2PWModel_1.1.zip](https://paddlespeech.bj.bcebos.com/Parakeet/released_models/g2p/G2PWModel_1.1.zip)(下载G2PW模型,并将它们解压重命名为 `G2PWModel` 后放置在 `GPT_SoVITS\text` 中)
|
||||||
|
|
||||||
对于中文自动语音识别(附加),从 [Damo ASR Model](https://modelscope.cn/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch/files), [Damo VAD Model](https://modelscope.cn/models/damo/speech_fsmn_vad_zh-cn-16k-common-pytorch/files), 和 [Damo Punc Model](https://modelscope.cn/models/damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch/files) 下载模型,并将它们放置在 `tools/asr/models` 中。
|
对于中文自动语音识别(附加),从 [Damo ASR Model](https://modelscope.cn/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch/files), [Damo VAD Model](https://modelscope.cn/models/damo/speech_fsmn_vad_zh-cn-16k-common-pytorch/files), 和 [Damo Punc Model](https://modelscope.cn/models/damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch/files) 下载模型,并将它们放置在 `tools/asr/models` 中。
|
||||||
|
|
||||||
|
或者从[FunASR模型链接](https://www.icloud.com/iclouddrive/0b52_7SQWYr75kHkPoPXgpeQA#models)下载模型,并将它们解压后替换 `tools/asr/models` 。(点击“下载副本”,如果下载时遇到错误,请退出登录)
|
||||||
|
|
||||||
对于英语与日语自动语音识别(附加),从 [Faster Whisper Large V3](https://huggingface.co/Systran/faster-whisper-large-v3) 下载模型,并将它们放置在 `tools/asr/models` 中。 此外,[其他模型](https://huggingface.co/Systran)可能具有类似效果,但占用更小的磁盘空间。
|
对于英语与日语自动语音识别(附加),从 [Faster Whisper Large V3](https://huggingface.co/Systran/faster-whisper-large-v3) 下载模型,并将它们放置在 `tools/asr/models` 中。 此外,[其他模型](https://huggingface.co/Systran)可能具有类似效果,但占用更小的磁盘空间。
|
||||||
|
|
||||||
中国地区用户可以通过以下链接下载:
|
中国地区用户可以通过以下链接下载:
|
||||||
- [Faster Whisper Large V3](https://www.icloud.com/iclouddrive/00bUEp9_mcjMq_dhHu_vrAFDQ#faster-whisper-large-v3)(点击“下载副本”,如果下载时遇到错误,请退出登录)
|
- [Faster Whisper Large V3](https://www.icloud.com/iclouddrive/00bUEp9_mcjMq_dhHu_vrAFDQ#faster-whisper-large-v3)(点击“下载副本”,如果下载时遇到错误,请退出登录)
|
||||||
|
|
||||||
- [Faster Whisper Large V3](https://hf-mirror.com/Systran/faster-whisper-large-v3)(Hugging Face镜像站)
|
- [Faster Whisper Large V3](https://hf-mirror.com/Systran/faster-whisper-large-v3)(Hugging Face镜像站)
|
||||||
|
|
||||||
|
|
||||||
## 数据集格式
|
## 数据集格式
|
||||||
@ -170,16 +176,84 @@ vocal_path|speaker_name|language|text
|
|||||||
|
|
||||||
语言字典:
|
语言字典:
|
||||||
|
|
||||||
- 'zh': Chinese
|
- 'zh': 中文
|
||||||
- 'ja': Japanese
|
- 'ja': 日语
|
||||||
- 'en': English
|
- 'en': 英语
|
||||||
|
- 'yue': 粤语
|
||||||
|
- 'ko': 韩语
|
||||||
|
|
||||||
示例:
|
示例:
|
||||||
|
|
||||||
```
|
```
|
||||||
D:\GPT-SoVITS\xxx/xxx.wav|xxx|en|I like playing Genshin.
|
D:\GPT-SoVITS\xxx/xxx.wav|xxx|zh|我爱玩原神。
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## 使用
|
||||||
|
|
||||||
|
### 打开WebUI
|
||||||
|
|
||||||
|
#### 整合包用户
|
||||||
|
|
||||||
|
双击`go-webui-v2.bat`或者使用`go-webui-v2.ps`
|
||||||
|
若想使用V1,则双击`go-webui-v1.bat`或者使用`go-webui-v1.ps`
|
||||||
|
|
||||||
|
#### 其他
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python webui.py <language(optional)>
|
||||||
|
```
|
||||||
|
|
||||||
|
若想使用V1,则
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python webui.py v1 <language(optional)>
|
||||||
|
```
|
||||||
|
或者在webUI内动态切换
|
||||||
|
|
||||||
|
### 训练
|
||||||
|
|
||||||
|
#### 现已支持自动填充路径
|
||||||
|
|
||||||
|
1.填入训练音频路径
|
||||||
|
|
||||||
|
2.切割音频
|
||||||
|
|
||||||
|
3.进行降噪(可选)
|
||||||
|
|
||||||
|
4.进行ASR
|
||||||
|
|
||||||
|
5.校对标注
|
||||||
|
|
||||||
|
6.前往下一个窗口,点击训练
|
||||||
|
|
||||||
|
### 打开推理WebUI
|
||||||
|
|
||||||
|
#### 整合包用户
|
||||||
|
|
||||||
|
双击 `go-webui-v2.bat` 或者使用 `go-webui-v2.ps` ,然后在 `1-GPT-SoVITS-TTS/1C-推理` 中打开推理webUI
|
||||||
|
|
||||||
|
#### 其他
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python GPT_SoVITS/inference_webui.py <language(optional)>
|
||||||
|
```
|
||||||
|
或者
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python webui.py
|
||||||
|
```
|
||||||
|
然后在 `1-GPT-SoVITS-TTS/1C-推理` 中打开推理webUI
|
||||||
|
|
||||||
|
## V2发布说明
|
||||||
|
|
||||||
|
新特性:
|
||||||
|
|
||||||
|
1.支持韩语及粤语
|
||||||
|
|
||||||
|
2.更好的文本前端
|
||||||
|
|
||||||
|
3.底膜由2k小时扩展至5k小时
|
||||||
|
|
||||||
## 待办事项清单
|
## 待办事项清单
|
||||||
|
|
||||||
- [ ] **高优先级:**
|
- [ ] **高优先级:**
|
||||||
@ -205,10 +279,10 @@ D:\GPT-SoVITS\xxx/xxx.wav|xxx|en|I like playing Genshin.
|
|||||||
````
|
````
|
||||||
python tools/uvr5/webui.py "<infer_device>" <is_half> <webui_port_uvr5>
|
python tools/uvr5/webui.py "<infer_device>" <is_half> <webui_port_uvr5>
|
||||||
````
|
````
|
||||||
如果打不开浏览器,请按照下面的格式进行UVR处理,这是使用mdxnet进行音频处理的方式
|
<!-- 如果打不开浏览器,请按照下面的格式进行UVR处理,这是使用mdxnet进行音频处理的方式
|
||||||
````
|
````
|
||||||
python mdxnet.py --model --input_root --output_vocal --output_ins --agg_level --format --device --is_half_precision
|
python mdxnet.py --model --input_root --output_vocal --output_ins --agg_level --format --device --is_half_precision
|
||||||
````
|
```` -->
|
||||||
这是使用命令行完成数据集的音频切分的方式
|
这是使用命令行完成数据集的音频切分的方式
|
||||||
````
|
````
|
||||||
python audio_slicer.py \
|
python audio_slicer.py \
|
||||||
@ -249,6 +323,9 @@ python ./tools/asr/fasterwhisper_asr.py -i <input> -o <output> -l <language> -p
|
|||||||
### 推理用文本前端
|
### 推理用文本前端
|
||||||
- [paddlespeech zh_normalization](https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/paddlespeech/t2s/frontend/zh_normalization)
|
- [paddlespeech zh_normalization](https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/paddlespeech/t2s/frontend/zh_normalization)
|
||||||
- [LangSegment](https://github.com/juntaosun/LangSegment)
|
- [LangSegment](https://github.com/juntaosun/LangSegment)
|
||||||
|
- [g2pW](https://github.com/GitYCC/g2pW)
|
||||||
|
- [pypinyin-g2pW](https://github.com/mozillazg/pypinyin-g2pW)
|
||||||
|
- [paddlespeech g2pw](https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/paddlespeech/t2s/frontend/g2pw)
|
||||||
### WebUI 工具
|
### WebUI 工具
|
||||||
- [ultimatevocalremovergui](https://github.com/Anjok07/ultimatevocalremovergui)
|
- [ultimatevocalremovergui](https://github.com/Anjok07/ultimatevocalremovergui)
|
||||||
- [audio-slicer](https://github.com/openvpi/audio-slicer)
|
- [audio-slicer](https://github.com/openvpi/audio-slicer)
|
||||||
|
@ -33,5 +33,4 @@ g2pk2
|
|||||||
ko_pron
|
ko_pron
|
||||||
opencc; sys_platform != 'linux'
|
opencc; sys_platform != 'linux'
|
||||||
opencc==1.1.1; sys_platform == 'linux'
|
opencc==1.1.1; sys_platform == 'linux'
|
||||||
eunjeon; sys_platform == 'win32'
|
|
||||||
python_mecab_ko; sys_platform != 'win32'
|
python_mecab_ko; sys_platform != 'win32'
|
||||||
|
5
webui.py
5
webui.py
@ -52,12 +52,9 @@ from subprocess import Popen
|
|||||||
import signal
|
import signal
|
||||||
from config import python_exec,infer_device,is_half,exp_root,webui_port_main,webui_port_infer_tts,webui_port_uvr5,webui_port_subfix,is_share
|
from config import python_exec,infer_device,is_half,exp_root,webui_port_main,webui_port_infer_tts,webui_port_uvr5,webui_port_subfix,is_share
|
||||||
from tools.i18n.i18n import I18nAuto, scan_language_list
|
from tools.i18n.i18n import I18nAuto, scan_language_list
|
||||||
language=sys.argv[-1] if sys.argv[-1] in scan_language_list() else "auto"
|
language=sys.argv[-1] if sys.argv[-1] in scan_language_list() else "Auto"
|
||||||
os.environ["language"]=language
|
os.environ["language"]=language
|
||||||
if language != 'auto':
|
|
||||||
i18n = I18nAuto(language=language)
|
i18n = I18nAuto(language=language)
|
||||||
else:
|
|
||||||
i18n = I18nAuto()
|
|
||||||
from scipy.io import wavfile
|
from scipy.io import wavfile
|
||||||
from tools.my_utils import load_audio
|
from tools.my_utils import load_audio
|
||||||
from multiprocessing import cpu_count
|
from multiprocessing import cpu_count
|
||||||
|
Loading…
x
Reference in New Issue
Block a user