通用 AI 生图:文生图 / 图生图 / 图像变体。当用户说 AI 生图、AI 画图、文生图、图生图、生成图片、生成配图、图像生成、AI 出图、AI 作图、换图、改图、图像编辑、给我画一张、生成一张图 时使用。支持 OpenAI 兼容 API 与 apimart 异步 API,用户自备 API key。
日本語の概要は準備中です。原文の説明を表示しています。
多角色对话配音:按 cast 和逐行对白为不同角色分配音色与情绪,合成多声线音轨和带角色名字幕。当用户说“多角色/双人/剧本/对话配音、多人对白、不同角色不同声音、有声剧配音”时使用。单一公共音色用 tts-voiceover;克隆本人音色用 voice-clone;整部短剧制作由 short-drama 编排。
インストールする前に、エージェントに与えられる指示の中身を確認できます。
把「多人对话 / 多角色脚本」合成为多声线音轨——每个角色一个符合其人设的声音,
不再是「全程一个声音」。核心引擎 skills/shared/scripts/multivoice.py:
逐行调 tts.py(edge-tts 免费多音色)或 voice_clone.py(云端表现力 provider / 克隆音色)合成,
把每行 emotion 喂进 provider 的真情感通道,ffmpeg 拼成一轨 + 生成对齐的说话人字幕。
创意(谁说什么、什么情绪)由你 LLM 产出;音色映射在 cast。确定性 IO(逐行合成/拼接/字幕)走引擎。 产物
voice.mp3可直接当 narration 喂auto-short-video/assemble.py或加进任意视频;voice.srt是带角色名的字幕。
edge-tts 没有情感引擎,只能变速变调,再怎么调也像机器平读。要"像人"必须用有情感通道的云 provider(用户自备 key,无需 GPU):
引擎(cast 里 engine) | 质量 | 需要 | 情感机制 |
|---|---|---|---|
edge(默认,免费兜底) | ⚠️ 平、机器感,仅供草稿 | 无 key、外网 | 仅 rate/pitch/volume 微调 |
clone+openai-compatible→SiliconFlow CosyVoice2(推荐) | 好、中文自然 | VOICE_API_KEY(便宜/新用户赠额) | 内联 <|endofprompt|> 指令 |
clone+gemini | 好、真免费 | GEMINI_API_KEY(Google 免费层,国内需代理) | 自然语言前缀 |
clone+minimax / dashscope | 好、有情绪 | 各家 key | emotion 枚举 / instruct |
推荐 SiliconFlow(云端 CosyVoice2、无需 GPU、中文最稳)配置落 .env:
VOICE_PROVIDER=openai-compatible
VOICE_BASE_URL=https://api.siliconflow.cn/v1
VOICE_API_KEY=<你的key>
VOICE_MODEL=FunAudioLLM/CosyVoice2-0.5B
VOICE_INSTRUCT_MODE=inline
cast 里角色:--engine clone --provider openai-compatible --voice-id FunAudioLLM/CosyVoice2-0.5B:alex(8 音色 alex/anna/benjamin/…)。
lines.json 每行的 emotion(愤怒/崩溃大哭/冷笑/温柔…)→ 引擎按 provider 转成对应情感参数。写具体越贴戏越好。engine=clone);配了 key 才有情绪,没 key 自动回退 edge(平)并告警。voice_clone.py 头部(各家 env);voice_clone.py check --provider <名> 离线校验 key 是否齐。短剧对白(short-drama 已内部委派)、论文双人问答讲解(paper-explainer:主讲+提问者)、 访谈/播客脚本、有声剧、任何「多个说话人」的口播。单人整段口播用 tts-voiceover 即可。
| 字段 | 必填 | 说明 |
|---|---|---|
| cast.json | 是 | 选角表:每个说话人 → 音色(edge 音色 + pitch/rate,或克隆音色)。含「旁白/主讲」条目 |
| lines.json | 是 | 逐行对白:有序 [{speaker, text, emotion}](speaker 用 cast 里的名字;emotion 如 冷/怒/紧张/温柔,自动匹配语气) |
| 输出路径 | 否 | voice.mp3(默认与调用方约定);voice.srt 同名 |
先读 skills/shared/references/voice-casting.md(音色→人物原型对照 + 同性别区分 + 旁白独立 + 情绪韵律)。
为每个说话人定一个符合其性别/年龄/气质/身份的音色,旁白/主讲单列且与所有角色不同:
python skills/shared/scripts/multivoice.py cast init --cast <路径>/cast.json
python skills/shared/scripts/multivoice.py cast add --cast <路径>/cast.json \
--name 林策 --role male_lead --voice zh-CN-YunxiNeural --rate=-5% --pitch=-3Hz --note "冷峻男主" # 负值参数用等号
python skills/shared/scripts/multivoice.py cast add --cast <路径>/cast.json \
--name 苏晚 --role female_lead --voice zh-CN-XiaoxiaoNeural --note "温婉女主"
python skills/shared/scripts/multivoice.py cast check --cast <路径>/cast.json # 校验:音色有效/旁白独立/无撞音色
cast.json 也可直接写(就是 JSON)。想让某角色像真人有情绪(治 AI 平读)→ 该角色用云 provider:
python skills/shared/scripts/multivoice.py cast add --cast <路径>/cast.json \ --name 霸总 --role male_lead --engine clone --provider minimax --voice-id <你的音色id> --note "克隆/表现力音色"需在
.env配对应 provider 的 key(voice_clone.py check --provider minimax);缺 key 该角色自动回退 edge(平)并告警。
把脚本 / 对话稿拆成有序逐行:
{"lines":[
{"speaker":"主讲","text":"这篇论文解决了一个关键问题。","emotion":"平"},
{"speaker":"提问","text":"等等,为什么现有方法不行?","emotion":"惊"},
{"speaker":"主讲","text":"因为它们忽略了时序依赖。","emotion":"坚定"}
]}
speaker 必须与 cast 里的名字一致(不一致会回退旁白音色并告警);emotion 可选。
python skills/shared/scripts/multivoice.py dub \
--cast <路径>/cast.json --lines <路径>/lines.json -o <路径>/voice.mp3
产出 voice.mp3(每角色独立声线、情绪自动调韵律)+ voice.srt(带角色名,时序按逐行实测时长对齐)。
dub 会打印用了几种声线——确认 ≥2 种(多人对话不该只有一个声音)。
voice.mp3 作 narration + voice.srt 作字幕,喂 auto-short-video/scripts/assemble.py(图/视频合成)。style.md 融进音色气质选择(角色气质→音色);preferences.md 红线过滤台词。cast check + dub 声线数把关)。engine=clone+provider(有真情感通道),无需 GPU。dub 即可,不必重来。见 EASEL-META.md。多声线配音(cast + 逐行 lines + 按角色音色逐行合成 + ffmpeg 拼接 + 说话人字幕)为 Easel 自研;
底层封装 edge-tts(tts.py)与云端克隆(voice_clone.py)。
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
通用 AI 生图:文生图 / 图生图 / 图像变体。当用户说 AI 生图、AI 画图、文生图、图生图、生成图片、生成配图、图像生成、AI 出图、AI 作图、换图、改图、图像编辑、给我画一张、生成一张图 时使用。支持 OpenAI 兼容 API 与 apimart 异步 API,用户自备 API key。
日本語の概要は準備中です。原文の説明を表示しています。
AI 音乐 / BGM 生成:给短视频、社媒内容生成原创背景音乐 / 配乐 / 纯音乐。通过可插拔 provider(阿里 DashScope / Suno 类第三方 API)文生音乐,异步提交→轮询→下载,产物可再裁剪/归一化或加到视频。当用户说“AI 音乐”“AI 配乐”“生成 BGM”“背景音乐”“原创音乐”“AI 作曲”“纯音乐”“给视频配乐”“做首曲子”时使用。与 tts-voiceover 的区别:tts-voiceover 生成人声口播/旁白,ai-music 生成背景音乐/配乐(无人声或带演唱)。
日本語の概要は準備中です。原文の説明を表示しています。
AI 视频生成:文生视频 / 图生视频 / 数字人首帧驱动。通过可插拔 provider(通义万相 Wan / 火山 Seedance / 快手可灵 / OpenAI 兼容)异步生成视频,用户自备 API key。当用户说 AI 视频生成、文生视频、图生视频、AI 生成视频、AI 短视频、让图片动起来、数字人视频、生成一段视频 时使用。与 video-strategy(选型/策略)、video-editing(剪辑处理)、clipify(切片)区别:本 SKILL 是从 0 用 AI 生成新视频。
日本語の概要は準備中です。原文の説明を表示しています。
outputs/ 目录下的产物管理:按日期/平台/类型归档、打标签、搜索历史内容、生成素材清单。 当用户说"整理素材"、"归档"、"找之前的内容"、"搜索历史"、"素材管理"、 "outputs 整理"、"之前做的"时使用。 与其他 produce 层 SKILL 的区别:produce 层负责生成内容, asset-manager 负责生成后的产物管理(归档、检索、标签)。
日本語の概要は準備中です。原文の説明を表示しています。
音频降噪:去除录音中的背景噪声、电流声、风噪、嗡嗡声,基于 ffmpeg 滤镜链(afftdn/highpass/lowpass)。 当用户说"降噪""去噪""去杂音""消除背景噪声""电流声""风噪""录音有杂音""音频降噪"时使用。 和 audio-editing 的区别:audio-editing 做剪辑/转码/音量等通用音频操作(内置 denoise 兜底),本 SKILL 专做降噪调参。
日本語の概要は準備中です。原文の説明を表示しています。
通用音频处理:音频剪辑/裁剪、格式转码(mp3/wav/m4a/aac)、音量归一化、从视频提取音轨、多段拼接、淡入淡出、变速(保音高)。当用户说“剪音频”“裁一段”“转成 mp3”“调音量/响度”“提取音轨/扒音频”“拼接音频”“淡入淡出”“加速/减速音频”“变速不变调”时使用。与 audio-denoise 的区别:audio-denoise 专做降噪,audio-editing 做除降噪外的通用音频操作(也内置 denoise 作为兜底)。
日本語の概要は準備中です。原文の説明を表示しています。