# Rhythm interrupt moves

Two rhythm-breaking techniques: jump-cut-punch-in, a three-step jump-cut push-in, and strobe-black-frames, strobing black frames.

- Category: rhythm · Tags: shotcraft, remotion, rhythm
- Spec: 1920×1080 @ 30 fps · 4.54s (16:9)
- License: Apache-2.0 · Tier: free
- JSON: https://gimgs.net/motion/rhythm-interrupt-moves.json
- Kind: remotion
- Source (TSX): https://gimgs.net/motion/rhythm-interrupt-moves/template.html
- Repo: https://github.com/Vincentwei1021/video-shotcraft
- Credits: video-shotcraft (Vincent Wei) — https://github.com/Vincentwei1021/video-shotcraft
- Page: https://gimgs.net/motion/rhythm-interrupt-moves.html

## Params

_No params._

Default params (base64url for `?p=`): `e30`

## Prompt

## When to use

Using "breaking continuity" itself as a rhythm device: a jolting push-in (B), a suffocating approach (C); complements beat-cut-moves (cut-point layout) and montage-rhythm (section breathing)

## Intention

The library's other rhythm cards all handle "how to cut, how densely"; these two handle **how to break**: the viewer expects continuity, and you break it on purpose — the way you break it is the message. B breaks in space — the same composition jumps three times with no in-between (1x→1.6x→2.6x), a Godard-style jump-cut jolt, with more of a "look here, closer, that's it" command than a smooth push-in; C breaks in existence — the image and pure black alternate in a strobe with tightening intervals, a suffocating countdown before a climax. Choose by use case: forced focus on a metric uses B, building pressure before a climax uses C.

## Duration & energy

- Duration: B ~4.5s / C ~4.5s
- Energy: B Medium / C High

## Shot recipe (original Chinese — timing, easing, parameter table, known pitfalls)

## 意图
库内节奏卡管的都是"怎么切、切多密"；这两式管**怎么断**——观众预期
连续，你偏打断，打断方式即表达：B 是空间断——同构图三次无补间跳大
（1x→1.6x→2.6x），戈达尔跳切的顿挫，比连续推近更有"看这里、再近点、
就是它"的指令感；C 是存在断——画面与纯黑交替频闪且间隔收紧，
高潮前的窒息倒数。选型：强制聚焦指标用 B，高潮前蓄压用 C。

## 两式选型
| 式 | 做法 | 适用 |
|----|------|------|
| B jump-cut-punch-in | transform-origin 钉目标中心，三档 scale 阶梯跳变（零补间），每跳 2f 加深脉冲当 tick | 逐级逼近核心指标；纪录片式盯住 |
| C strobe-black-frames | 全屏黑帧按写死帧号表闪现（每次 2f，间隔 8f→3f 收敛），末闪掀开即硬切放大落定 | 全片最高潮前的倒数蓄压 |

## 参数表
| 参数 | 典型值 | 调节手感 |
|------|--------|----------|
| B 跳挡 | 1.0→1.6→2.6，各 hold ≥35f | 挡差 <1.5× 读作画面抖了一下 |
| B tick | 跳变帧起 2f brightness 0.92 全画面脉冲 | 无 tick 的跳切读作丢帧 |
| C 帧号表 | [40,48,55,61,66,70,73,76,79] 各 2f 纯黑 | 间隔必须收敛；等距频闪只是闪没有"逼近" |
| C 落锤 | 末闪掀开一帧到位 scale 1.35 + 2f 加深脉冲 | 掀开后还在原构图，频闪就白憋了 |
| 收尾 | B 末挡 ≥45f / C 硬切后 ≥50f 真静止 | 打断系事后 hold 从重给 |

## 已知坑
- demo 在灰阶/占位素材上调校通过——参数是调校起点非实战定稿，
  首次实战须以真实素材回验
- 两式与 speed-ramp-freeze 都动"时间轴"，同一镜头只能有一个时间
  操纵者
- C 式**光敏警示**：频闪画面需注意光敏性癫痫观众提示；且必须配乐
  渐强同步（无声频闪读作信号故障），全片 ≤1 次
- B 式三挡构图必须同 origin（钉死目标中心）——每挡重新构图就是
  三个镜头，不是跳切
- 声音强依赖：B 每跳一声 tick、C 每闪一声打点（sound-design §4.5）

## 参考实现
demos/rhythm/rhythm-interrupt-moves/
（JumpCutPunchIn.tsx / StrobeBlackFrames.tsx）

## Reference implementation (Remotion)

- demos/rhythm/rhythm-interrupt-moves/JumpCutPunchIn.tsx — https://raw.githubusercontent.com/Vincentwei1021/video-shotcraft/main/demos/rhythm/rhythm-interrupt-moves/JumpCutPunchIn.tsx
- demos/rhythm/rhythm-interrupt-moves/StrobeBlackFrames.tsx — https://raw.githubusercontent.com/Vincentwei1021/video-shotcraft/main/demos/rhythm/rhythm-interrupt-moves/StrobeBlackFrames.tsx

The component imports shared fixtures from `demos/_fixtures` and helpers from `assets/lib` in the repo; SKILL.md there documents the render workflow.


## Flow

1. **Read the recipe**
   Prompt = when to use, intention, parameter table with typical values and how each one feels, known pitfalls. Treat values as calibrated starting points.
2. **Get the code** — tool: git
   `git clone https://github.com/Vincentwei1021/video-shotcraft && cd video-shotcraft && npm install`
3. **Register + render** — tool: remotion
   `npx remotion render <CompositionId> out.mp4   # component: demos/rhythm/rhythm-interrupt-moves/JumpCutPunchIn.tsx, demos/rhythm/rhythm-interrupt-moves/StrobeBlackFrames.tsx`
4. **Or re-implement**
   Port the timing/easing from the recipe to HTML + WAAPI (gimgs motion contract) or any engine; keep the same segment windows and easing.

## Render

Clone https://github.com/Vincentwei1021/video-shotcraft (npm install). The component lives under demos/{category}/{name}/ and imports shared fixtures from demos/_fixtures and helpers from assets/lib. Copy it (with those imports) into a Remotion project, register a <Composition> with the template's width/height/fps/duration in Root.tsx, then `npx remotion render <CompositionId> out.mp4`. SKILL.md in the repo documents the full Claude Code / Codex workflow. The prompt below is the shot recipe (timing, easing, parameter table, pitfalls) — enough to re-implement the shot in HTML/WAAPI or another engine if you prefer.

## Contract

React/Remotion composition (TSX) from the open-source video-shotcraft library (Apache-2.0). It is not a browser-playable template: clone the repo, register the component in a Remotion project and render with `npx remotion render`. The recipe (prompt) describes timing, easing and parameters so you can also re-implement the shot in any engine.
