03danielwen

[教程] 如何用 Claude code 复刻一条商业故事短视频

  •  
  •   03danielwen · 3 days ago · 886 views

    分享一个免费复刻科普视频的方法~ 用到的方法是最近很火的开源项目 hypit

    项目地址在: https://github.com/hypit-ai/hypit


    "1998 年苹果仓库堆满了卖不掉的电脑……"这类商业故事短视频在抖音上很常见,比如《小 lin 说》里面就有很多这样的 B-roll:没人出镜,只有旁白、一张张静态图和跳出来的大字。看着简单,自己剪的话最费时间的是卡点。这条 55 秒的视频有 13 个镜头、23 处大字,每一处都要在旁白说到那个词时准确弹出来 下面是我们用 Hypit 复刻它的完整过程:

    1. 先拆解一下参考视频的套路,学习一下人家是咋组织整个视频的

    这是一条参考视频:[[ 链接或文件路径 ]]
    帮我拆解它的结构,先不要做任何东西:
    1) 镜头数、每个镜头的时长、镜头和旁白是怎么对应的
    2) 每个镜头的画面构成
    3) 字幕有几层,各自什么时候出现、什么时候消失
    4) 大字的内容、字体、颜色,以及它们落在旁白的哪个词上
    5) 有没有前后呼应的画面
    

    • 一句旁白一个镜头。13 镜 55 秒,平均 4.2 秒切一次,最短的只有 2.5 秒。
    • 每个镜头只有一张纹理背景和一个主体。 背景是阴天、亚麻布、暗红、蓝色网格纸、绿色切割垫、木桌这类;主体是居中的小道具,没有人物。主体会动:电脑从右边滑进来,钥匙从上面掉下来,所以背景和主体是分开的两层。
    • 字幕分两层。 底部是逐词高亮的小字幕,正在念的词变黄。说到关键句时,顶部弹出大字,底部字幕就让位。大字可以叠加,比如先出 FUNDAMENTALLY ,再砸下一个 EVIL 。
    • 大字不一定照搬旁白。 旁白说的是 "a month of inventory",屏幕上是 "30 DAYS",接着一个手写体的 "six days" 压上来。数字比原话更有冲击力。
    • 字体跟着情绪走。 时间和数字用衬线体( 13 YEARS LATER 、10 OF 19 ),反转用手写体( six days ),结论用红底白字( SPOILED MILK )。
    • 有回调。 第 2 镜的挂历在第 9 镜又出现了一次;第 5 镜那盒过期牛奶,在结尾说 "spoiled milk" 时又弹了回来。

    2. 写稿:大字挂在词上

    这一步也是交给 AI 来写,用 hypit 可以写出这样的脚本:

    <script id="story">
      ~@sc1
      <hook>
        In @w-1998! <1998 | nineteen ninety-eight>, || Apple was @w-drown! drowning || in unsold computers. @/sc1~
        @sc2 || Its warehouses held || @mu2 @w-month! a whole month || of inventory. @/mu2 @/sc2~
        @sc3 || Then Tim Cook walked in, || and called inventory || @mu3 @w-evil1! fundamentally @w-evil2! evil. @/mu3
      </hook>
      <beat-evil/>
      ...
    

    这里的几种标记:

    • <hook>、<why>、<loop>:三段旁白,各自单独生成一段配音。
    • <beat-evil/>:空段落,就是 “evil” 之后那 0.8 秒停顿。
    • @sc1 … @/sc1~:一个场景的时间范围,背景跟着它切换。
    • @w-drown!:一个时间点,落在 “drowning” 开口那一刻,大字和道具在这里出场。
    • <1998 | nineteen ninety-eight>:画面上显示 “1998”,配音念 “nineteen ninety-eight”。
    • ||:字幕在这里断开,换下一条。
    • @mu2 … @/mu2:这段时间画面上已经有大字,字幕静音。

    这些锚点只认“哪个词”,不写死秒数。重新配音、语速变了,所有画面会自动跟着新的时间走

    3. 定画面,先出表

    给 AI 这段 prompt

    按第 1 步拆出来的规则定画面。先列成一张表给我确认,不要生成:
    - 9:16 ,每段一个镜头:一张纹理背景加一个居中主体,背景和主体分开生成
    - 主体的风格:[[ 写实小道具、柔和棚拍光,或者你想要的风格 ]]
    - 每个 @标签 对应一条大字:写什么、字体、颜色、入场方式,弹出后一直保持到本镜结束
    - 底部小字幕逐词高亮,当前词变黄;大字出现之后,小字幕隐藏
    - s09 复用 s02 的挂历,s13 复用 s05 的牛奶盒,不重复生成
    

    你会拿到类似这样的表:

    段 背景 主体与动作 大字
    s04 蓝色网格纸 挂着 50% OFF 吊牌的米色旧电脑,从右侧滑入 @loses LOSES VALUE (红);@daily EVERY SINGLE DAY (黄)
    s09 同 s02 (亚麻布) 同 s02 的挂历 @d30 30 DAYS (红);@six six days (粉色手写体)
    s12 黑色暗角 挂着苹果吊坠的钥匙,从上方掉入 @later 13 YEARS LATER (白色衬线体);@keys THE KEYS (黄)

    表里每一行都确认了再生成,虽然慢点,但是省钱啊

    4. 先只跑配音,对节奏

    给 prompt: 先不要生成画面。只跑到配音和对齐这一步, 列出每一段的时长,和参考视频对比,标出偏差超过 1 秒的段。 这类视频靠节奏吃饭,哪一段拖了就在这一步删词,这时候只花了配音的钱

    5. 换个故事,再出一条

    真正省时间的是这一步。.svml 就是模板: 保持同样的 13 段结构、画面规则和字幕规则, 把故事换成 [[ 新故事,比如 "Costco 的热狗为什么 40 年没涨价" ]]。 先给我看新稿子和新的大字表。 换掉的只有旁白和图片。两层字幕、大字卡点、入场动画、回调这些逻辑全部复用,不用再剪一遍

    感谢你看到这里~

    1 replies  •  2026-10-14 04:11:50 +08:00
    OnePct
        1
    OnePct  
       1 day ago
    CodeX 可以做类似这样的效果吗,感觉 Astra6 更擅长这种内容。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5206 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 48ms · UTC 09:41 · PVG 17:41 · LAX 02:41 · JFK 05:41
    ♥ Do have faith in what you're doing.