Independent visual research / Public editionReviewed 05 Sep 2026
Motion fieldnotesOpenAI film study
About this study

Production / original studies

Agent Production
Playbook

Choose a technique for the spoken beat. Build its layers and timing. Check the exported result.

12 recipes3 complete sequences19 evidence records
Original neutral interface: a request and its readable grouped result
Original geometry + text. No source-film assets. No product-performance claim.
Agent entry / Markdown ↗Recipes / Markdown ↗Coverage / Markdown ↗Comparison / Markdown ↗Recipe data / JSON ↗Schema / JSON ↗Original studies / ZIP ↗Verification / JSON ↗

Go from a narrated beat to a reproducible shot. The films supply evidence about staging and sequence; the recipes supply chosen, testable implementation values, not recovered studio settings.

One beat, one job

Write the beat as what the speaker says → what the audience must see → what proves it. Use the actual recording, including pauses, to mark the beat. A script's word count cannot establish timing.

The beat needs… Start with… Protect…
A new subject and recognizable start cue title-interface Complete title reading time; settled interface after the cut
A change in the argument chapter-reset The task state before and after the title
A small detail made readable context-detail One orientation landmark; capture resolution
A causal action pointer-intenttype-submit Target dwell; complete request before submit
A change to a specific passage selection-action Selected scope and actual available action
An off-screen destination scroll-landmark Fixed viewport; reading only after scrolling stops
Work becoming a visible output progress-resultresult-hold Real state order; late content build; quiet reading time
One artifact in a different context object-handoff Identity, anchor, crop and size across the cut
A clean finish result-holdquiet-ending Final proof first; ending buffer in the separate recording
An unobtrusive identifier anchored-caption Result clearance and contrast; not a default person ID

Read the recipe's contrasting sources before choosing a transition. A hard cut and a smooth push solve different problems. Do not turn every transition into a morph.

Asset packet before implementation

For each beat retain: recording start/end and emphasis timestamp; required proof; real initial state; product route and version; fixture data and permissions; exact actions; expected and actual output; capture dimensions and frame rate; crop/focus rectangle; cursor policy; any omitted wait interval; recipe ID/version; duration; and approval status. Keep account, customer and private development material out of publishable packets.

A source-availability check is not a runtime verification. Before prescribing a product demo or component import, read that checkout's instructions, verify current exports, run the actual interaction, and capture the result. If the result contradicts the sentence, change the sentence or capture plan. Do not paint a successful result over a failed action.

Run an original study

Download and unpack the linked original-studies.zip. From its directory, use Python 3.11+ with pip/venv and FFmpeg/ffprobe with the libx264 encoder on PATH:

python3 -m venv .venv
.venv/bin/python -m pip install -r requirements.txt
.venv/bin/python verify.py --report data-check.json
.venv/bin/python render.py --all --out renders
.venv/bin/python verify.py --renders renders --report verification.json

The renderer does not fetch fonts, footage or application data. Its only visual inputs are the bundled original text/geometric artwork and licensed DejaVu fonts. Tested environment: Python 3.14.7, Pillow 12.3.0, FFmpeg 9.0.1. Other compatible versions may produce different encoded bytes; compare the RGB checkpoint hashes and decoded-image error, not an assumed universal MP4 checksum.

Three complete silent sequences are specified in recipes.json: title-to-interface (10 s), interaction-to-result (18 s), and result-to-ending (9 s). Twelve independent recipe studies make the individual operations inspectable. The originals are neutral diagrams, not real product demos, and none contains a source logo, source footage, source demo data, narration, or music.

.venv/bin/python render.py --sequence interaction-to-result --out renders
.venv/bin/python render.py --recipe context-detail --duration 6 --out extended
.venv/bin/python render.py --recipe result-hold --width 1920 --fps 60 --out delivery-test

--duration changes only the last hold of a single recipe. It never time-stretches an action. Too-short durations fail. A longer actual wait requires a genuine longer capture or disclosed editorial compression, not a slower synthetic spinner. For a new composition, edit the recipe phases and the corresponding renderer construction together; normalized layer rectangles document the design and are checked, not a general-purpose scene-graph editor.

Construction contract

All positions use [x, y, width, height], normalized to the full 16:9 design frame, top-left origin. A workspace-space layer inherits the outer camera; it is still normalized to the full design frame, not the window. Frame-space titles and captions do not inherit it. Rasterize masks before the workspace transform. A viewport scroll moves document content behind a fixed mask; a camera push transforms the complete workspace and its pointer.

The neutral design uses a warm paper field, a fixed white window, restrained green focus, dark type, a .07-frame outer horizontal margin, and a .035-frame-height essential result font. The supplied font files are an implementation choice. Product captures retain their actual typography and spacing. Do not redraw a product into this neutral skin.

Typography must fit before animation. Keep line breaks fixed; measure the longest complete line. A title uses at most two short lines. Masking reveals existing glyphs rather than changing layout every frame. Leave one primary attention target: no camera movement during typing or reading, no spinner continuing over a finished result, and no cursor wandering through proof.

Capture width should be at least output_width × maximum_camera_scale for a crop that fills the output; recapture closer if it is not. The proof renderer draws resolution-independent primitives, but that does not make a low-resolution screen recording sharper. These studies are 1280 × 720, 30 fps, H.264/yuv420p in MP4 with explicit BT.709 video conversion and no audio stream. These are research settings, not approval of final meeting delivery settings.

Fit the recording without breaking the choreography

First place the moment of proof at the recorded emphasis. Work backward through a completed result, result settlement, work, action and orientation. Put a chapter transition in a real pause or at the clause boundary. Do not require the audience to read one phrase while hearing an unrelated one.

Treat movement durations as protected initially. Shorten a surplus hold, simplify a phrase, use a closer crop, or split the beat before accelerating all phases. A proposed reading budget is max(3 seconds, essential words / 3 + 0.6 seconds); this is an editorial floor to test, not a human-performance guarantee. Count the complete result's words, not all decorative UI chrome. Verify with a reader at meeting-view size. If the recording does not leave enough time, flag the conflict in the storyboard review.

Three clocks stay separate: source-film timestamps; actual application capture time; and presentation/recording synchronization. The recipes' local seconds are a fourth convenient implementation coordinate, not a replacement for any of those clocks. Convert source frames using their delivered PTS; do not compare equal frame numbers across 23.976, 30 and 60 fps films.

Separate-video playback contract

The supplied talking-head recording plays in OBS. Its video reaches the meeting through the virtual camera and its audio through the virtual microphone. The separate presentation video plays through Google Slides. Do not composite them, generate a replacement speaker, duplicate narration, or add music without a separate request.

Let C be the visible cue time in the presentation, R the measured reaction/startup delay, and S=C+R the actual talking-head start offset. Recording time h maps to presentation time S+h. R is measured in rehearsal in the actual Slides/OBS/meeting setup; it is not assumed to be zero.

Let H be the recording duration, T the onset of the actual ending wave/pause, P the presentation end, and B the required remaining recording tail. Accept only when all required speech/proof finishes by P, S+T <= P, and P <= S+H-B. Check both sides of this interval. A longer presentation file can still end before the talking head because the presentation started earlier.

For illustration only: C=3, rehearsed R=.7, S=3.7, H=60, actual tail begins at T=57, required remaining tail B=2. The valid end window is 60.7–61.7 s on the presentation timeline, provided the final proof fits. These numbers do not describe supplied footage. If a pause is absent or the interval is empty, raise it during review; never manufacture a wave, extend a face freeze, or cut speech to make the inequality pass.

One storyboard review; then production

Consolidate the recording-derived beat map, demo list, selected references, recipe choices, original identity, capture prerequisites, unresolved product behavior, time compression, cue, rehearsed offset, real ending buffer, and delivery format into one review. Establish resolution, aspect ratio, frame rate, codec, and Google Slides playback constraints with the supplied assets and intended setup. Get approval before final production rendering. Research studies here do not approve a storyboard.

After approval, execute without asking about every routine scene. Raise material departures. Verify the exported pair, not just an editor preview: recognizable cue; recorded speech aligned with proof; no duplicate narration or music; completed result readable at meeting size; and presentation end inside the real talking-head tail. Preserve the original recording and deliver clearly labeled pairing/timing notes.

Evidence strength

Each recipe links source records and intervals. Measured observation means delivered pixels/PTS in a bounded inspection. Editorial interpretation explains sequencing or attention. Fitted approximation would identify a fitted numerical model; none of these easing or font values is fitted. Proposed production default is a value chosen for the original examples. The existing interface-token study is independent research, not film timing evidence.

Start with the coverage matrix for what is established and what remains uncertain. No film was added merely to increase the collection count. Existing opening, motion, ending-logo and lower-third studies remain the deeper evidence, with their original limits intact.

Reference frame

Enlarged reference frame

Watch this moment on the official channel ↗