SuperAPI AI 工具集

minimax-tts-pipeline

办公与效率

查看项目

更新于 10-16 01:58

技能介绍

MiniMax TTS 发音控制技能将文本文件逐步处理发音问题,最终调用 MiniMax TTS API 生成音频。

用途

本技能用于将文本文件通过 MiniMax TTS API 生成中文口播音频,自动处理多音字、英文缩写、混合模型名、数字读法等高频发音错误。当用户说“使用MiniMax生成口播音频”时触发。

输入参数

  • 文本文件路径:必填,待处理的 .txt 文件绝对路径。
  • 输出目录:可选,默认在输入文件同目录下创建 tts-{YYYYMMDD-HHMMSS}/ 目录。

用户发音规则管理

当用户提出添加/查询/删除/修改发音规则(如“Qwen 读作千问”“看看有哪些规则”“删掉 Qwen 的规则”)时,读取 <SKILL_DIR>/references/manage-user-rules.md 和 <SKILL_DIR>/references/pronunciation-rules.md,然后按指引操作 <SKILL_DIR>/user-rules.json。

工作流

输入.txt → input.raw.txt → [脚本] normalize_punctuation.py → input.txt → [脚本] scan_terms.py → terms.json(草稿) → [Subagent 1] 补全规范化 → terms.json → [脚本] validate + generate_normalized.py → normalized.txt → [Subagent 2] 补全读法 + 多音字识别 → terms.json → [脚本] validate → [Subagent 3] 复核 → terms.json(review.pass) → [脚本] validate + call_tts.py → output.wav + output.title → [脚本] title_to_srt.py → output.srt。

其中 <SKILL_DIR> 表示本 skill 目录的绝对路径,<run_dir> 表示当前运行输出目录的绝对路径。

使用方式

Step -1:环境预检测。依次检测 Python 版本(需 >= 3.10)、requests 库是否安装,以及 <SKILL_DIR>/.env 中的 MINIMAX_API_KEY 是否配置;未配置时向用户询问并写入 .env。

Step 0:初始化运行目录。从用户输入获取文本文件路径,创建 <input_dir>/tts-{YYYYMMDD-HHMMSS}/ 目录,复制输入文件为 input.raw.txt,执行标点规范化与候选词扫描。若因沙箱或权限限制无法写入输入文件同级目录,必须先请求用户授权。

Step 1:大小写规范化判断。Subagent 阅读操作指引、发音规则参考、用户自定义规则、原文与候选词,处理 terms.json 中每个 term 的 normalized、category、reason 字段,校验通过后生成 normalized.txt。

Step 2:发音读法判断。Subagent 处理 terms.json 中每个 term 的 reading、category 字段,并识别原文中遗漏的多音字。

Step 3:质量复核。Subagent 按操作指引检查项对 terms.json 做最终质量复核。

Step 4:生成音频和字幕 JSON。调用 call_tts.py,生成并落盘 WAV 音频 output.wav,下载并落盘 MiniMax 返回的字幕 JSON output.title。

Step 5:生成 SRT 字幕。根据 output.title 与 output.wav 生成 output.srt,并向用户报告音频文件路径、MiniMax 字幕 JSON 文件路径、SRT 字幕文件路径、使用 tone 规则条数与替换文本处数。

落盘文件

tts-YYYYMMDD-HHMMSS/ 下包含:input.raw.txt(原始输入,只读)、input.txt(标点规范化后的输入,只读)、terms.json(全流程唯一结构化工作文件)、normalized.txt(规范化后的文本)、output.wav(MiniMax TTS 输出音频)、output.title(MiniMax 返回的字级时间戳字幕 JSON)、output.srt(据 output.title + output.wav 生成的 SRT 字幕)。

约束

全流程只维护一份 terms.json,所有 subagent 都直接修改这同一个文件。LLM 只改 terms.json,不直接修改 normalized.txt 或 input.txt。文本替换、tone 生成、API 调用全部由脚本执行。任一阶段校验失败就停止,不继续后续阶段。MINIMAX_API_KEY 从 <SKILL_DIR>/.env 文件读取。

资源说明

scripts/ 下包括:normalize_punctuation.py <input> <output>(阶段 0,对换行缺失句末标点的文本补充句号)、scan_terms.py(阶段 0,从原文提取候选词生成 terms.json 草稿)、validate_terms.py <terms_json> <stage>(阶段 1/2/3 校验 terms.json schema)、generate_normalized.py <input> <terms> <output>(阶段 1 后根据 terms.json 生成规范化文本)、call_tts.py <normalized> <terms> <output_wav> [output_title](阶段 4 调用 MiniMax TTS API 生成 WAV 音频并下载字幕 JSON)、title_to_srt.py <input_title> <input_wav> [output_srt](阶段 5 根据 MiniMax 字幕 JSON 和 WAV 音频生成 SRT 字幕)。

references/ 下包括:pronunciation-rules.md(发音规则速查,含 category 枚举、reading 格式、关键约束)、manage-user-rules.md(用户发音规则管理指引,按需加载)、api-voice-settings.md(MiniMax API 请求中 voice_id、speed、vol、pitch 参数说明与修改位置)、step-1-normalize.md(step 1 操作指引)、step-2-reading.md(step 2 操作指引)、step-3-review.md(step 3 操作指引)。

其他文件包括:user-rules.json(用户自定义发音规则,agent 通过对话维护,各步骤消费)、.env(MiniMax API Key 存储)。

API 声音参数修改

如果用户询问或想修改 MiniMax TTS API 请求中的音色、语速、音量、语调参数(voice_id、speed、vol、pitch),需先阅读 <SKILL_DIR>/references/api-voice-settings.md。这些参数需要直接在 <SKILL_DIR>/scripts/call_tts.py 的 payload 中修改。

限制

资料未提供具体收费、价格、支持平台范围、音频时长上限、并发限制或效果保证等信息。