Communitygithub.com

akachandan1/video-studio

引导式工作室,用于制作带有旁白和事实核查的解说视频,采用 Vox 风格的编辑外观(粗体拼贴、纯色色块、标记注释、大数字)或纸板立体模型纪录片风格。

video-studio 是什么?

此 AI 助手技能可引导用户完成创建专业风格解说视频的完整流程,从构思到最终交付。它支持 Vox 风格的粗体拼贴美学或纸板立体模型纪录片外观,并允许用户选择使用代码生成的场景或 AI 生成的素材。该技能通过将脚本按 10 秒一个区块进行组织,并确保每个事实通过两个独立来源进行交叉验证,从而确保事实准确性。它在幕后使用 HyperFrames 构建最终剪辑,输出 16:9 和/或 9:16 格式的视频,并包含字幕、动画数字标注和原创配乐。对于开发者而言,此技能将手动视频制作者的繁琐工作流程转化为结构化、可重复且对话式的体验,支持使用 Kokoro(离线)或 edge-tts(在线)引擎进行语音合成。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/akachandan1/video-studio/tree/HEAD/.claude/skills/explainer

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

解说(Vox 风格)→ HyperFrames

一个约 60 秒的解说视频是 N 个区块 × 10 秒(60 秒 = 6 个区块)。区块 k 的旁白文字区块在其对应的画面之上播放。工具:.claude/skills/explainer/tools/ ($T)。样式指南:references/styles.md。带来源的工作示例:examples/explainer-eiffel/。

使用体验

感觉就像使用一个精心制作的应用程序,而不是在终端里对话:

  • 每次只做一个阶段,然后停止并等待。一个加粗的阶段标题,配上一个合适的表情符号。
  • 设置和选择以表格形式呈现;各部分之间用 --- 分隔;行文简短,留出呼吸空间。
  • 无内部噪音: 绝不要叙述文件写入、工具检查、时间计算等过程。仅在用户操作或缺少某些内容时说话。
  • 任何需要粘贴的内容都放在一个仅包含提示词的代码块中;标签和注释放在外部。

阶段 0 — 静默检查(从不叙述)

setup/doctor.sh --quiet。如果 videos/ 中存在解说项目(内部有 pack.json),则打开时显示“欢迎回来 — 创建一个新视频,还是继续 <最新项目>?”而不是阶段 1。

阶段 1 — 欢迎 🎬

简短的欢迎语,一个 5 行的表格说明工作流程(构思 → 外观 → 语音 → 场景 → 最终剪辑),然后提出一个问题:*视频应该关于什么?*任何粗略的想法都可以,或者输入 find one 来查找本周的热门话题。停止。

阶段 2 — 话题与设置 ⚙️

  • find one → 网络搜索当前热门话题;提供前 3 个,每个附带一行钩子(一个为什么/如何的提问 + 一个令人惊讶的数字 + 为什么它看起来会很好)。跳过悲剧和八卦。由用户选择;绝不替他们选择。
  • 否则,将想法提炼成一个单行的角度:一个答案令人惊讶的问题。

然后是一个带有默认值的设置表格;输入 go 接受所有设置:

设置默认值选项
外观collagecollage(粗体编辑拼贴) · diorama(怀旧纸板立体模型纪录片)
画面codecode(自由,在 HyperFrames 中构建) · ai(Higgsfield 或任何生成器) · mixed
长度60 秒30 秒 – 10 分钟,以 10 秒为一个区块
宽高比16:916:9 · 9:16 · 两者

停止。

阶段 3 — 研究与脚本(静默)

创建 videos/<slug>/。研究每一个论断: 网络搜索,根据两个独立来源交叉核对每个数字,并保留 URL。如果来源不一致,使用安全的数据或放弃该数据。一个模糊的真实陈述胜过精确的错误陈述,所以绝不要编造数字、引述或预测。

为每个区块编写一行旁白文字,数字用文字拼写出来,使用平实的语言:

  • Kokoro 语音:每行 22–26 个单词。edge-tts 语音:每行 18–20 个单词。语音步骤最终会纠正偏差。
  • 结构:冷开场(最令人惊讶的事实,没有问候语)→ 风险的严重性 → 证据(每个区块一个想法,每个都具体:一个数字、日期或地点,层层递进)→ 转折 → 结局,收尾呼应区块 1。
  • 语调:好奇、精确、略带诙谐。它在解释事情;它绝不推销。
  • 跨区块设计:一个反复出现的“英雄”物体,它会再次出现并发生变化(比如塔、集装箱、硬币);一个早期提出,最后回答的问题;一个令人难忘的揭示时刻。

对于每个区块,还需要选择一个标注(屏幕上的数字或两个单词的事实,≤ 9 个字符,例如 +15 cm、2.5M、7 yrs)和一个画面。在代码模式下,画面 kind 是 tower 风格的剪影(适配 SVG)、dots、bars、lean、calendar 或 stat 之一。编写 pack.json(格式如下)。暂时不显示任何内容。

阶段 4 — 语音 🎙

语音声音引擎
am_michael美国男声,冷静的纪录片风格Kokoro(离线,默认)
bm_george英国男声,沉稳Kokoro
af_heart美国女声,温暖清晰Kokoro
en-US-ChristopherNeural / en-GB-RyanNeural / en-US-JennyNeuralMicrosoft 神经网络语音edge-tts(免费,在线)

输入 samples → 用三种 Kokoro 语音分别生成区块 1 的语音文件并发送。停止。

阶段 5 — 简报 📋(门控)

一条消息:

  • 一个表格,包含角度、主线、外观、画面、长度/区块数、宽高比和语音
  • 脚本,形式为 区块 1 … N
  • 来源列表

结束语:“都满意吗?或者需要修改任何内容?” 循环直到用户批准。用户可以重写任何一行。

阶段 6 — 画面

code 模式: 跳转至阶段 8。每个区块变成一个拼贴场景:一个色块、纸张纹理、递增计数的标注、一个自动绘制的标记圆圈以及画面。

ai / mixed 模式:

  1. 风格关键帧 🎨: 用一句话提供 3 个命名的变体(相同的视觉系统,不同的调色板或构图,来自 references/styles.md)。选择后,给出可粘贴的图像提示词。 Higgsfield: nano_banana_pro,宽高比与视频相同。在生成前需要引用成本并等待“是”的确认。一个图像锁定外观;它会附加到每个场景。
  2. 场景 🎬: 每个区块一条消息(如果要求也可以一次性全部发送)。每个消息都以其旁白文字作为上下文,并提供一个基于 references/styles.md 中模板构建的可粘贴提示词:STYLE / SCENE / MOTION / AUDIO / AVOID。设置表格:参考图像 = 风格关键帧,10 秒,720p+,环境音开启,保存为 blockNN.mp4。 直接使用 Higgsfield: 使用风格关键帧进行 kling3_0 专业版图像转视频。在生成前需要引用总量(区块数 × 积分)。或者用户可以在他们喜欢的任何生成器中运行提示词(Veo、Kling、Runway…)。
  3. 剪辑回家 📥: 用户将文件放入 videos/<slug>/clips/ 目录。自动重命名明显的变体(Block 1.mp4 → block01.mp4);仅当配对确实模糊时才询问。没有获得剪辑的区块自动回退到代码生成的场景。

阶段 7 — 检查剪辑(静默)

从每个剪辑中提取一帧并查看。如果风格不符或过于写实:加强 STYLE 和 AVOID 约束行,仅重新生成该区块。连续两次相同的失败意味着重写提示词,而不仅仅是更换随机种子。在 collage 模式下,AI 剪辑中出现的可读文字视为失败(文字应存在于我们的标注和字幕中)。

阶段 8 — 语音与剪辑制作(静默)

~/.local/share/hf-kokoro/bin/python $T/voice.py videos/<slug>                 # 或 --engine edge --voice en-GB-RyanNeural

每次录制必须落在 7.5 到 9.7 秒之间。该工具会列出不合格的项目:重写那些行(缩短或加长),使用 --only 3,5 重新配音,并重复此过程直到全部符合要求。绝不要进行时间缩放。

.venv/bin/python $T/build.py videos/<slug> [--aspect 9:16]                     # 生成 index.html + assets/mix.wav
cd videos/<slug> && npx --yes [email protected] lint && npx --yes [email protected] render -o raw.mp4
ffmpeg -y -i raw.mp4 -af loudnorm=I=-14:TP=-1:LRA=11 -c:v copy -c:a aac -b:a 192k "../../out/<Title> (16x9).mp4"

lint 会警告关于嵌套结构和密集轨道的问题。这些涉及 Studio 时间线视图,不影响渲染,因此可以忽略它们。但错误必须修复。为每个区块截取一帧(snapshot . --at 2.5,12.5,…)并检查:数字位于一行内,标记圆圈围绕数字,字幕不遮挡画面。

阶段 9 — 交付 ✅

发送 MP4 文件。然后附带一个小表格:话题、长度和宽高比、外观和语音、来源(链接)。提供选项:渲染另一种宽高比、修改任何一个区块、或者制作一个新视频。

pack.json

{ "title": "…", "angle": "…", "through_line": "…", "look": "collage", "aspect": "16:9",
  "voice": { "engine": "kokoro", "name": "am_michael" },
  "blocks": [ { "line": "…", "callout": { "big": "+15 cm", "label": "在最热的日子里更高" },
                "visual": { "kind": "bars", "values": [10, 30, 60, 100], "highlight": 3 },
                "prompt": "(ai 模式) 完整场景提示词" } ],
  "sources": [ "发布者 — 标题: https://…" ] }

同时编写一个人类可读的 pack.md(简报、脚本、提示词、来源)。这是项目的记录文件。

规则

  • 事实:每个数字有两个来源;每个视频都附带来源。不能编造数字、引述或预测。
  • 只有引用模型 × 数量 × 积分并得到“是”的确认后才能进行付费生成(PLAYBOOK #1)。
  • 不要生成真人人脸的近景画面;使用中景、剪影或遮盖条,这也可以避免审核拒绝。
  • Vox 风格是一种致敬。绝不能在视频中使用 Vox 的徽标、名称或品牌。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

akachandan1/video-studio

Painterly and illustrated animation — Kurzgesagt-style flat science explainers ("what's inside", scale, mechanisms), art-history styles (Van Gogh, Monet, Lichtenstein, Kusama, Matisse, cubism, ink wash, 8-bit, Roman mosaic, cave painting, Persian miniature…). Uses the huashu-art-motion canvas engine with CUSTOM scenes, renders MP4s, and assembles/scores them in HyperFrames. Also the claude-animation plugin for hand-drawn 2D.

akachandan1/video-studio

Add styled, word-synced captions (and an optional scroll-stopping hook) to a talking video. The user gives a video; you transcribe it, show every caption style rendered on their own footage, they pick a style and hook, and you render the captioned MP4. Use when the user uploads/gives a video and says "caption this", "add captions/subtitles", "make captions", "caption styles", "add a hook", or invokes /caption-video.

akachandan1/video-studio

Fast CapCut-style chop-cut reel with a story — showreels, hype edits, launch teasers, "make it punchy". One canvas engine on a beat grid (punch-ins on cuts, flash frames, impact shakes, whip pans, speed ramps, freeze frames) rendered in HyperFrames, in 16:9 and 9:16 from one edit, with an original synthesized score locked to the cuts.

akachandan1/video-studio

Apple / OpenAI-style product launch film or premium spec ad (30–60 s) — minimal supers, big product moments, signature transition, piano/pulse score, end-card lockup. Shots come from code (HyperFrames scenes), Higgsfield AI image→video, or real product footage, all assembled and rendered in HyperFrames. Includes the fold-cut builder (shots hinge shut/open on the centre line).

相关技能