通过 DubbingX 智声云配 API 为角色台词生成高质量 TTS 配音音频。
本 skill 的脚本位于: {SKILL_DIR}/scripts/
pip install requests
脚本需要 DubbingX 平台的 API Key,在环境变量中配置:
DUBBINGX_API_KEY: DubbingX API KeyAPI Key 在 DubbingX 客户端中生成。如未配置环境变量,可通过 --api-key 参数传入。
运行 list_voices.py 筛选合适音色:
python {SKILL_DIR}/scripts/list_voices.py --grade premium --gender 1 --age-group 青年
python {SKILL_DIR}/scripts/list_voices.py --grade premium --gender 0 --age-group 青年
参数说明:
--grade: premium(全情绪) / ordinary(单情绪) / custom(多情绪)--gender: 0(女) / 1(男)--age-group: 孩童/少年/青年/中年/老年--keyword: 关键字搜索用户确认每个角色对应的 voiceId 后,进入下一步。
使用 generate_tts.py 生成单条台词试听:
python {SKILL_DIR}/scripts/generate_tts.py \
--voice-id 30002 \
--text "都交给我。" \
--emotion "常规-日常说话-2" \
--language zh \
--format mp3
参数说明:
--voice-id: 音色 ID(从 list_voices.py 获取)--text: 台词文本,支持 停顿标签和 段 音素标注--emotion: 情绪格式,全情绪音色为 类型-风格-档位(如 常规-日常说话-3),详见 emotion-map.md--language: zh/en/jp/yue--audio-speed: 语速 0.7-1.3,默认 1.0--audio-pitch: 语调 0.7-1.3,默认 1.0--format: wav/mp3,默认 mp3脚本返回 task_id,然后用 query_tts.py 查询和下载。
# 单个任务
python {SKILL_DIR}/scripts/query_tts.py \
--task-id <TASK_ID> --output-dir ./output/
# 批量任务(传入 task_map.json)
python {SKILL_DIR}/scripts/query_tts.py \
--task-map task_map.json --output-dir ./output/
Completed: 自动下载音频Generating/Ready: 提示等待Failed: 显示错误准备 JSON 配置文件,格式如下:
{
"voice_map": {
"红狼": {"voice_id": "30002", "language": "zh"},
"露娜": {"voice_id": "30010", "language": "zh"},
"牧羊人": {"voice_id": "30005", "language": "zh"}
},
"dialogues": [
{
"shot_id": "E1-S1-03",
"character": "红狼",
"emotion": "常规-日常说话-2",
"text": "都交给我。"
}
]
}
运行批量生成:
python {SKILL_DIR}/scripts/batch_generate.py \
--config dialogue_config.json \
--output-dir ./赛博朋克/配音/
脚本会输出 task_map.json,用 query_tts.py --task-map 批量下载。
DubbingX 全情绪音色支持 8 大类情绪(常规/开心/恐惧/厌恶/惊喜/生气/悲伤/哭泣),每类有多种风格,全情绪音色支持 1-5 档强度。格式为 类型-风格-档位,如 开心-大声-4。
emotionCustom 参数,可用自然语言描述情绪 标签控制,最长 20 秒共 1 个版本