L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

speech-synthesis

speech-synthesis

将文本转换为高质量语音,支持多语言、多种音色,可调节语速、音调和音量,并生成字幕,输出MP3音频文件。当你需要朗读文本(比如文章、消息)、为视频或演示文稿生成配音,或直接提到“TTS”、“文字转语音”、“配音”、“朗读”时,就会使用这个技能。

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: speech-synthesis description: "将文本转换为高质量语音,支持多语言、多种音色,可调节语速、音调和音量,并生成字幕,输出MP3音频文件。当你需要朗读文本(比如文章、消息)、为视频或演示文稿生成配音,或直接提到“TTS”、“文字转语音”、“配音”、“朗读”时,就会使用这个技能。"

Edge-TTS 技能

概述

使用 node-edge-tts npm 包调用微软 Edge 神经网络语音服务,生成高质量的文字转语音音频。支持多种语言、多种音色、可调节语速/音调,以及字幕生成。

快速开始

当检测到触发词或用户发出 TTS 请求时:

  1. 调用 tts 工具(Clawdbot 内置),将文本转换为语音
  2. 工具返回一个 MEDIA: 路径
  3. Clawdbot 将音频发送到当前频道
// 示例:使用内置 tts 工具
tts("要转换为语音的文本")
// 返回:MEDIA: /path/to/audio.mp3

触发检测

识别 "tts" 关键词作为 TTS 请求。该技能会自动过滤文本中的 TTS 相关关键词,避免将触发词本身也转换为语音。

高级自定义

使用 Node.js 脚本

如需更精细的控制,可直接使用内置脚本:

TTS 转换器

cd scripts
npm install
node tts-converter.js "要转换的文本" --voice en-US-AriaNeural --rate +10% --output output.mp3

参数说明:

  • --voice, -v:音色名称(默认:en-US-AriaNeural)
  • --lang, -l:语言代码(如 en-US、es-ES)
  • --format, -o:输出格式(默认:audio-24khz-48kbitrate-mono-mp3)
  • --pitch:音调调节(如 +10%、-20%、default)
  • --rate, -r:语速调节(如 +10%、-20%、default)
  • --volume:音量调节(如 +0%、-10%、default)
  • --save-subtitles, -s:将字幕保存为 JSON 文件
  • --output, -f:输出文件路径(默认:tts_output.mp3)
  • --proxy, -p:代理地址(如 http://localhost:7890)
  • --timeout:请求超时时间(毫秒,默认:10000)
  • --list-voices, -L:列出可用音色

配置管理器

cd scripts
npm install
node config-manager.js --set-voice en-US-AriaNeural

node config-manager.js --set-rate +10%

node config-manager.js --get

node config-manager.js --reset

音色选择

常用音色(使用 --list-voices 查看完整列表):

英语:

  • en-US-MichelleNeural(女声,自然风格,默认)
  • en-US-AriaNeural(女声,自然风格)
  • en-US-GuyNeural(男声,自然风格)
  • en-GB-SoniaNeural(女声,英式英语)
  • en-GB-RyanNeural(男声,英式英语)

其他语言:

  • es-ES-ElviraNeural(西班牙语,西班牙)
  • fr-FR-DeniseNeural(法语)
  • de-DE-KatjaNeural(德语)
  • ja-JP-NanamiNeural(日语)
  • zh-CN-XiaoxiaoNeural(中文)
  • ar-SA-ZariyahNeural(阿拉伯语)

语速指南

语速值使用百分比格式:

  • "default":正常语速
  • "-20%" 至 "-10%":较慢、清晰(适合教程、故事、无障碍场景)
  • "+10%" 至 "+20%":略快(适合摘要)
  • "+30%" 至 "+50%":较快(适合新闻、追求效率的场景)

输出格式

根据使用场景选择音频质量:

  • audio-24khz-48kbitrate-mono-mp3:标准质量(语音消息、即时通讯)
  • audio-24khz-96kbitrate-mono-mp3:高质量(演示文稿、内容创作)
  • audio-48khz-96kbitrate-stereo-mp3:最高质量(专业音频、音乐)

资源说明

scripts/tts-converter.js

主要的 TTS 转换脚本,基于 node-edge-tts。可生成自定义音色、语速、音量、音调和格式的音频文件,支持字幕生成和音色列表查询。

scripts/config-manager.js

管理用户的 TTS 偏好设置(音色、语言、格式、音调、语速、音量),配置保存在 ~/.tts-config.json。

scripts/package.json

NPM 包配置文件,包含 node-edge-tts 依赖。

references/node_edge_tts_guide.md

node-edge-tts npm 包的完整文档,包含:

  • 按语言分类的完整音色列表
  • 韵律参数(语速、音调、音量)
  • 使用示例(命令行和模块两种方式)
  • 字幕生成
  • 输出格式
  • 最佳实践和使用限制

音色试听

可在此网站试听不同音色并预览音频质量:https://tts.travisvn.com/

需要了解特定音色详情或高级功能时,请参阅上述资源。

安装

使用内置脚本前,请先安装依赖:

cd /home/user/clawd/skills/public/tts-skill/scripts
npm install

将安装以下依赖:

  • node-edge-tts - TTS 库
  • commander - 命令行参数解析

工作流程

  1. 识别意图:检查用户消息中是否包含 "tts" 触发词或关键词
  2. 选择方式:简单请求使用内置 tts 工具,需要自定义时使用 scripts/tts-converter.js
  3. 生成音频:将目标文本(消息、搜索结果、摘要等)转换为语音
  4. 返回用户:tts 工具返回 MEDIA: 路径,由 Clawdbot 完成音频分发

测试

基本测试

运行测试脚本验证 TTS 功能:

cd /home/user/clawd/skills/public/edge-tts/scripts
npm test

将生成一个测试音频文件,并验证 TTS 服务是否正常运行。

音色试听

在此网站试听不同音色并预览音频质量:https://tts.travisvn.com/

集成测试

使用内置 tts 工具进行快速测试:

// 示例:使用默认设置测试 TTS
tts("This is a test of the TTS functionality.")

配置测试

验证配置持久化功能:

cd /home/user/clawd/skills/public/edge-tts/scripts
node config-manager.js --get
node config-manager.js --set-voice en-US-GuyNeural
node config-manager.js --get

故障排查

  • 测试连通性:运行 npm test 检查 TTS 服务是否可访问
  • 检查音色可用性:使用 node tts-converter.js --list-voices 查看可用音色
  • 验证代理设置:如使用代理,用 node tts-converter.js "test" --proxy http://localhost:7890 测试
  • 检查音频输出:测试应在 scripts 目录下生成 test-output.mp3 文件

注意事项

  • node-edge-tts 使用微软 Edge 在线 TTS 服务(已更新,认证有效)
  • 无需 API 密钥(免费服务)
  • 默认输出 MP3 格式
  • 需要网络连接
  • 支持字幕生成(JSON 格式,包含词级别的时间戳)
  • 临时文件处理:默认情况下,音频文件保存在系统临时目录(Unix 系统为 /tmp/edge-tts-temp/,Windows 系统为 C:\Users\<user>\AppData\Local\Temp\edge-tts-temp\),文件名唯一(如 tts_1234567890_abc123.mp3)。文件不会自动删除——调用方(Clawdbot)应在使用后负责清理。如需永久保存,可使用 --output 参数指定自定义输出路径。
  • TTS 关键词过滤:该技能会自动过滤文本中的 TTS 相关关键词(tts、TTS、text-to-speech),避免将触发词本身转换为语音
  • 如有常用偏好设置,可使用 config-manager.js 设置默认值
  • 默认音色:en-US-MichelleNeural(女声,自然风格)
  • 以 Neural 结尾的神经网络音色比标准音色质量更高
Skills enregistrées