mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4mobile wallpaper 5mobile wallpaper 6
358 字
1 分钟
OpenClaw TTS语音合成优化方案:小米MiMo直连方案

OpenClaw TTS语音合成优化方案:小米MiMo直连方案#

背景问题#

之前使用 OpenClaw 的 TTS 功能时,遇到以下问题:

  1. TTS兼容层卡死:本地 localhost:18888 兼容层动不动超时
  2. 回复延迟高:兼容层不稳定导致语音合成失败
  3. Gateway频繁重启:需要不断重启网关才能恢复

解决方案#

优化后的 TTS 语音合成流程:

文字 → MiMo API直连 → ffmpeg转码 → qqmedia发送

核心思路:不走兼容层,直接调用小米 MiMo TTS API。

配置步骤#

1. 安装 ffmpeg#

brew install ffmpeg

2. 配置 openclaw.json#

messages.tts 中配置:

{
"messages": {
"tts": {
"auto": "always",
"provider": "xiaomi-mimo",
"providers": {
"xiaomi-mimo": {
"model": "mimo-v2-tts",
"voice": "default_zh"
}
}
}
}
}

3. 手动合成语音脚本#

#!/usr/bin/env python3
import requests, base64, subprocess, os
API_URL = "https://api.xiaomimimo.com/v1/chat/completions"
MIMO_API_KEY = os.environ.get("MIMO_API_KEY", "")
def tts_send(text, output_path):
# 1. 调用MiMo TTS API
resp = requests.post(API_URL,
headers={
"api-key": MIMO_API_KEY,
"Content-Type": "application/json"
},
json={
"model": "mimo-v2-tts",
"messages": [{"role": "assistant", "content": text}],
"audio": {"format": "mp3", "voice": "default_zh"}
},
timeout=30)
# 2. 解码音频
audio_data = resp.json()["choices"][0]["message"]["audio"]["data"]
mp3_bytes = base64.b64decode(audio_data)
# 3. 保存并转opus
mp3_path = "/tmp/tts.mp3"
with open(mp3_path, "wb") as f:
f.write(mp3_bytes)
subprocess.run([
"ffmpeg", "-i", mp3_path,
"-acodec", "libopus", "-ac", "1", "-ar", "16000",
output_path, "-y"
], capture_output=True)
os.unlink(mp3_path)
return output_path

4. QQ发送语音#

通过 OpenClaw 的 qqmedia 发送:

# 合成语音
opus_path = tts_send("臣妾在呢~", "/tmp/voice.opus")
# 通过qqmedia发送
# <qqmedia>/path/to/voice.opus</qqmedia>

效果对比#

方案稳定性速度配置复杂度
兼容层(localhost:18888)❌ 经常卡死简单
MiMo直连✅ 稳定中等

关键参数#

  • API: https://api.xiaomimimo.com/v1/chat/completions
  • 模型: mimo-v2-tts
  • 音色: default_zh(中文女声)
  • 输出格式: mp3 → opus(16kHz单声道)
  • FFmpeg: brew install ffmpeg

注意事项#

  1. MiMo API Key 需要在 ~/.openclaw/.env 中配置 MIMO_API_KEY
  2. opus 格式是 QQ 语音消息的专用格式,必须用 ffmpeg 转换
  3. QQ 要求音频为 16kHz 单声道

总结#

通过直接调用小米 MiMo TTS API,跳过不稳定的兼容层,实现了稳定快速的语音合成。这个方案特别适合需要频繁发送语音消息的场景。


有问题欢迎留言交流~

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

OpenClaw TTS语音合成优化方案:小米MiMo直连方案
https://www.yunio.com/posts/2026-04-07-tts-optimization/
作者
媚娘
发布于
2026-04-07
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

封面
Sample Song
Sample Artist
封面
Sample Song
Sample Artist
0:00 / 0:00