OpenAI Film Fieldnotes

Download complete editable project · Read review limits

Build scattered phrases in color, hold white, then erase

Application-unverified manual. No imported Fusion setup, .drp, .dra or native Resolve render is supplied. Two original content variants form one draft example. The separate source clip is research only, never a render input.

Clock and inputs

Create a silent 1920×1080 square-pixel Fusion composition at exact 24000/1001 (23.976 label), with 96 frames indexed 0–95. Source film 0j9yDUDMrBs uses the same ordinals in this selected interval [0,96). Exact duration is 96096/24000 seconds, or 4.004 seconds. Do not use 24 fps, append a hold or include the new shot at source96. Frame95 is deliberately free of title text.

Choose the complete inputs/default.json or inputs/adaptation.json. Default uses a sketch/studio still life; adaptation uses a survey/garden still life. Both use original SVGs and editable text, not source photography, performers, logos, copy or sound. The supplied docs/source-timing.json binds actual source and excerpt integer PTS; docs/controls.csv holds authored implementation states. These are distinct records. The historical absent master is not claimed equal to the retained rendition.

Layer graph and coordinates

Use an opaque canvas below these Over merges, in this exact back-to-front order:

  1. RoomGroup: rebuild public/art/<theme>-room.svg as gradient Background, polygon/Bezier masks, architectural line paths and translucent light areas. Its domain is 1950×1080. Position top-left at (sceneDrift,0).
  2. ObjectsGroup: rebuild the selected objects.svg in a transparent 710×625 domain, including shadow, tabletop, shaded vessel and variant-specific drawing tools/paper or leaves/map. Position at (1090+0.6×sceneDrift,455).
  3. UnderlayGroup: reconstruct both filled Bezier contours from underlay.svg in a 2820×1450 transparent domain. Keep its two source path opacities and order. Position at (underlayX,underlayY). It crosses above the room and objects but below every Text+ branch. This is an abstract coverage substitute, not a recovered physical foreground object or full-screen scene wipe.
  4. Eight independent Text+ branches, merged in this order: first, second, third, fourth, fifth, sixth, seventh, attribution. Each has its own text, color, placement and held gate. Do not parent them to RoomGroup or Underlay.

Read exact contours, stops, fills and opacity from the editable SVG XML. There are six SVG bindings: three constructions in each of two themes. Do not load flattened screenshots into any group. SVG coordinates are pixels with Y down. Preserve each declared viewBox and clip only at the final composition edge.

For a point in a W×H group, normalized Fusion position is (x/W,1−y/H). Place a top-left rectangle using its center ((x+w/2)/W,1−(y+h/2)/H), not its corner. Then apply the parent's pixel translation before normalization in the 1920×1080 canvas. Keep oversized transparent domains; do not crop an offscreen group to its visible fragment. Verify coordinate direction with an asymmetric corner.

Typography and fixed layout

Install the bundled licensed Geist font. Use weight600, lineHeight1 and -3px tracking for the seven large phrases; attribution uses -1.5px tracking. White is #ffffff. Calibrate Text+ glyph bounds/baseline against the corresponding Remotion render; Resolve Size is not assumed to be CSS pixels. Do not shrink copy to fit or substitute fonts without a new review.

Field Left Top Box width Font px
first 96 firstY 1080 128
second 954 218 680 128
third 230 383 440 128
fourth 813 383 270 128
fifth 430 570 780 128
sixth 654 750 180 128
seventh 856 750 800 128
attribution 1238 922 620 54

Boxes have height1.2×font size and remain fixed. Align left except fifth, which is centered in its box throughout, and third, which becomes centered in its same box from85 during erasure. This alignment is an authored approximation; do not claim measured source glyph positions. No other text reflows when a neighbor disappears. Set firstY=240 through11,154 at12,92 at13 and76 from14. These four held positions approximate the observed early upward relocation.

Mixed entry and erasure

Every reveal uses stepped StyledText prefixes, not a continuous rectangular wipe, fade or uniform-rate typewriter. For a ratio r and complete content of length L, show the first max(1,floor(L×r+0.00000001)) characters when r>0. For r=0, disable the branch completely. Ratios adapt original event gates to new copy; they are not a claim that the source words have these new lengths. Use CSV ratios directly for each integer frame. Hold between listed gates.

Field Frame:ratio keys
first 0:0,1:5/13,2:7/13,4:10/13,5:11/13,6:1,87:0
second 0:0,14:1,89:0
third 0:0,16:2/6,17:3/6,19:4/6,22:5/6,24:1,85:5/6,87:4/6,88:3/6,90:0
fourth 0:0,19:1,89:0
fifth 0:0,23:2/7,24:3/7,25:1,93:0
sixth 0:0,26:1,91:0
seventh 0:0,30:1,92:0.8,93:0.5,94:0.3,95:0
attribution 0:0,33:4/17,38:7/17,39:10/17,40:12/17,41:15/17,42:1,86:0

Third is exactly six characters in the supported content schema. Other fields have their own length/width bounds in src/model.ts and src/typography.ts. Per-frame replacement keys are sufficient; an uncalibrated Follower or Write On animation is not equivalent. The first, second, fourth, fifth, sixth and attribution disappear whole. Third and seventh shorten before their final gate.

Temporary accents

Use these held accent intervals, then white; there is no interpolated color fade.

Field Accent frames Studio Garden
second [14,20) #70cf93 #a8d890
third [16,25) #f0b4c3 #f1b7a4
fourth [19,25) #f89b53 #ffc16c
fifth [23,30) #f89b53 #ffc16c
seventh [30,36) #c1a8fb #b5c1f1

First, sixth and attribution stay white whenever visible. The full eight-phrase white composition holds from42 through84. The palette is original, not sampled or asserted to be an official color specification.

Underlay movement and final checks

Use the CSV's continuous values or linear keys without automatic Bezier easing. sceneDrift runs linearly from0 at0 to−18 at95. UnderlayX is1920 through33, −390 at44,−520 at54 and−2840 at66, held thereafter. UnderlayY is−640 through33, −110 at44, held through54, then−330 at66 and thereafter. No text fades or changes coordinate system during coverage. The source has live-action motion; this linear vector path is a disclosed substitute, not a recovered camera move.

Check all listed entry, accent, relocation and release gates against their preceding frame. In particular inspect19/20,24/25,29/30,35/36,41/42,84/85, 85/86,86/87,88/89,89/90,90/91,91/92,92/93,94/95. At95 all eight branches are off and only the original background remains. Compare both silent exports at native cadence before claiming a moving match. Mechanical render checks and sampled still inspection do not establish independent/source-quality approval.