Technique / ScrollMask
Move the document, not the viewport
Land on a result while retaining orientation.
Run the original
Original neutral assets · 6.2 seconds · phase values are chosen defaults, not source timings.
npm run render -- ScrollMask out/ScrollMask.mp4 --codec=h264 --mutedDownload the complete pinned project · Inputs, phase meanings & full source code
Official source / inspected interval
Make information visual with ChatGPT
Watch the official OpenAI upload ↗ · Published 2026-08-24T16:09:56-07:00
Inspected 44–49 s. Consecutive subset: 46.75–48.25 s, 36 frames. Dates come from the official watch-page publication field.




Source: OpenAI. Bounded excerpt and annotated stills for the analysis below; not included in the project download.
What changes across the edit
- Shot boundary
- Continuous content scrolling within the inspected native window; no scene cut is inferred from large pixel changes.
- Framing
- A calendar rises into view. Outer window title and presenter inset stay in frame space.
- Layer ownership
- Scrollable document under a clipped viewport, fixed header, fixed inset.
- Motion
- Upward content movement brings the calendar into view, then slows and leaves the calendar available.
- Typography
- Text moves with the document; no simultaneous reading task is added during travel.
- Action order
- Request and partial calendar → scroll → calendar fills viewport → reading.
- Pacing & readable holds
- The calendar is substantially exposed by 47.631 s and remains through 48.965 s. Residual document motion is visible; this is not an exact zero-motion hold.
Recreation versus observation
Matches
Fixed viewport and header with content-only translation and a protected destination hold.
Differs
Original catalog instead of calendar; chosen 360 px offset and easing. The example fully stops the document and does not include a person.
Measured
- 36 consecutive frames within 46.750–48.250 s.
Inferred
- The landing establishes the result; source scroll physics are not recovered.
Chosen defaults
All Remotion phase frames, cubic Bézier (.16,1,.3,1), geometry, colors, font choice and reading holds are chosen defaults. None is a recovered OpenAI specification.
{
"title": "Make room for the idea.",
"prompt": "Arrange a small exhibition.",
"result": "Three studies, ready to compare.",
"label": "EXHIBITION / 03",
"accent": "#40685b",
"action": 30,
"change": 84,
"settle": 96,
"hold": 90,
"focusX": 0.66,
"focusY": 0.64,
"zoom": 1.55
}Increase hold to extend only the final quiet state. Change the phase frames to change choreography; preserve their ordering. Content limits and the exact meaning of each phase are in the handoff.
Exact original geometry, layer ownership and asset contracts · Schedule against an actual recording