跳到主要内容
AI教程

使用 onetake Claude Agent Skill 制作一镜到底的产品影片

了解 onetake 如何帮助 AI 智能体制作产品发布片、预告片和功能演示,让每个视觉节拍都从前一个节拍自然延续。本教程涵盖安装、提示词编写、节拍表规划、渲染、连续性验证、动态模糊、声音以及实用制作技巧。

使用 onetake Claude Agent Skill 制作一镜到底的产品影片

什么是 onetake?

onetake 是一项用于创建产品发布影片、预告片和功能演示的 Claude Agent Skill,所有内容都以一个连续镜头完成。它不使用淡入淡出在彼此无关的标题卡、UI 画面和功能界面之间切换,而是设计出能够让某个元素持续存在并成为下一段内容一部分的转场。

例如,提示栏可以展开成应用窗口,窗口可以重新排布成手机,或者一条线可以横跨桌面,成为下一段影片的第一条网格线。整个序列由单一摄像机连接起来,中间不进行剪切。

永远不会切换到下一张幻灯片的动态影片。

连续性为何重要

许多 AI 生成的动态视频逐个镜头看起来尚可,但整体观看时却像演示文稿。问题在于,每个场景都会替换前一个场景。onetake 将两个节拍之间的边界视为核心设计问题。

在每个边界处,制作都应明确一个能够延续下去的对象、形状、运动或摄像机关系。摄像机可以跟随主体,快速转向下一个落点,像手持摄影师一样移动,对碰撞做出反应,然后保持静止,为重要动作留出充分的呈现空间。

主要功能

  • 连续视觉延续:每个节拍都从前一个节拍中生长出来,而不是作为无关的替代画面出现。
  • 通过 HTML 重建界面:根据截图在 HTML 中重建产品 UI,并将其放置在摄像机平面上,避免使用屏幕录制,同时允许摄像机移动进入界面。
  • 经过测量的运动:运动库包含约 38 种运动,涵盖弹簧、入场、延续、接触、模拟、摄像机行为和流体背景。每种运动都是带有经过测量的速度曲线的基于时间的纯函数。
  • 运动模糊:在开启 180 度快门期间多次捕获运动画面,并在线性光中进行平均,使快速运动自然地产生拖影,而不是出现频闪。
  • 基于事件的声音:围绕影片中的事件安排拟音和合成音效,使用共享混响,并在重要碰撞声下压低音乐。
  • 确定性输出:定位到同一时间点会生成相同的画面。草稿以 1080p、每秒 30 帧为目标,最终渲染则可以以 4K、每秒 60 帧为目标。
  • 自动验证:项目会探测画面、检测边界,并评估视觉内容是否跨越边界延续。

安装技能

将仓库克隆到代理使用的 skills 目录中。对于 Claude Code,请运行:

git clone https://github.com/feitangyuan/onetake.git ~/.claude/skills/onetake

对于从 agents 目录读取技能的 Codex 或其他代理,请使用:

git clone https://github.com/feitangyuan/onetake.git ~/.agents/skills/onetake

仓库包含 SKILL.md 中的核心协议、lib/ 中的运动和 UI 工具、scripts/ 中的制作脚本、gallery/ 中的演示,以及 references/ 中的书面指南。

安装所需工具

onetake 需要带有 Playwright 和 Chromium 的 python3,以及 numpy、scipy、Pillow 和 matplotlib。参考分析还需要使用 opencv-python。此外还需要 ffmpeg 和 node。

如果需要旁白,请添加 faster-whisper 和 Kokoro TTS。README 说明音乐默认采用免版税音乐。

通过提示词启动项目

安装完成后,向代理提出具体的制作任务。例如:

为我的应用制作一支 15 s 的发布视频
根据这些截图制作功能演示,禁止屏幕录制
我的动态视频感觉像幻灯片,修复它

如果希望重建产品界面,请提供截图。明确说明所需时长、用途和连续性问题。该技能旨在将这些请求转化为结构化的影片工作流,而不是一组彼此割裂的镜头。

逐步制作影片

  1. 分析参考作品。以数值方式拆解参考影片:测量静止画面持续了多长时间、剪切发生在哪里,以及运动如何加速和稳定下来。
  2. 提出三个概念。每个概念都应当用一句话描述画面,例如“一颗点变成一切”或“一次穿越尺度的缩放”。避免用三种不同方式讲述同一个基于卡片的故事。
  3. 编写节拍表。同时定义节奏和延续关系。镜头时长至少要有四倍差异,并准确说明每个边界处什么内容得以延续。
  4. 编排动画。使用运动库和 UI 重建工具包创建一个 HTML 文件。设计转场,使卡片、线条、窗口、角色或摄像机路径能够明显变形为下一段内容。
  5. 使用运动模糊进行渲染。根据制作阶段,使用渲染工具生成 1080p30 草稿或 4K60 成片。
  6. 制作声音。围绕影片中的事件安排拟音和合成音效,让声音保持在同一混响空间中,并在重要冲击声下压低音乐。
  7. 评审前进行验证。运行自动检查,修复被拒绝的边界或技术问题,然后再将影片交给人员查看。

将连续性作为设计规则

一段有用的节拍描述应同时说明视觉动作和被保留下来的元素。例如,不要只写“展示移动端界面”。应写明桌面窗口如何重新排布成手机界面,或说明上一版布局中的某条线如何成为手机界面的第一条对齐参考线。

同样的原则也适用于结尾。在 onetake 发布影片中,演员融入标识组合中,块状光标一笔写出名称。因此,最终标志是前面运动的结果,而不是一个独立的片尾卡。

验证结果

onetake 使用一种类似预言机的验证工作流。probe.py 会记录每一帧中出现的内容,查找边界,并判断哪些视觉内容在边界之间延续下来。一部节拍只是彼此替换的影片,即使每个镜头单独看起来很精致,也可能验证失败。

README 中报告的延续分数分别为:早期被拒绝的发布影片 0.00,后来被拒绝的版本 0.40,获接受的修订版 0.75,以及 onetake 发布影片 0.83。

相同的验证方法还会检查镜头节奏是否过于均匀、是否缺少静止片段、音频是否被截断、快速运动是否缺少运动模糊,以及主体是否离开画面。应将这些检查视为制作要求,而不是可有可无的润色。

高级制作技巧

使用多样化的节奏

不要让每个节拍都拥有相同的时长。onetake 建议镜头时长之间至少相差四倍。将停顿与快速运动结合起来,让观众能够理解重要的变化。

围绕下一个节拍设计镜头

镜头通常应略微领先于主体移动,快速转向下一个物体将要落下的位置,或穿过一张卡片,直到它变成下一个场景。然后,当转场需要强调时,让镜头保持静止。

优先重建界面,而不是录制屏幕

用 HTML 重建界面可以让它保持在镜头所在的平面上,并允许镜头以任意缩放比例接近它。这也使产品展示成为连续构图的一部分,而不是单独插入的屏幕录像。

以确定性方式渲染

由于输出具有确定性,你可以跳转到某个特定时间,并再次获得完全相同的画面。在调试边界、比较修订版或检查运动模糊的效果时,可以利用这一特性。

研究随附案例

仓库中包含十部已完成的影片及其拆解,涵盖概念、节拍表、测量结果、被拒绝的版本以及被拒绝的原因。案例包括 onetake launch、one-dot、knockon、clearing、pith、ebb、overlap、unbroken、motion-web 和 skill-demo。案例拆解可在 cases 目录中查看;影片源代码不包含在内。

许可

onetake 根据 PolyForm Noncommercial 1.0.0 许可证发布。它可免费用于个人、教育、研究及其他非商业用途。不允许商业使用。

结语

onetake 提供了一套实用的工作流,用于制作让人感觉像单一连贯表演、而不是幻灯片放映的产品影片。安装技能,描述影片,规划每个边界,用 HTML 重建界面,以经过测量的运动和模糊效果进行渲染,对声音进行评分,并在人审前运行验证。核心规则很简单:每个节拍都应在视觉上成为下一个节拍。