PPT配音解说及AI解答

SKILL前端设计
前端设计 未标注权限 许可证不明确
安装这个技能

制作"会自己讲"的配音演示 PPT 的完整流水线——交互 HTML 课件 + 分步讲解逐字稿 + AI 配音(edge-tts 或声音克隆)+ 上传资料库并发布为可分享网站。当用户提出"做个 PPT 并配音"、"自动生成讲课语音"、"逐字稿配音"、"把 PPT 发布成网站链接"、"给课件加语音讲解"、"AI 讲师课件"、"培训课件配语音"等需求时使用。产出 16:9 分步揭示的交互 HTML 演示(每步一个讲解音频、可连播/暂停/静音/键盘控制),配套 Excel 逐字稿与按步编号的音频文件,并支持一键把音频打包上传资料库生成分享链接。附带可选能力:给课件加一个悬浮「🤖 AI 解答老师」面板,实时调用大模型(默认 DeepSeek)回答学员提问。当用户提到"给课件加AI答疑"、"PPT加AI老师"、"课件里嵌入AI问答"、"实时大模型答疑"时一并启用。

一句话选型结论

按资料字段整理

PPT配音解说及AI解答是前端设计类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类前端设计 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_ec2497fc/ppt-voiceover-narration-and-ai-qa
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

前端设计
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_ec2497fc仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验2026-11-06上游最后核验时间 · 数据更新 2026-11-06
正文体量10.8 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
出页面与组件

按描述生成页面结构和组件草稿。

调整样式与布局

改间距、配色与响应式布局。

生成设计说明

把设计稿整理成开发能接的说明。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在前端设计场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
PPT配音解说及AI解答当前 未标注权限 未标注 未标注 未标注 有
前端设计 只读 GitHub 仓库 882.3 万 Codex、Claude、Cursor 有
Vercel 组合模式 联网访问 GitHub 仓库 385.9 万 Codex、Claude、Cursor 有
Vercel React native skills 前端 只读 GitHub 仓库 246.9 万 Codex、Claude、Cursor 有
adapt 搜索 浏览器控制 GitHub 仓库 202.7 万 Codex、Claude、Cursor 有
使用我的浏览器 浏览器控制 GitHub 仓库 184.8 万 Codex、Claude、Cursor 有

SKILL.md 全文

10.8 KB
模型实际读到的说明书原文,来自技能仓库

PPT配音skill

目的

把"做课件 → 写讲稿 → 配语音 → 发链接"这条链路标准化。核心是一步一音:
PPT 的每个内容块 = 一条逐字稿 = 一个音频文件,序号全局连续、严格一一对应,
从而实现演示时"翻到哪讲到哪",甚至全自动连续讲解。

何时使用

  • 要做一份带语音讲解的演示/课件/培训材料
  • 已有 PPT 或大纲,需要补讲解稿并配音
  • 需要把配音课件发布成网页链接分享给别人
  • 需要用指定人的声音(克隆)来讲课
  • 想让课件带一个「AI 解答老师」:学员能配置大模型、实时提问、模型流式回答

硬性约定(贯穿全流程,不可违背)

  1. 一个 block = 一步 = 一条逐字稿 = 一个音频。全局序号从 0 起,跨页连续。
  2. 音频命名 {prefix}{序号补零}.{ext},序号从 1 起(= 全局序号 + 1)。
  3. 逐字稿行数 必须等于 block 总数,脚本会强校验。
  4. 交付前必须跑 verify_audio.py,缺失/空文件一律补齐后再交付。
  5. 改动 HTML 后必须做 JS 语法校验(见下)。

流水线

阶段 0 · 需求确认(缺什么问什么,别猜)

必须拿到:主题/受众/页数(或大纲)、是否要克隆音色。
- 要克隆 → 必须有参考音频与 ModelScope Token(ms-xxx),没有就问,不要编造默认值。
- 视觉风格:有参考海报/VI 就沿用其配色(写入 meta.colors);有 logo 就填 meta.logo。

阶段 1 · 内容策划:写 spec.json

按 assets/spec_example.json 的结构产出规格文件。先把大纲给用户确认再落盘成品。

block 的 5 种类型:

type 用途 字段
card 通用卡片 title, desc
list 要点列表 title, items[]
flow 横向流程(N 步) title, steps[{t,d}]
quote 金句/结论居中 title, text
kv 键值表/对照表 title, rows[[k,v]]

设计原则:一页 2~6 个 block 为宜;每页一个明确论点;流程用 flow,结论用 quote。

阶段 2 · 渲染 PPT

python scripts/render_ppt.py --spec spec.json --out 演示.html --manifest steps.json

输出每页步数清单。--manifest 生成"步号→页码/标题"对照表,写逐字稿时按它对齐。

阶段 3 · 写讲解逐字稿

按 references/lecture-script-style.md 的规范写,产出 script.json
(与 block 顺序一致的对象数组),然后:

python scripts/write_script_xlsx.py --spec spec.json --script script.json --out 讲课逐字稿.xlsx

行数不等会直接报错退出——这是保护机制,不要绕过。

阶段 4 · 生成音频

路线 A · edge-tts(免费,快速出全量)

python scripts/gen_edge_tts.py --xlsx 讲课逐字稿.xlsx --out-dir audio \
    --voice zh-CN-YunyangNeural --rate -3%

路线 B · 声音克隆(复刻指定人声)

python scripts/gen_clone_batch.py --xlsx 讲课逐字稿.xlsx --ref 参考.mp3 \
    --token ms-xxxx --out-dir audio --prefix clone_step_ --pad 2

83 条约 35 分钟,用后台任务跑。细节与坑见 references/voice-cloning.md。

推荐组合:先跑 A 打通全流程,再跑 B 替换(文件名对齐即可,改 spec.json 的
audio.prefix 与 audio.ext 后重新渲染)。

阶段 5 · 校验与本地交付

python scripts/verify_audio.py --spec spec.json --audio-dir audio \
    --pattern "clone_step_{n:02d}.mp3"

JS 语法校验(改完 HTML 必做):

python -c "import re;h=open('演示.html',encoding='utf-8').read();\
ms=re.findall(r'<script[^>]*>(.*?)</script>',h,re.S);open('_c.js','w',encoding='utf-8').write(max(ms,key=len))"
node --check _c.js && echo JS_OK && rm -f _c.js

然后 present_files 呈现 HTML。

阶段 5½ · 加 AI 解答老师(可选,默认 DeepSeek)

给课件加一个悬浮「🤖 AI 解答老师」面板:学员点开即可配置大模型(API Key / 模型 /
Base URL,存 localStorage,并自动读取同目录 Deepseek秘钥.txt),实时流式提问,回答逐字渲染;
勾选「附带当前课件页内容」会把正看的这一页文本作为上下文发给模型,答疑更贴题。

复用三个文件(id 严格对应,勿改):
- assets/ai_teacher.css → 内联进课件 <style>(紧挨 @media print 之前)
- assets/ai_teacher_panel.html → 放进 <body> 的 slides 之外
- assets/ai_teacher.js → 放在 </body> 前的 <script>

一键注入(推荐,最省事):渲染时直接加 --ai-teacher,脚本自动把上面三件套注入模板,
并自动给全局 keydown 翻页监听补上 INPUT/TEXTAREA 守卫(否则在 AI 输入框打字会被翻页拦截)。
课程专属人设用 --ai-system 人设.txt 传入,渲染时换成该文件内容:

python scripts/render_ppt.py --spec spec.json --out 演示.html \
    --ai-teacher --ai-system 人设.txt

不传 --ai-system 时,面板用 ai_teacher.js 里的默认占位人设,后续可手动改。

必改一处(手动注入时):打开 ai_teacher.js,把顶部 const SYSTEM = ... 换成本课程的答疑人设
(课程名、核心知识点、回答口径、红线约束)。示例见 references/ai-teacher.md 第三节。

调用方式(fetch 直连 DeepSeek):

POST https://api.deepseek.com/chat/completions
Authorization: Bearer <sk-...>
{ "model":"deepseek-flash", "messages":[...], "stream":true }

返回标准 SSE(data: {"choices":[{"delta":{"content":"…"}}]} … data:[DONE]),面板已内置解析。

CORS 兜底(关键):file:// 双击打开时直连常被跨域拦截。演示时运行本地代理:

python scripts/ai_proxy.py    # 默认读同目录 Deepseek秘钥.txt

再把面板 Base URL 改为 http://localhost:8787(秘钥字段可留空,代理注入)。代理已实测正常。
明细、秘钥文件约定、发布注意见 references/ai-teacher.md。

与本模板兼容:若课件主脚本有全局翻页快捷键,必须在 keydown 监听最前加 INPUT/TEXTAREA
守卫,否则在 AI 输入框打字会被翻页拦截(references/ai-teacher.md 第七节有代码)。

阶段 6 · 发布(按需二选一)

6A · 发布到资料库生成分享链接(推荐,保留版本、可持续编辑)
先压缩音频:python scripts/wav_to_mp3.py --in-dir audio --glob "*.wav" --out-dir audio_mp3
再按 references/library-publish.md 走:开启事务 → 逐个上传 HTML+音频+logo → 提交 →
publish_page.py 同步发布 → 校验发布产物。

6B · 自包含单文件(邮件/离线/第三方托管)

python scripts/build_standalone.py --html 演示.html --out 演示_自包含版.html \
    --audio-dir audio_mp3 --pattern "clone_step_{n:02d}.mp3" --count 83 --logo 公司logo.png

脚本清单

脚本 作用
render_ppt.py spec.json → 分步配音交互 HTML
write_script_xlsx.py 逐字稿 → Excel(行数强校验)
gen_edge_tts.py 批量 edge-tts 配音
indextts_clone.py 单条 IndexTTS 声音克隆
gen_clone_batch.py 批量克隆(复用上传、429 退避、断点续传)
wav_to_mp3.py wav → 单声道 mp3(体积降 8~10 倍)
verify_audio.py 交付前"每一步都有音频"自检
build_standalone.py 打包成单文件自包含 HTML
ai_proxy.py 本地代理,转发大模型请求、规避浏览器 CORS(AI 解答老师用)

全部脚本用 WorkBuddy 托管的 Python(venv)运行,路径形如
<用户目录>/.workbuddy/binaries/python/envs/default/Scripts/python.exe;
依赖 openpyxl、edge-tts、httpx、imageio-ffmpeg(缺则装进该 venv,禁止全局安装)。

常见坑速查

现象 真因 处理
页面空白 内容依赖 JS 揭示,但滚动未触发 模板已默认全部显示;存量文件见 references/legacy-ppt-retrofit.md
每页只讲第一句 未加连播 音频 ended → autoNext()(模板已内置)
发布后没声音 分享页是单文档壳,同级资源 404 音频必须进页面包,或改自包含版
音频在 CDN 上无法解码 CDN 把 .mp3 返回错误 Content-Type 模板已用 fetch+Blob 显式指定 MIME
克隆脚本报"推理失败" process_completed 无 success 字段 见 references/voice-cloning.md 三个坑
批量上传 429 请求过密 串行 + 间隔;参考音频只上传一次
提交后链接没变 没同步发布 commit 后必须 publish_page.py
首屏底部被截断 装饰元素过大/间距过大 缩小元素、压缩间距与字号
AI 老师无反应/保存无反馈 配置未落盘或无状态提示 面板已带状态栏+测试连接;发送前自动 saveCfg;F12 看 Console
直连 DeepSeek 报 CORS / Failed to fetch file:// 打开被跨域拦截 运行 python scripts/ai_proxy.py,Base URL 改 http://localhost:8787
在 AI 输入框打字触发翻页 主脚本全局 keydown 未排除输入框 keydown 最前加 INPUT/TEXTAREA 守卫(见 ai-teacher.md 第七节)
AI 回答与当前页无关 未勾选「附带当前课件页」或页文本取不到 确认 ctx-toggle 勾选;currentSlideText() 已兼容多数 slide 结构

交互能力(模板自带)

  • 开始遮罩(满足浏览器自动播放策略)
  • 一段讲完自动续播下一步,跨页自动翻页,末步停止
  • 控制条:⏮上一页 / ◀上一步 / ⏯暂停 / 🔁重播 / ▶下一步 / ⏭下一页 / 🔊静音 + 进度显示
  • 键盘:方向键·空格翻步,Home/End 跳首尾,P 暂停、R 重播、M 静音
  • 右侧圆点跳页;滚轮滑到某页自动激活并续播
  • 全页内容常驻可见,当前讲解项金色高亮
  • Ctrl+P 可直接导出 PDF(导航控件自动隐藏)

常见问题

5 问
答案由本站依据条目字段整理
PPT配音解说及AI解答怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_ec2497fc/ppt-voiceover-narration-and-ai-qa。安装方式为未标注。装完刷新技能列表或重开客户端。

PPT配音解说及AI解答支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

PPT配音解说及AI解答权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

PPT配音解说及AI解答收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

PPT配音解说及AI解答用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 2026-11-06。