介绍
# Jarvis Voice Persona
一种金属质感的 AI 语音,具有视觉转录样式,适用于 OpenClaw 助手。
## 功能
- **TTS 输出:** 通过 sherpa-onnx 进行本地语音合成(无需云 API) - **金属语音:** 使用 ffmpeg 音频处理实现机械共振 - **紫色转录:** 视觉上区分口语和书面内容 - **快速播放:** 2 倍速以实现高效沟通
## 环境要求
- `sherpa-onnx` 配合 VITS piper 模型(推荐 en_GB-alan-medium) - `ffmpeg` 用于音频处理 - `aplay` (ALSA) 用于音频播放
## 安装
### 1. 安装 sherpa-onnx TTS
```bash # Download and extract sherpa-onnx mkdir -p ~/.openclaw/tools/sherpa-onnx-tts cd ~/.openclaw/tools/sherpa-onnx-tts # Follow sherpa-onnx installation guide ```
### 2. 安装 jarvis 脚本
```bash cp {baseDir}/scripts/jarvis ~/.local/bin/jarvis chmod +x ~/.local/bin/jarvis ```
### 3. 配置音频设备
编辑 `~/.local/bin/jarvis` 并在 `aplay -D` 行中设置你的音频输出设备。
## 使用方法
### 朗读文本
```bash jarvis "Hello, I am your AI assistant." ```
### 在代理响应中使用
添加到你的 SOUL.md 中:
```markdown ## Communication Protocol
- **Hybrid Output:** Every response includes text + spoken audio via `jarvis` command - **Transcript Format:** **Jarvis:** <span class="jarvis-voice">spoken text</span> - **No gibberish:** Never spell out IDs or hashes when speaking ```
### 转录样式(需要 UI 支持)
添加到你的 webchat CSS 中:
```css .jarvis-voice { color: #9B59B6; font-style: italic; } ```
并在 markdown 清理中允许 `span`。
## 语音自定义
编辑 `~/.local/bin/jarvis` 以调整:
| 参数 | 效果 | |-----------|--------| | `--vits-length-scale=0.5` | 速度(数值越低越快) | | `aecho` 延迟 | 金属共振 | | `chorus` | 厚度/失谐 | | `highpass/lowpass` | 频率范围 | | `treble=g=3` | 金属光泽 |
### 预设
**更具机械感:** ``` aecho=0.7:0.7:5|10|15:0.4|0.35|0.3 ```
**更具人声感:** ``` aecho=0.4:0.4:20:0.2 ```
**更低沉:** ``` highpass=f=200,lowpass=f=3000 ```
## 故障排除
### 无音频输出 - 检查 `aplay -l` 以查看可用设备 - 更新 `-D plughw:X,Y` 参数
### 语音过快/过慢 - 调整 `--vits-length-scale`(0.3=极快,1.0=正常)
### 金属效果过强 - 减少回声延迟和合唱深度
## 文件
- `scripts/jarvis` — 带有金属处理的 TTS 脚本 - `SKILL.md` — 本文档
---
*一种为喜欢被听见而不仅仅是被阅读的助手准备的语音角色。*