Communitygithub.com

awk-effects - 滚动停止特效

一键为谈话视频添加多种滚动停止特效:文字置于头部后方、玻璃小部件、聚光灯带闪光、清单动画、文字或照片环绕头部、人物克隆、卢比计数器、iPhone 通知/开关、突发新闻切换、冻结帧名字标注、动态柱状图、编辑时间线覆盖、2.5D 照片视差、地图飞入标点以及转场效果(缩放冲击、穿透缩放、甩动、抖动、闪烁、漏光)。适用于“加特效”、“头部后方文字”、“玻璃小部件”、“聚光灯”、“清单动画”、“新闻风格”、“冻结帧介绍”、“转场”等场景。

awk-effects - 滚动停止特效 是什么?

这是一个名为 awk-effects 的 AI 代理技能,专为对话视频(如谈话类视频)添加“滚动停止”特效。它允许用户通过一个命令,基于秒数或语音识别到的关键词(例如“@views”或 Devanagari 拼写),精确控制特效的触发时刻。该技能支持包括文字置于头部后方、玻璃小部件、聚光灯、清单、文字/照片环绕头部、人物克隆、货币计数器、iPhone UI 模拟、突发新闻切换、冻结帧标注、动态柱状图、编辑时间线覆盖、2.5D 照片视差、地图飞入等多种特效,以及多种转场效果。其工作原理是利用 Vision 框架进行人体分割和面部跟踪,结合 Remotion 渲染透明图层,再通过 ffmpeg 合成最终视频。该技能尤其适合内容创作者、视频编辑者和 AI 代理用户,在类似 Claude Code 或 Cursor 的环境中快速为视频添加专业、吸引眼球的视觉效果,无需复杂的后期制作。用户只需提供一个简单的 JSON 配置文件即可描述特效序列。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/aiwalakapil/awk-studio/tree/HEAD/skills/awk-effects

在你喜欢的 AI 中提问

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

文档

特效 (AI Wala Kapil Studio)

一个片段 → 多种特效,一个命令。时间控制支持按秒或通过某个口播词("@views"、"@कमाई+0.2";英语单词也会匹配 Whisper 的梵文转写,例如 link ↔ लिंक)。

运行

python3 ~/.claude/skills/awk-effects/scripts/effects.py --list                      # 所有特效及其属性
python3 ~/.claude/skills/awk-effects/scripts/effects.py VIDEO.mp4 --spec fx.json --preview 3.2   # 生成一张预览图,快速
python3 ~/.claude/skills/awk-effects/scripts/effects.py VIDEO.mp4 --spec fx.json -o VIDEO_fx.mp4

fx.json:

[
 {"fx": "title-behind",  "t": 0.0, "dur": 2.6, "props": {"text": "FREE|CLASS"}},
 {"fx": "orbit-text",    "t": 2.6, "dur": 4.0, "props": {"images": ["~/Pictures/a.png", "~/Pictures/b.png", "~/Pictures/c.png"], "size": 0.25}},
 {"fx": "clone",         "t": 6.9, "dur": 1.6, "props": {"count": 2, "lag": 0.4}},
 {"fx": "edit-timeline", "t": 8.6, "dur": 3.0, "props": {"title": "🎬 视频就是这样制作的", "y": 0.6}},
 {"fx": "photo-3d",      "t": 12.0, "dur": 3.0, "props": {"photo": "~/Pictures/creator.png", "label": "您也可以成为创作者 ✨"}},
 {"fx": "map-flyto",     "t": 15.0, "dur": 3.0, "props": {"image": "~/maps/india.png", "x": 0.27, "y": 0.6, "label": "孟买"}},
 {"fx": "transition",    "t": "@फटाफट", "dur": 0.4, "props": {"kind": "zoom-punch"}},
 {"fx": "checklist",     "t": 5.4, "dur": 3.0, "props": {"title": "需要做什么", "items": ["打开个人主页链接", "填写表格", "提交"], "every": 0.6}},
 {"fx": "iphone-ui",     "t": "@私信", "dur": 2.2, "props": {"app": "Instagram", "title": "aiwalakapil", "body": "新消息", "icon": "📩"}},
 {"fx": "spotlight",     "t": 10.8, "dur": 2.0, "props": {"label": "说明中的链接", "glitter": true}},
 {"fx": "glass-widgets", "t": 13.0, "dur": 3.0, "props": {"items": [{"icon": "🔥", "title": "观看次数", "value": "4.2万"}]}},
 {"fx": "money-counter", "t": 16.2, "dur": 2.4, "props": {"to": 50000, "label": "课程的价值"}},
 {"fx": "chart",         "t": 18.8, "dur": 2.6, "props": {"title": "注册人数", "bars": [{"label": "第1天", "value": 58}, {"label": "第2天", "value": 111}]}},
 {"fx": "news-cut",      "t": 21.5, "dur": 2.0, "props": {"headline": "免费AI课程开始!"}},
 {"fx": "freeze-callout","t": 24.0, "dur": 1.6, "props": {"name": "KAPIL", "sub": "AI Wala Kapil"}}
]

工作原理

  • tools/awkvision (基于 Apple Vision,设备端执行) 每段视频处理一次,生成人物蒙版 + 面部轨迹 (缓存为 VIDEO.matte.mp4、VIDEO.faces.json;首次构建会编译 Swift 工具,对于 60 fps 4K 视频,每 25 秒约需 1 分钟,--fast-matte 用于加速)。
  • Remotion 渲染出一个透明的后方层 (人物下方) 和前方层;ffmpeg 合成顺序为:视频 → 后方层 → 人物抠像 → 前方层。
  • 聚光灯、环绕文字、玻璃小部件、头部后方文字以及冻结帧标注会自动跟随面部。
  • clone 特效通过 ffmpeg 结合蒙版合成:复制的人物在时间上错开,并排显示 (预览模式 --preview 中不显示)。
  • photo-3d 使用 Apple Vision 从任意照片中抠出主体,并将其置于背景前制造深度感。
  • map-flyto 需要一张地图图片 (x/y 为图像比例);请使用高分辨率地图,小图在缩放时会显得模糊。
  • 属性中的本地图片路径 (images、image、photo) 会自动复制到工作室中。

Claude 工作流程

  1. 转录或阅读脚本,挑选 4–8 个关键时刻 (前 2 秒内的钩子、数字、列表、行动号召)。不要连续堆叠特效;每个 1–3 秒,之间留出喘息空间。
  2. 制作完整渲染前,始终使用 --preview T 预览几个关键帧并查看效果。
  3. 短视频中的顺序:自动裁剪 → 自动缩放 → 特效 → 字幕 → 音效 → 音频调整 (缩放和转场会重绘视频,因此字幕要放在后面)。
  4. 头部后方文字会根据头部上方空间自动调整大小;头发会覆盖最后一行文字的下半部分 (这是设计的效果)。每行短词 (≤ 8 个字母) 阅读效果最佳。
  5. 对于已有烧录文字框的视频,请将特效放置在空白区域,或使用全屏时刻 (新闻切换、照片 3D、冻结帧标注、聚光灯),避免画面冲突。
  6. 玻璃卡片带有色调 (而非模糊),以便在任何画面中都能清晰阅读。

相关技能