# Pop a translucent caption card over the video on a segment click, then hard-swap it for the second card Manual DaVinci Resolve / Fusion construction guide generated from the recipe. It is not a tested .drp. The accompanying Remotion project (recipe.json) is the executable definition; the numbers below are copied from it. Neither construction establishes source fidelity: this is an original vector approximation of an inspected editing moment. ## Source and clock Reference: OpenAI's "How to storyboard with Sora" (6PXWAvUG8Sg), published 2024-12-09. Source interval [6884, 7100) on the 60/1 fps master: 216 frames, 3.600000 s. Local frame 0 = source frame 6884. Create a 1920x1080 progressive timeline at 60/1 fps and a Fusion composition exactly 216 frames long. Keep integer frames; do not round the frame rate. Background field: #a9b7be. Export silent H.264 yuv420p to match the intended playback container. ## Observation A generated video (a red-crowned bird by a stream) fills the frame above a thin dark player bar with a progress track and two small storyboard-segment buttons. The pointer sits on the first segment button; at about local frame 8 it clicks, and by frame 9-10 (master 6893) a tall translucent dark card labelled '1' pops in over the left of the picture carrying the scene's caption in white; the progress marker jumps forward at the same time. The card holds while the video plays. At about frame 186 (master ~7070) the pointer has moved to the second button and the card is replaced in one frame by card '2' with a shorter caption; that holds to the end. ## Mechanism Caption overlay bound to a segment control: the card enters with a two-frame fade and slight scale-up on the first click, and subsequent segments hard-swap the card contents rather than re-animating it. ## Phases (local frames) - 0: Video, no card, pointer on segment 1 - 8: Click segment 1 - 9: Card 1 pops in, marker jumps - 172: Pointer moves to segment 2 - 186: Card hard-swaps to 2 - 210: Hold ## Layer inventory (absolute 1920x1080 top-left pixels, back to front) - water-top [rect] at (0, 0) size 1920x330 fill #b9a9a1 - water-mid [rect] at (0, 330) size 1920x650 fill #a9b7be - bank [ellipse] at (900, 80) size 1100x360 fill #7c8f5b - grass [ellipse] at (1150, 60) size 700x260 fill #a5b07a - rapids-a [rect] at (0, 520) size 1920x60 fill #dde6ec - rapids-b [rect] at (0, 700) size 1920x90 fill #e6edf1 - rapids-c [rect] at (0, 860) size 1920x60 fill #d3dde4 - rock-a [ellipse] at (200, 600) size 260x90 fill #6e6a66 - rock-b [ellipse] at (1300, 640) size 300x110 fill #5e5a58 - bird [ellipse] at (620, 20) size 200x380 fill #f3f3f0 - bird-head [ellipse] at (690, -10) size 80x60 fill #d63b2f - player [rect] at (0, 980) size 1920x100 fill #0b0b0b - pause [text] at (100, 1016) text "❚❚" 13px weight 400 #c9c9c9 - track [rect] at (140, 1030) size 1680x3 radius 2 fill #3a3a3a - track-fill [rect] at (140, 1030) size 90x3 radius 2 fill #e8e8e8 keyframes w: f8=90, f9=140 (hold) - marker [ellipse] at (226, 1025) size 12x12 fill #ffffff keyframes x: f8=226, f9=276 (hold) - end [text] at (1836, 1022) text "10s" 12px weight 400 #9a9a98 - seg-1 [rect] at (880, 998) size 34x28 radius 6 fill #1e1e1e stroke #5a5a5a 1px keyframes stroke: f8=#5a5a5a, f9=#ffffff (hold) - seg-1-t [text] at (880, 1004) size 34x0 text "≡" 15px weight 400 #e8e8e8 - seg-2 [rect] at (924, 998) size 34x28 radius 6 fill #1e1e1e stroke #5a5a5a 1px keyframes stroke: f185=#5a5a5a, f186=#ffffff (hold) - seg-2-t [text] at (924, 1004) size 34x0 text "–" 15px weight 400 #e8e8e8 - sb-label [text] at (972, 1004) text "Storyboard" 15px weight 400 #9a9a98 - card-1 [group] at (380, 60) size 560x880 radius 20 fill #2a2a2a visible [9, 186) keyframes opacity: f9=0, f11=1 (out) keyframes scale: f9=0.96, f13=1 (out) - card-1-n [text] at (406, 82) text "1" 20px weight 400 #ffffff - card-1-cap [text] at (410, 440) size 500x0 text "A red-crowned crane with a yellow tail stands by the stream with its head held high, looking around. The colours are pastel and there are slight reflections off the water." 22px weight 500 #ffffff - card-2 [group] at (380, 60) size 560x880 radius 20 fill #2a2a2a visible [186, 216) - card-2-n [text] at (406, 82) text "2" 20px weight 400 #ffffff - card-2-cap [text] at (410, 440) size 500x0 text "The crane dips its head deep into the water." 22px weight 500 #ffffff - pointer [cursor] at (892, 1010) clicks at [8, 185] keyframes tx: f172=0, f182=44 (inOut) ## Construction steps 1. Timeline 1920x1080 at 60 fps; Fusion composition 216 frames. Local 0 = master frame 6884. 2. Video plate full-frame above a 100 px dark player bar; segment buttons are two 34x28 squares at x=880 and 924, y=998; progress track at y=1030 with a 12 px marker. 3. Card: 560x880 rounded rectangle (radius 20) at (380,60), #2a2a2a at 86% opacity, number 20 px top-left, caption 22 px medium white with 30 px leading and 500 px wrap starting at y=380. 4. Card 1 in at frame 9: Blend 0 to 1 over 2 frames plus Size 0.96 to 1 over 4 frames, pivot centre. Progress fill and marker step forward at 9 (hold keys); segment 1 stroke turns white. 5. Card 2 at frame 186: cut card 1 off and card 2 on in the same frame; segment 2 stroke turns white. Pointer eases 44 px right over 172-182 and click rings at 8 and 185. 6. Easy mistake: re-running the pop for the second card; the source only animates the first appearance. ## Content variants Default copy: - label: Storyboard - caption1: A red-crowned crane with a yellow tail stands by the stream with its head held high, looking around. The colours are pastel and there are slight reflections off the water. - caption2: The crane dips its head deep into the water. Adaptation changes: - label: Shot list - caption1: A grey heron waits at the edge of a tidal pool at dawn, perfectly still, with soft mist drifting over the water. - caption2: The heron strikes and lifts a small fish. ## Limits Easing names map to Fusion spline shapes: linear = linear, in/out/inOut = ease curves on the same frames, hold = step, spring/overshoot = slight overshoot past the target before settling. Text reveal frames give the first and last unit; distribute characters/words evenly between them. Cursor click rings last 14 frames. Vector illustration is an approximation of layout and motion, not the product UI or recovered production assets.