Files
enginex-r200-tts/piper
2025-09-22 22:43:34 +08:00
..
2025-09-12 12:19:17 +08:00
2025-09-12 12:19:17 +08:00
2025-09-22 22:43:34 +08:00
2025-09-12 12:19:17 +08:00
2025-09-12 12:19:17 +08:00
2025-09-12 12:19:17 +08:00
2025-09-12 12:19:17 +08:00

Piper-TTS

本项目基于 piper 模型封装,提供简洁的 Docker 部署方式,支持 SSML 输入,输出 PCM 原始音频,可用于语音合成。


Quickstart

1. 安装镜像

docker build -t tts:piper . -f Dockerfile_piper

2. 启动服务

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. 测试服务

curl --request POST "http://localhost:8080/tts" \
  --header 'Content-Type: application/ssml+xml' \
  --header 'User-Agent: curl' \
  --data-raw '<speak version="1.0" xml:lang="zh">
    <voice xml:lang="zh" xml:gender="Female" name="zh">
      今天天气很好,不知道明天天气怎么样。
    </voice>
  </speak>' \
  --output sound.pcm

Notes