Voice.ai Voices
2026-03-30
新闻来源:网淘吧
围观:26
电脑广告
手机广告
Voice.ai 语音
✨ 功能特性
- 9 种语音角色- 针对不同使用场景精心打造的语音
- 11 种语言- 采用多语言模型实现多语言合成
- 流式传输模式- 实时生成音频输出
- 语音设计- 可通过 temperature 和 top_p 参数进行定制
- OpenClaw 集成- 可与 OpenClaw 内置的 TTS 协同工作
⚙️ 配置
将您的 API 密钥设置为环境变量:
export VOICE_AI_API_KEY="your-api-key"
获取您的 API 密钥: Voice.ai 仪表板

📦 安装
无需安装步骤。此技能捆绑了 Node.js CLI 和 SDK(无外部 npm 依赖项)。
🧩 关键文件
scripts/tts.js- CLI 入口点voice-ai-tts-sdk.js- CLI使用的Node.js SDKvoices.json- CLI使用的语音定义voice-ai-tts.yaml- API规范package.json- 工具使用的技能元数据
安全说明
请参阅SECURITY.md以获取完整的安全和隐私概述。
本技能:
- 仅向以下地址发起出站HTTPS请求:
https://dev.voice.ai - 读取本地文件:
voices.json - 将音频输出写入
--output路径(默认为output.mp3) - 不执行shell命令,也不修改系统配置文件
🌐 API端点
SDK和规范使用https://dev.voice.ai,这是Voice.ai官方的生产环境API域名。
🤖 OpenClaw集成
如果您的环境已配置VOICE_AI_API_KEY,OpenClaw可直接调用CLI脚本。请根据您的OpenClaw安装配置使用/tts相关命令。
📝 触发指令
以下聊天指令适用于OpenClaw:
| 指令 | 说明 |
|---|---|
/tts <文本> | 使用默认语音生成语音 |
/tts --voice ellie <文本> | 使用指定语音生成语音 |
/tts --stream <文本> | 使用流式模式生成语音 |
/voices | 列出可用语音 |
示例:
/tts Hello, welcome to Voice.ai!
/tts --voice oliver Good morning, everyone.
/tts --voice lilith --stream This is a long story that will stream as it generates...
🎙️ 可用语音列表
| 声音 | ID | 性别 | 角色设定 | 最适合用于 |
|---|---|---|---|---|
| 艾莉 | d1bf0f33-8e0e-4fbf-acf8-45c3c6262513 | 女性 | 青春活力 | 视频博客、社交媒体内容 |
| 奥利弗 | f9e6a5eb-a7fd-4525-9e92-75125249c933 | 男性 | 英伦风 | 旁白、教程 |
| 莉莉丝 | 4388040c-8812-42f4-a264-f457a6b2b5b9 | 女性 | 柔和 | ASMR、舒缓内容 |
| 斯穆思 | dbb271df-db25-4225-abb0-5200ba1426bc | 男性 | 深沉 | 纪录片、有声书 |
| 暗影 | 72d2a864-b236-402e-a166-a838ccc2c273 | 男性 | 独特 | 游戏、娱乐 |
| sakura | 559d3b72-3e79-4f11-9b62-9ec702a6c057 | 女性 | 动漫 | 角色配音 |
| zenith | ed751d4d-e633-4bb0-8f5e-b5c8ddb04402 | 男性 | 低沉 | 游戏、戏剧内容 |
| flora | a931a6af-fb01-42f0-a8c0-bd14bc302bb1 | 女性 | 欢快 | 儿童内容、积极向上 |
| commander | bd35e4e6-6283-46b9-86b6-7cfa3dd409b9 | 男性 | 英雄气概 | 游戏、动作内容 |
🌍 支持的语言
| 代码 | 语言 |
|---|---|
en | 英语 |
es | 西班牙语 |
fr | 法语 |
de | 德语 |
it | 意大利语 |
pt | 葡萄牙语 |
pl | 波兰语 |
ru | 俄语 |
nl | 荷兰语 |
sv | 瑞典语 |
ca | 加泰罗尼亚语 |
对非英语语言使用多语言模型:
const audio = await client.generateSpeech({
text: 'Bonjour le monde!',
voice_id: 'ellie-voice-id',
model: 'voiceai-tts-multilingual-v1-latest',
language: 'fr'
});
🎨 语音设计
使用以下参数自定义语音输出:
| 参数 | 范围 | 默认值 | 描述 |
|---|---|---|---|
temperature | 0-2 | 1.0 | 数值越高越富有表现力,数值越低越稳定一致 |
top_p | 0-1 | 0.8 | 控制语音生成中的随机性 |
示例:
const audio = await client.generateSpeech({
text: 'This will sound very expressive!',
voice_id: 'ellie-voice-id',
temperature: 1.8,
top_p: 0.9
});
📡 流式模式
使用实时流生成音频(推荐用于长文本):
# Stream audio as it generates
node scripts/tts.js --text "This is a long story..." --voice ellie --stream
# Streaming with custom output
node scripts/tts.js --text "Chapter one..." --voice oliver --stream --output chapter1.mp3
SDK 流式调用:
const stream = await client.streamSpeech({
text: 'Long text here...',
voice_id: 'ellie-voice-id'
});
// Pipe to file
stream.pipe(fs.createWriteStream('output.mp3'));
// Or handle chunks
stream.on('data', chunk => {
// Process audio chunk
});
🔊 音频格式
| 格式 | 描述 | 使用场景 |
|---|---|---|
mp3 | 标准 MP3 (32kHz) | 通用场景 |
wav | 未压缩 WAV | 高质量 |
pcm | 原始PCM音频 | 处理中 |
opus_48000_128 | Opus 128kbps | 流式传输 |
mp3_44100_192 | 高品质MP3 | 专业版 |
查看voice-ai-tts-sdk.js以获取所有格式选项。
💻 命令行界面使用
# Set API key
export VOICE_AI_API_KEY="your-key-here"
# Generate speech
node scripts/tts.js --text "Hello world!" --voice ellie
# Choose different voice
node scripts/tts.js --text "Good morning!" --voice oliver --output morning.mp3
# Use streaming for long texts
node scripts/tts.js --text "Once upon a time..." --voice lilith --stream
# Show help
node scripts/tts.js --help
📁 文件
voice-ai-tts/
├── SKILL.md # This documentation
├── README.md # Quick start
├── CHANGELOG.md # Version history
├── LICENSE.md # MIT license
├── SECURITY.md # Security & privacy notes
├── voices.json # Voice definitions
├── voice-ai-tts.yaml # OpenAPI specification
├── voice-ai-tts-sdk.js # JavaScript/Node.js SDK
├── package.json # OpenClaw metadata
├── scripts/
│ └── tts.js # CLI tool
💰 成本与用量
Voice.ai采用基于积分的系统。请检查您的使用情况:
// The SDK tracks usage via API responses
const voices = await client.listVoices();
// Check response headers for rate limit info
降低成本的建议:
- 对长文本使用流式传输(更高效)
- 尽可能缓存生成的音频
- 根据您的使用场景选择合适的音频质量
🔗 链接
📋 更新日志
v1.1.5 (2026-02-16)
- 通过
metadata.clawdbot声明运行时要求,以便 ClawHub 显示所需的环境变量
v1.1.4 (2026-02-16)
- 在元数据中将
VOICE_AI_API_KEY声明为主要环境变量
v1.1.3 (2026-02-16)
- 从发布的捆绑包中移除语音样本上传功能,以降低隐私风险
- 要求仅通过环境变量提供
VOICE_AI_API_KEYv1.1.2 (2026-02-16)
v1.1.2 (2026-02-16)
- 已添加
SECURITY.md和LICENSE.md用于来源追溯和透明度 - 将SDK传输限制为仅HTTPS
v1.1.1 (2026-02-16)
- 针对ClawHub导入的打包元数据改进(bin/files元数据)
v1.1.0 (2026-02-16)
- 在元数据中声明了所需凭证
- 记录了生产API端点域名
- 为符合IP安全标签要求重命名了语音角色
- 添加了
voices.json用于语音数据
v1.0.0 (2025-01-31)
- 初始版本
- 9个精选的语音角色
- 支持11种语言
- 流式传输模式
- 语音设计参数
- 包含错误处理的完整SDK
- CLI工具
🛠️ SDK 快速参考
const VoiceAI = require('./voice-ai-tts-sdk');
const client = new VoiceAI(process.env.VOICE_AI_API_KEY);
// List voices
const voices = await client.listVoices({ limit: 10 });
// Get voice details
const voice = await client.getVoice('voice-id');
// Generate speech
const audio = await client.generateSpeech({
text: 'Hello, world!',
voice_id: 'voice-id',
audio_format: 'mp3'
});
// Generate to file
await client.generateSpeechToFile(
{ text: 'Hello!', voice_id: 'voice-id' },
'output.mp3'
);
// Stream speech
const stream = await client.streamSpeech({
text: 'Long text...',
voice_id: 'voice-id'
});
// Delete voice
await client.deleteVoice('voice-id');
❓ 故障排除
| 错误 | 原因 | 解决方案 |
|---|---|---|
AuthenticationError
(认证错误) | API 密钥无效 | 请检查您的VOICE_AI_API_KEY |
PaymentRequiredError
(需要付费错误) | 额度已用完 | 请访问 voice.ai/dashboard 添加额度 |
RateLimitError
(速率限制错误) | 请求过多 | 请等待后重试,或升级您的套餐 |
ValidationError
(验证错误) | 参数无效 | 请检查文本长度和 voice_id |
由 Nick Gill 倾情制作 ❤️Nick Gill
文章底部电脑广告
手机广告位-内容正文底部


微信扫一扫,打赏作者吧~