04db423416
- 70 skills with code and documentation - Add .gitignore (ignore __pycache__, output/, temp/, venv/) - Clean up test intermediates and caches
157 lines
3.4 KiB
Markdown
157 lines
3.4 KiB
Markdown
# Audio Generator Skill
|
|
|
|
文本转音频生成技能,使用 Edge TTS 生成高质量中文语音。
|
|
|
|
## 功能特性
|
|
|
|
- 支持 Markdown、纯文本、分隔符三种格式
|
|
- 自动分割长文本为章节
|
|
- 使用微软 Edge TTS,语音自然流畅
|
|
- 支持批量生成和增量更新
|
|
- 可指定特定章节生成
|
|
|
|
## 安装依赖
|
|
|
|
```bash
|
|
pip install edge-tts
|
|
```
|
|
|
|
## 使用方法
|
|
|
|
### 生成音频
|
|
|
|
```bash
|
|
# 生成纯文本音频
|
|
python scripts/generate_audio.py text.txt
|
|
|
|
# 生成 Markdown 音频
|
|
python scripts/generate_audio.py doc.md --format markdown
|
|
|
|
# 指定输出目录
|
|
python scripts/generate_audio.py text.txt --output-dir ./my_audio
|
|
```
|
|
|
|
### 合并音频
|
|
|
|
```bash
|
|
# 合并指定目录所有MP3为一个完整版
|
|
python scripts/merge_audio.py ./audio_chapters
|
|
|
|
# 指定输出文件名
|
|
python scripts/merge_audio.py ./audio_chapters --output 完整版.mp3
|
|
|
|
# 指定文件模式
|
|
python scripts/merge_audio.py ./audio_chapters --pattern "chapter_*.mp3"
|
|
```
|
|
|
|
### 高级用法
|
|
|
|
```bash
|
|
# 使用不同语音
|
|
python scripts/generate_audio.py text.txt --voice zh-CN-YunxiNeural
|
|
|
|
# 只生成特定章节
|
|
python scripts/generate_audio.py text.txt --chapters "第一章,第二章"
|
|
|
|
# 按分隔符分割(适用于有【章节标题】的文本)
|
|
python scripts/generate_audio.py text.txt --format separator
|
|
```
|
|
|
|
## 可用语音
|
|
|
|
| 语音代码 | 性别 | 特点 |
|
|
|---------|------|------|
|
|
| zh-CN-XiaoxiaoNeural | 女 | 晓晓,适合长文朗读,自然流畅 |
|
|
| zh-CN-YunxiNeural | 男 | 云希,适合旁白解说 |
|
|
| zh-CN-YunjianNeural | 男 | 云健,适合新闻播报 |
|
|
| zh-CN-XiaoyiNeural | 女 | 晓伊,温柔亲切 |
|
|
|
|
完整语音列表:https://speech.platform.bing.com/consumer/speech/synthesize/readaloud/voices/list?trustedclienttoken=6A5AA1D4EAFF4E9FB37E23D68491D6F4
|
|
|
|
## 文本格式建议
|
|
|
|
### Markdown 格式
|
|
```markdown
|
|
## 第一章:标题
|
|
内容...
|
|
|
|
## 第二章:标题
|
|
内容...
|
|
```
|
|
|
|
### 分隔符格式(推荐)
|
|
```
|
|
================================================================
|
|
【第一章】
|
|
内容...
|
|
|
|
================================================================
|
|
【第二章】
|
|
内容...
|
|
```
|
|
|
|
## 输出结构
|
|
|
|
```
|
|
output_dir/
|
|
├── 01_第一章标题.mp3
|
|
├── 02_第二章标题.mp3
|
|
├── 03_第三章标题.mp3
|
|
└── ...
|
|
```
|
|
|
|
## 工作流程集成
|
|
|
|
这个技能通常用于以下工作流程:
|
|
|
|
1. **知识库转音频**
|
|
- 将知识库文档转换为可听的音频课程
|
|
- 便于通勤、运动时学习
|
|
|
|
2. **长文朗读**
|
|
- 将长篇文章分段生成音频
|
|
- 支持离线收听
|
|
|
|
3. **内容创作**
|
|
- 为视频配音
|
|
- 生成播客内容
|
|
|
|
## 最佳实践
|
|
|
|
1. **预处理文本**
|
|
- 移除不必要的 Markdown 标记
|
|
- 添加适当的口语化表达
|
|
- 添加术语解释
|
|
|
|
2. **章节划分**
|
|
- 每个章节控制在 5-10 分钟
|
|
- 过长内容可以进一步细分
|
|
|
|
3. **语音选择**
|
|
- 课程内容:晓晓(女声)或云希(男声)
|
|
- 故事朗读:根据角色选择合适语音
|
|
- 新闻播报:云健
|
|
|
|
## 故障排除
|
|
|
|
### 生成失败
|
|
- 检查 edge-tts 是否安装:`pip list | grep edge`
|
|
- 检查网络连接(Edge TTS 需要联网)
|
|
- 检查文本编码是否为 UTF-8
|
|
|
|
### 文件名问题
|
|
- 脚本会自动清理非法字符
|
|
- 章节标题过长会被截断
|
|
|
|
## 更新日志
|
|
|
|
### v1.0.0 (2026-02-19)
|
|
- 初始版本
|
|
- 支持三种文本格式
|
|
- 支持章节过滤
|
|
- 支持多种语音
|
|
|
|
## License
|
|
|
|
MIT License
|