- 切换pdf路径,下次打开同一个pdf
- 根据字体和字号筛选pdf内文本内容(视图1的列表内信息是:字体、字号、pdf内此字体字号的所有字符数,以字符数从大到小排序)
- 在上述筛选的结果下,根据页号、该block内筛选后的最少文字数,进行进一步筛选
- 一键推理,生成语音
- 界面内语音自动连播
- pdf的结构是:page-block-line-span-char
在 https://github.com/RVC-Boss/GPT-SoVITS 这个仓库下载GPT-SoVITS项目(windows版在这里有整合包),并使用它自带的webui,用你自己的音频素材,完成模型的训练 推荐教程:https://www.bilibili.com/video/BV1P541117yn/
若不使用整合包,自己配置环境,应该修改server/app.py
中Popen
函数对应的调用的GPTSoVITS的python环境
克隆本项目,在合适的文件夹下,打开cmd执行:
git clone https://github.com/Dusk-Hermit/pdf_voice_inference_webui.git
使用conda虚拟环境,创建新环境,并安装依赖
如果不是使用该名称的conda虚拟环境,则需要修改run.py
的对应地方
conda create -n pdf_voice_webui python=3.10
conda activate pdf_voice_webui
pip install -r requirements.txt
用cmd进入client
文件夹,并npm install
。需要在机器上安装好nodejs
cd client
npm install
在server/write_config.py
中,修改其中的config_list
变量,并用任意python解释器执行以下该脚本python write_config.py
,以更新server/config.json
需要修改的包括
- GPT_SoVITS项目的根目录地址
- 默认选择用来进行推理的GPT和SoVITS权重
- 作为当次推理的参考音频,应在3-10s内;以及它的对应文本和语言
- 默认打开的pdf文件目录(如果这是无效地址会启动失败……)
- 其他选项是可以不用特殊指定,有默认值的
在你的GPT_SoVITS项目根目录中,进入GPT_SoVITS
文件夹,复制inference_webui.py
一份,重命名为inference_webui_copy.py
,该名称在本项目中被引用,不应乱改,然后这样修改inference_webui_copy.py
:
- 找到文件中的以下代码,并把这两行注释掉(这两行行首加上
#
)。本项目通过对参考音频做音频时间处理,来实现推理语速控制
if (wav16k.shape[0] > 160000 or wav16k.shape[0] < 48000):
raise OSError(i18n("参考音频在3~10秒范围外,请更换!"))
- 从最后看,找到
with gr.Blocks(title="GPT-SoVITS WebUI") as app:
这一行,把这一行及以下所有代码删掉。不同版本的GPT_SoVITS项目的该文件代码会有些许差别,因此请用自己下载的版本的该文件,并进行修改
双击run.bat
即启动,然后再浏览器中输入http://localhost:51877
打开webui页面
修改端口号,需修改client/src/main.js
,以及用write_config.py
修改config.json
https://www.bilibili.com/video/BV1iD42177Vz/
这是用琴柳中文语音训练了一会会的语音,可以直接下载进行推理使用 链接:https://pan.baidu.com/s/1cvQ4MbyatudMpIK7JYeLCw?pwd=7bip
https://github.com/RVC-Boss/GPT-SoVITS
gptsovits换成了GPT-SoVITS-beta0306fix2
这个版本的整合包,也能用