diff --git a/bob-plugin/README.md b/bob-plugin/README.md index 91a6ab5..78562a7 100644 --- a/bob-plugin/README.md +++ b/bob-plugin/README.md @@ -1,47 +1,62 @@ # Bob Kokoro TTS Plugin -Bob 的文本转语音插件,使用 Kokoro 本地部署模型作为语音合成服务。 +
+ Bob 的文本转语音插件,使用 Kokoro 本地部署模型作为语音合成服务。 +
-- 支持多种声音选项 -- 可自定义服务器接口地址 -- 支持 Base64 格式的音频输出 -- 与 Bob 无缝集成 +## ✨ 功能特点 -## 安装要求 +- 🎙️ 支持多种声音选项 +- 🔧 可自定义服务器接口地址 +- 💾 支持 Base64 格式的音频输出 +- 🔌 与 Bob 无缝集成 + +## 📋 安装要求 - Bob 版本 ≥ 1.6.0 - 需要有运行中的 Kokoro TTS 服务器 -## 插件配置 +## ⚙️ 插件配置 ### 必需配置 -- **服务器地址**: 设置 Kokoro TTS 服务器的完整地址(例如:`http://localhost:8000/synthesize`) +- **服务器地址**: 设置 Kokoro TTS 服务器的完整地址 + - 示例:`http://localhost:8000/text-to-speech` ### 可选配置 - **声音选择**: 可选择不同的声音模型 - - af: 默认声音 - - af_bella: Bella 声音 - - af_nicole: Nicole 声音 - - af_sarah: Sarah 声音 - - af_sky: Sky 声音 - - am_adam: Adam 声音 - - am_michael: Michael 声音 - - bf_emma: Emma 声音 - - bf_isabella: Isabella 声音 - - bm_george: George 声音 - - bm_lewis: Lewis 声音 - -## 使用方法 + + ``` + 🎤 基础声音 + ├── af: 默认声音 + ├── af_bella: Bella 声音 + ├── af_nicole: Nicole 声音 + ├── af_sarah: Sarah 声音 + └── af_sky: Sky 声音 + + 👨 男声 + ├── am_adam: Adam 声音 + ├── am_michael: Michael 声音 + ├── bm_george: George 声音 + └── bm_lewis: Lewis 声音 + + 👩 女声 + ├── bf_emma: Emma 声音 + └── bf_isabella: Isabella 声音 + ``` + +## 🎯 使用方法 1. 在 Bob 中选择文本 2. 选择 Kokoro TTS 作为语音合成服务 3. 点击播放按钮即可听到合成的语音 -## 开发说明 +## 🔄 开发说明 本插件使用 GitHub Actions 进行自动化发布。当插件代码有更新时,会自动: diff --git a/bob-plugin/src/info.json b/bob-plugin/src/info.json index b5f46af..8764ee8 100755 --- a/bob-plugin/src/info.json +++ b/bob-plugin/src/info.json @@ -33,6 +33,22 @@ { "title": "bm_george", "value": "bm_george" }, { "title": "bm_lewis", "value": "bm_lewis" } ] + }, + { + "identifier": "speed", + "type": "menu", + "title": "语速", + "defaultValue": "1.0", + "menuValues": [ + { "title": "0.25x", "value": "0.25" }, + { "title": "0.5x", "value": "0.5" }, + { "title": "0.75x", "value": "0.75" }, + { "title": "1.0x", "value": "1.0" }, + { "title": "1.25x", "value": "1.25" }, + { "title": "1.5x", "value": "1.5" }, + { "title": "1.75x", "value": "1.75" }, + { "title": "2.0x", "value": "2.0" } + ] } ] } diff --git a/bob-plugin/src/main.js b/bob-plugin/src/main.js index 37cc260..5bb2cb4 100755 --- a/bob-plugin/src/main.js +++ b/bob-plugin/src/main.js @@ -23,7 +23,7 @@ function tts(query, completion) { body: { text: originText, voice: $option.voice, - speed: 1, + speed: parseFloat($option.speed), stream: false, format: 'base64' }, diff --git a/server/README.md b/server/README.md index a9c41fb..4d9c1d8 100644 --- a/server/README.md +++ b/server/README.md @@ -1,24 +1,26 @@ # Kokoro TTS Server -基于 Kokoro 模型的本地部署 TTS 服务器。 ++ 基于 Kokoro 模型的本地部署 TTS 服务器。 +
-## 开源项目依赖 +## 🔗 开源项目依赖 本项目基于以下开源项目: -1. [kokoro-onnx](https://github.com/thewh1teagle/kokoro-onnx) - Kokoro TTS 的 ONNX 运行时实现 -2. [Kokoro-82M](https://huggingface.co/hexgrad/Kokoro-82M) - Kokoro TTS 模型 +- 🚀 [kokoro-onnx](https://github.com/thewh1teagle/kokoro-onnx) - Kokoro TTS 的 ONNX 运行时实现 +- 🧠 [Kokoro-82M](https://huggingface.co/hexgrad/Kokoro-82M) - Kokoro TTS 模型 感谢这些优秀的开源项目的贡献! -## 系统要求 +## 💻 系统要求 - Python 3.8+ - ONNX Runtime - 2GB+ 内存(用于加载模型) - Docker(可选,如果使用 Docker 部署) -## 准备工作 +## 📥 准备工作 在启动服务器之前,需要下载模型文件和声音配置文件: @@ -32,7 +34,7 @@ wget https://github.com/thewh1teagle/kokoro-onnx/releases/download/model-files/v 将这两个文件放在 `server` 目录下。这些文件由于体积较大(模型文件约 310MB),不包含在代码仓库中。 -## 快速开始 +## 🚀 快速开始 ### 方式一:直接运行 @@ -64,16 +66,16 @@ docker build -f Dockerfile.conda -t kokoro-tts-conda . docker run -p 8000:8000 kokoro-tts-conda ``` -## 服务器配置 +## ⚙️ 服务器配置 默认配置: -- 监听地址:`0.0.0.0:8000` -- API 端点:`/text-to-speech` -- 支持的音频格式:WAV, MP3 -- 支持多种响应格式:流式、二进制、Base64 +- 🌐 监听地址:`0.0.0.0:8000` +- 🛣️ API 端点:`/text-to-speech` +- 🎵 支持的音频格式:WAV, MP3 +- 📤 支持多种响应格式:流式、二进制、Base64 -## API 接口 +## 📡 API 接口 ### 语音合成接口 @@ -92,17 +94,17 @@ docker run -p 8000:8000 kokoro-tts-conda - **响应格式**: -1. 流式响应: +1. 🌊 流式响应: - Content-Type: audio/wav 或 audio/mpeg - 直接返回音频流 -2. 二进制响应: +2. 📦 二进制响应: - Content-Type: audio/wav 或 audio/mpeg - 返回完整的音频文件 -3. JSON 响应 (`format=base64`): +3. 📝 JSON 响应 (`format=base64`): ```json { @@ -110,16 +112,23 @@ docker run -p 8000:8000 kokoro-tts-conda } ``` -### 可用声音列表 - -- af: 默认声音 -- af_bella: Bella 声音 -- af_nicole: Nicole 声音 -- af_sarah: Sarah 声音 -- af_sky: Sky 声音 -- am_adam: Adam 声音 -- am_michael: Michael 声音 -- bf_emma: Emma 声音 -- bf_isabella: Isabella 声音 -- bm_george: George 声音 -- bm_lewis: Lewis 声音 +### 🎙️ 可用声音列表 + +``` +🎤 基础声音 +├── af: 默认声音 +├── af_bella: Bella 声音 +├── af_nicole: Nicole 声音 +├── af_sarah: Sarah 声音 +└── af_sky: Sky 声音 + +👨 男声 +├── am_adam: Adam 声音 +├── am_michael: Michael 声音 +├── bm_george: George 声音 +└── bm_lewis: Lewis 声音 + +👩 女声 +├── bf_emma: Emma 声音 +└── bf_isabella: Isabella 声音 +```