百度飞桨speech_web项目疑问

最近在学习百度飞桨的speech_web项目,可以在windows电脑上运行服务端和客户端,从而在浏览器上做语音处理。

这个项目安装后默认会有个语音模型,想咨询下怎样可以将默认的语音模型替换成其它开源模型?
例如: 文本转语音功能,默认用的是fastspeech2_mix和hifigan_csmsc,怎样可以将其换成其它的模型?

img

替换百度飞桨speech_web项目中的默认语音模型,需要完成以下几个步骤:

  1. 下载新的语音模型:你需要找到一个合适的开源语音模型,下载并解压缩到本地。通常,这些模型的训练是在特定的数据集上完成的,你需要了解这些数据集和模型的训练方法,以便更好地使用这些模型。

  2. 将模型转换为适用于PaddlePaddle的模型格式:PaddlePaddle支持多种模型格式,如Paddle2、ONNX、TensorFlow等。你需要将新的语音模型转换成适用于PaddlePaddle的格式。这里以ONNX为例,使用PaddlePaddle的onnx2paddle工具将ONNX格式的模型转换成PaddlePaddle的模型格式。如果你的模型不是ONNX格式的,可以考虑先将其转换成ONNX格式。

  3. 替换原有的语音模型:在speech_web项目中,你需要找到原有的语音模型所在的位置,将其替换成新的语音模型。通常,这些模型保存在PaddlePaddle的模型库中,你可以在下载的新模型中找到对应的模型文件,并将其拷贝到原有模型所在的位置。

  4. 修改配置文件:在speech_web项目中,你需要修改配置文件,将原有的语音模型名称替换成新的模型名称。具体来说,你需要修改如下两个配置文件:

  • server/configs/websocket_server_config.json:在该配置文件中,找到synthesis节点下的model字段,将其中的模型名称修改为新的模型名称。

  • client/configs/websocket_client_config.json:在该配置文件中,找到synthesis节点下的model字段,将其中的模型名称修改为新的模型名称。

  1. 重新运行服务端和客户端:完成以上步骤后,你需要重新启动服务端和客户端,以使新的语音模型生效。具体来说,你需要在命令行中进入到speech_web项目的根目录,然后执行以下两个命令:
python server/app.py
npm start --prefix client/

这样,你就成功将默认的语音模型替换成了新的开源模型。