文本转语音服务器

一个集成Piper TTS的高质量文本转语音服务器,提供可定制的语音参数和音量控制,适用于需要本地化语音合成的应用场景。

  • by OnyxFalcon
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 CryptoDappDev/piper-tts-mcp

使用说明

🎤 Piper TTS MCP服务器

A. 模型上下文协议(MCP) 集成的服务器 Piper TTS 以实现高质量的文本到语音功能。此服务器提供 speak 该工具将文本转换为语音,并通过可定制的音量控制直接通过扬声器播放。

✨ 特性

  • 🔊 高质量的文本转语音 使用Piper TTS
  • 🎚️ 音量控制 (0.01至1.00)
  • ⚡ 基于内存的音频播放 (无临时文件)
  • 🔧 可定制的语音参数 (扬声器、速度、声音变化)
  • 🚀 快速轻便 MCP集成
  • 🔇 无声操作 (无控制台输出)

📋 需求

⚠️ 重要先决条件:

  • Python 3.12+ 安装在您的系统上
  • Piper TTS服务 运行于 localhost:5000

您可以使用附带的Docker配置或单独运行Piper TTS来设置此设置。

🚀 快速开始

1.🐳 启动Piper TTS服务

克隆此仓库并启动TTS服务:

git clone https://github.com/CryptoDappDev/piper-tts-mcp.git
cd piper-tts-mcp

选项A:使用Docker Compose(推荐)

docker compose up -d

选项B:使用Docker构建

docker build -t piper-tts-mcp .
docker run -p 5000:5000 piper-tts-mcp

2.🔧 配置MCP客户端

将服务器添加到MCP配置中(例如。, .mcp.json 克劳德桌面版):

{
  "mcpServers": {
    "speak": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/your/piper-tts-mcp",
        "run",
        "server.py"
      ]
    }
  }
}

3.🎉 享受!

这 speak 工具现在可以在您的MCP客户端中使用!

🛠️ 用法

MCP服务器提供 speak 工具具有以下参数:

参数 类型 默认值 说明
text 字符串 必需的 要转换为语音的文本
speaker_id int 0 语音扬声器ID
length_scale float 1.1 语音速度(低=快)
noise_scale float 0.667 语音变化控制
noise_w_scale float 0.333 发音变化
volume 浮动 0.15 体积水平(0.01至1.00)

示例用法

# Basic usage
speak("Hello, world!")

# With custom volume
speak("This is louder!", volume=0.5)

# With custom voice settings
speak("Fast and varied speech", 
      length_scale=0.8, 
      volume=0.3, 
      noise_scale=0.8)

🔧 发展

依赖项

  • Python 3.12+
  • mcp[cli] -MCP框架
  • requests -TTS API的HTTP客户端
  • pygame -音频播放

地方发展

# Install dependencies
uv sync

# Run the server
uv run server.py

📦 Docker配置

附带的Docker设置提供:

  • Piper TTS服务 在5000号港口
  • 预配置的语音模型
  • 自动启动

🎙️ 语音模型

此存储库中使用的默认语音模型是 en_GB-cori-high (英式英语,女声)。

🔍 探索语音选项

  • 语音样本:在以下网址收听不同的语音模型 Piper语音样本
  • Piper文件:了解更多关于Piper TTS的信息,请访问 Rhasspy/Piper

🛠️ 更改语音模型

要使用不同的语音模型:

  1. 选择声音 从 语音样本页面
  2. 更新 Dockerfile -更换 en_GB-cori-high 使用您选择的语音模型:
    # Download your preferred voice model
    RUN python3 -m piper.download_voices your-chosen-voice-model
    
    # Update the server command
    CMD ["sh", "-c", "python3 -m piper.http_server -m your-chosen-voice-model"]
    
  3. 重建Docker镜像:
    docker build -t piper-tts-mcp .
    docker compose up -d
    

🎨 创建自定义声音

创建自己的自定义语音需要额外的努力和研究。请参阅 Piper文件 用于语音训练和定制的指导。

🤝 贡献

欢迎投稿!请随时提交问题和拉取请求。

📄 许可证

该项目是开源的,可在 MIT许可证.

🙏 致谢


由以下材料制成❤️ 对于MCP社区