Jarvis TTS 语音合成
功能
用 Microsoft edge-tts 生成高质量语音,然后用 macOS afplay 播放。提供自然流畅的中文语音输出。
使用场景
- - AI 助手语音回复
- 文字转语音
- 有声读物播放
- 语音通知/提醒
优势
- - ✅ 自然 - 微软 Neural TTS,接近真人声音
- ✅ 流畅 - 完整播放,不会中断
- ✅ 多音色 - 支持多种中文语音(男声/女声)
- ✅ 离线 - 生成后可重复播放
使用方法
基本用法
CODEBLOCK0
示例
CODEBLOCK1
可用语音
中文男声
- -
zh-CN-YunxiNeural - 阳光活泼(默认) - INLINECODE1 - 激情运动风
- INLINECODE2 - 专业新闻播报
中文女声
- -
zh-CN-XiaoxiaoNeural - 温暖 - INLINECODE4 - 活泼
工作流程
CODEBLOCK2
详细步骤
- 1. 生成语音 - edge-tts 调用微软 TTS API 生成 MP3
- 检查文件 - 确认生成成功且文件大小正常
- 播放音频 - afplay 播放直到完成
- 清理 - 删除临时文件
脚本说明
jarvis-tts.py
Python 脚本,执行 TTS 生成和播放。
依赖:
- - Python 3
- edge-tts (
pip3 install edge-tts)
用法:
CODEBLOCK3
jarvis-tts.sh
Shell 封装脚本,方便直接调用。
用法:
CODEBLOCK4
技术细节
音频生成
CODEBLOCK5
播放保证
- - 等待生成完成再播放
- 检查文件大小确保成功
- 同步播放直到完成
超时处理
- - 生成超时:60 秒
- 播放超时:根据音频长度自动计算
限制
- - 仅支持 macOS(依赖 afplay)
- 需要安装 edge-tts
- 需要网络连接(调用微软 API)
扩展建议
如需支持其他平台:
- - Linux: 用
aplay 或 paplay 替代 INLINECODE8 - Windows: 用
powershell -c (New-Object Media.SoundPlayer) 播放
相关文件
- -
scripts/jarvis-tts.py - 主脚本 - INLINECODE11 - Shell 封装
Jarvis TTS 语音合成
功能
用 Microsoft edge-tts 生成高质量语音,然后用 macOS afplay 播放。提供自然流畅的中文语音输出。
使用场景
- - AI 助手语音回复
- 文字转语音
- 有声读物播放
- 语音通知/提醒
优势
- - ✅ 自然 - 微软 Neural TTS,接近真人声音
- ✅ 流畅 - 完整播放,不会中断
- ✅ 多音色 - 支持多种中文语音(男声/女声)
- ✅ 离线 - 生成后可重复播放
使用方法
基本用法
bash
jarvis-tts.sh 要说的内容
示例
bash
简单回复
jarvis-tts.sh 好的,马上执行
长文本
jarvis-tts.sh 从一数到一百:一、二、三...一百。数完了!
指定语音
jarvis-tts.sh 你好 --voice zh-CN-YunxiNeural
可用语音
中文男声
- - zh-CN-YunxiNeural - 阳光活泼(默认)
- zh-CN-YunjianNeural - 激情运动风
- zh-CN-YunyangNeural - 专业新闻播报
中文女声
- - zh-CN-XiaoxiaoNeural - 温暖
- zh-CN-XiaoyiNeural - 活泼
工作流程
文字输入 → edge-tts 生成 MP3 → afplay 播放 → 完成
详细步骤
- 1. 生成语音 - edge-tts 调用微软 TTS API 生成 MP3
- 检查文件 - 确认生成成功且文件大小正常
- 播放音频 - afplay 播放直到完成
- 清理 - 删除临时文件
脚本说明
jarvis-tts.py
Python 脚本,执行 TTS 生成和播放。
依赖:
- - Python 3
- edge-tts (pip3 install edge-tts)
用法:
bash
python3 jarvis-tts.py 要说的内容
jarvis-tts.sh
Shell 封装脚本,方便直接调用。
用法:
bash
./jarvis-tts.sh 要说的内容
技术细节
音频生成
python
python3 -m edge_tts \
--voice zh-CN-YunxiNeural \
--text 要说的内容 \
--write-media /tmp/output.mp3
播放保证
- - 等待生成完成再播放
- 检查文件大小确保成功
- 同步播放直到完成
超时处理
- - 生成超时:60 秒
- 播放超时:根据音频长度自动计算
限制
- - 仅支持 macOS(依赖 afplay)
- 需要安装 edge-tts
- 需要网络连接(调用微软 API)
扩展建议
如需支持其他平台:
- - Linux: 用 aplay 或 paplay 替代 afplay
- Windows: 用 powershell -c (New-Object Media.SoundPlayer) 播放
相关文件
- - scripts/jarvis-tts.py - 主脚本
- scripts/jarvis-tts.sh - Shell 封装