# Piper-TTS 本项目基于 **piper** 模型封装,提供简洁的 Docker 部署方式,支持 **SSML 输入**,输出 **PCM 原始音频**,可用于语音合成。 --- ## Quickstart ### 1. 安装镜像 ```bash docker build -t tts:piper . -f Dockerfile_piper ``` ### 2. 启动服务 ```bash docker run -it --rm \ -v /root/lpy/models/piper-checkpoints:/mnt/models \ --device /dev/fuse \ --device=/dev/xpu0:/dev/xpu0 \ --device=/dev/xpuctrl:/dev/xpuctrl \ -p 8080:80 \ -e MODEL_DIR=/mnt/models \ -e MODEL_NAME="zh/zh_CN/huayan/medium/epoch=3269-step=2460540.ckpt" \ tts:piper ``` 参数说明: - `MODEL_DIR`:模型所在目录(挂载到容器内 `/mnt/models`) - `MODEL_NAME`:加载的模型文件名(通常为 `.safetensors`) - `-p 8080:80`:将容器内服务端口映射到宿主机 `8080` ### 3. 测试服务 ```bash curl --request POST "http://localhost:8080/tts" \ --header 'Content-Type: application/ssml+xml' \ --header 'User-Agent: curl' \ --data-raw ' 今天天气很好,不知道明天天气怎么样。 ' \ --output sound.pcm ``` --- ## Notes - 需要**xpytorch-cp38-torch201-ubuntu2004-x64-socket.run**,在 http://git.modelhub.org.cn:980/EngineX-Kunlunxin/r200_8f_xpytorch - Python3.8适配:piper-phonemize-cross>=1.2.1 替换 piper-phonemize