Skip to content
EN

Back to the catalog

minimax-tts-pipeline

yangagent/minimax-tts-pipeline-skill · skills.sh

Open source Repository Open in the app JSON README (API)

About

Skill publicada por yangagent/minimax-tts-pipeline-skill no skills.sh. Instale com: npx skills add yangagent/minimax-tts-pipeline-skill@minimax-tts-pipeline

Details

Kind
Agent skills
Publisher
yangagent
Origin
skillssh
Category
ferramentas
Stars
21
Forks
5
Last push
2026-05-27T08:37:31Z
Repository state
ativo
Language
Python
Added
2026-10-07 05:32:42
Updated
2026-10-07 05:32:42
Origin id
yangagent/minimax-tts-pipeline-skill/minimax-tts-pipeline

README

# MiniMax TTS Pipeline Skill

一个TTS Skill,用于将中文口播逐字稿文本通过 MiniMax TTS API 生成高质量音频,自动处理多音字、英文缩写、品牌名、版本号等高频发音错误。

## 工作流程

```
输入.txt
  │
  ├─ Step -1: 环境预检测(检查 API Key)
  ├─ Step 0:  初始化运行目录 + 标点规范化 + 候选词扫描
  ├─ Step 1:  大小写规范化判断(LLM)
  ├─ Step 2:  发音读法判断 + 多音字识别(LLM)
  ├─ Step 3:  质量复核(LLM)
  ├─ Step 4:  调用 MiniMax TTS API 生成音频 + 字幕 JSON
  └─ Step 5:  生成 SRT 字幕
```

核心数据流:

```
input.txt → normalize_punctuation.py → input.txt
         → scan_terms.py → terms.json(草稿)
         → [Step 1] 补全规范化 → terms.json
         → generate_normalized.py → normalized.txt
         → [Step 2] 补全读法 + 多音字 → terms.json
         → [Step 3] 复核 → terms.json(终稿)
         → call_tts.py → output.wav + output.title
         → title_to_srt.py → output.srt
```

## 输出文件

每次运行在输入文件同目录下创建 `tts-YYYYMMDD-HHMMSS/` 目录:

| 文件 | 说明 |
|------|------|
| `input.raw.txt` | 原始输入(只读) |
| `input.txt` | 标点规范化后的输入(只读) |
| `terms.json` | 全流程唯一结构化工作文件 |
| `normalized.txt` | 规范化后的文本 |
| `output.wav` | TTS 输出音频 |
| `output.title` | MiniMax 返回的字级时间戳字幕 JSON |
| `output.srt` | SRT 字幕文件 |

## 快速开始

### 1. 安装 Skill

通过 `npx skills add YangAgent/minimax-tts-pipeline` 命令安装

### 2. 配置 API Key

在 `skills/minimax-tts-pipeline/.env` 中配置:

```
MINIMAX_API_KEY=your_api_key_here
```

首次使用时 Skill 也会自动检测并提示输入。

### 3. 使用

在 Agent 中触发 Skill,提供文本文件路径即可:

> 使用 MiniMax 生成口播音频,内容文件路径:/path/to/your/script.txt

### 4. 自定义发音规则

支持通过对话管理发音规则,规则持久化到 `user-rules.json`:

- 添加:`"Qwen 都读作千问"`
- 查询:`"看看有哪些发音规则"`
- 删除:`"删掉 Qwen 的规则"`
- 修改:`"把 Qwen 的读法改成千问三"`

用户规则优先级最高,各步骤处理时会优先采用。

### 5. 调整声音参数

修改 `scripts/call_tts.py` 中 `voice_setting` 对象:

| 参数 | 说明 | 范围 | 默认值 |
|------|------|------|--------|
| `voice_id` | 音色 ID | 见 MiniMax 文档 | `male-qn-qingse` |
| `speed` | 语速 | `[0.5, 2]` | `1` |
| `vol` | 音量 | `(0, 10]` | `1` |
| `pitch` | 语调 | `[-12, 12]` | `0` |

## 项目结构

```
skills/minimax-tts-pipeline/
├── SKILL.md                    # Skill 定义(触发条件、工作流、约束)
├── .env                        # MiniMax API Key
├── user-rules.json             # 用户自定义发音规则
├── scripts/
│   ├── normalize_punctuation.py  # 标点规范化
│   ├── scan_terms.py             # 候选词提取
│   ├── validate_terms.py         # terms.json 校验
│   ├── generate_normalized.py    # 生成规范化文本
│   ├── call_tts.py               # 调用 MiniMax TTS API
│   └── title_to_srt.py           # 生成 SRT 字幕
└── references/
    ├── pronunciation-rules.md    # 发音规则速查
    ├── manage-user-rules.md      # 用户规则管理指引
    ├── api-voice-settings.md     # API 声音参数说明
    ├── step-1-normalize.md       # Step 1 操作指南
    ├── step-2-reading.md         # Step 2 操作指南
    └── step-3-review.md          # Step 3 操作指南
```

## 设计原则

- **LLM 只改 terms.json**:文本替换、tone 生成、API 调用全部由 Python 脚本执行
- **单文件工作流**:全流程只维护一份 `terms.json`,各步骤直接修改同一文件
- **阶段校验**:每个阶段完成后运行校验脚本,失败则停止,不进入下一阶段
- **不过度控制**:MiniMax TTS 本身能正确朗读大部分常见英文词,只为真正容易读错的词添加 tone 规则

## 依赖

- Python 3.10+
- `requests` 库
- MiniMax API Key(Speech 2.8 Turbo 模型)

More