scripts/measure.py on the machine named at the end, and
written to docs/data/measured.json. The page is rendered from that file, so it states only what a
run reported.
Landing error
decktalk verify decodes the finished film, finds the frame where each reveal starts to change, and
measures how far that frame sits from the word its cue names. A reveal passes when it lands within
verify.cue_offset_max_ms of its word plus half a frame, early or late, and the table counts a reveal
past the limit by that same rule, so it names the reveals verify reported.
A placeholder plays a click on every word of real word times, so its row measures the cue,
the recording and the film it is assembled into. It has no voice of its own to misplace a word, so a voiced take’s timing
is not part of it.
Every reveal, placeholder takes
Each offset is one build, in milliseconds. A positive offset is late and a negative one is early.Build times
The project is the starterdecktalk init writes, a film of 50.4
seconds in 3 sections. Each of 3 fresh copies was
built 3 times in a row with decktalk build --no-spend, and each time is the
wall time of the whole command, Python’s start included.
The cold build starts from an empty
build/ directory, with Chromium and ffmpeg already installed.
The unchanged build runs the same command again with nothing edited. The last build follows a
one-word change in section 3, from “Change a word” to
“Change one word”. The last column counts the sections each build recorded rather than kept.
Coverage
The suites reach 98.1 percent of the package’s statements, 11,943 of 12,177. This is the totalcoverage report prints after the check table runs
every suite the coverage floor measures:
How these were measured
To measure your own machine, run the command from a checkout of the repository, then
uv run scripts/build_measured.py --write to render this page from what it wrote.