Process a folder of sprint start videos
Coaches can do this entirely in the browser. There is no script to install or command to type.
- Open Process a folder from Start Launch Coaching in desktop Chrome or Edge.
- Choose a folder of side-view start clips and allow the browser to read and write it.
- Choose the start type: 4-point blocks, 3-point turf or 2-point distance. Every video in the batch is analyzed as that start, so keep each start type in its own folder.
- Confirm the capture FPS and the athlete’s height. Override the FPS for individual videos if needed.
- Press Process videos and keep this tab open. Find the MP4 highlight, PDF report and Markdown text beside each original. Review each row for warnings or failures.
What gets saved
For start.mp4, the app creates results_start.mp4, results_start.pdf and results_start.md. A results_start.json receipt records the settings, actual frame rates, analyzed range and output sizes. The PDF is the same start report card as the single-video app (set, first movement, clearance and touchdown snapshots, the start-sequence picture, every metric with its target and coaching cue). The MP4 is a metric highlight reel of every metric that could be measured, with 30 FPS output.
Originals are not changed. Existing result files are skipped, including incomplete sets. Move old or partial results before retrying. Videos with the same base name, such as start.mp4 and start.mov, must be renamed first. Files beginning results_ or reslts_ are excluded. Subfolders are not processed.
Recording settings that matter
- Start type:
blocks(4-point blocks start, the blocks recording guide),turf(3-point turf or combine start, turf) ordistance(2-point standing start, 2-point). It decides which events are looked for and which targets apply. - Capture FPS: Auto reads the encoded file rate. Slow motion filmed at 120 FPS may be saved at 30 FPS; enter 120 in that case, or the push time and exit speed are wrong. Auto fails if the file rate cannot be read, so you can choose a rate explicitly.
- Height: the athlete’s standing height sets the scale for exit speed and first step length. 1.75 m is a starting estimate; use separate browser batches for athletes with different heights. Angles and times do not depend on it.
- Camera: a fixed side view with the whole body visible from the set position through the first two or three steps, as in the recording guides.
- Pose model: Thunder is the app’s default. YOLO26s and BlazePose are the other choices in the single-video player.
The whole clip is analyzed, every file frame. A clip where no clearance or first touchdown is found still produces outputs, with a warning on its row and in the Markdown; a clip where nothing can be measured fails.
Local processing and recovery
Video analysis and export happen in your browser. Static app code and model files may download from the internet. Folder permissions are granted by you in the browser, and you may need to grant them again after reopening the page.
One video runs at a time. A failure does not stop the rest. Stop batch cancels the active analysis/export; a save already in progress finishes before the queue stops. Closing the browser can leave partial results. Move these before retrying. Avoid concurrent programs writing to the same folder.
If the folder picker is unavailable, use a supported desktop browser such as Chrome or Edge, or return to the single-video app. MP4 export requires H.264 WebCodecs support; an unsupported encoder produces an error. Results are the same estimates and coaching guidance offered by the app’s individual-video workflow.
For AI agents and developers: browser interface
Everything runs in the browser at https://apopt.com/launch/automation.html. There is nothing to download or install. An AI agent or script that controls a browser (for example a browser-automation tool) can use the page’s versioned interface, window.apoptAutomation, instead of the folder picker.
- Open
https://apopt.com/launch/automation.htmland wait untilwindow.apoptAutomation.version === 1. - Put one local video on the file input
#automation-video; the browser reads it locally. - Start the job, poll until it finishes, then read the Markdown or download the outputs.
const api = window.apoptAutomation;
api.capabilities(); // app "launch", options, defaults, outputs (no camera view option)
const id = api.start({
startType: "turf", captureFps: 120, heightMeters: 1.82
});
api.getJob(id); // state: running → succeeded / failed / cancelled
// After state === "succeeded":
await api.markdown(id); // the text results
api.download(id, "mp4"); // also "pdf" and "md"
api.cancel(id); // stops a running job
| Option | Values |
|---|---|
| startType | blocks (4-point blocks), turf (3-point turf) or distance (2-point distance); default blocks. The blocks, turf and 2-point start pages all use this one page. |
| captureFps | "auto" or the recorded FPS, 1–2000 |
| heightMeters | 1.0–2.5; default 1.75 |
| model | movenet_thunder, yolo26s_pose or blazepose |
| outputFormat | vertical or person-crop; metricCycleSeconds 2–10 |
One job runs at a time, and only the latest job’s outputs are kept, so save every output before starting another. Unknown options and out-of-range values are rejected before processing. Video stays in the browser; an agent that reads the Markdown receives that derived text.
Example agent request: “Open the Start Launch automation page, analyze start.mp4 as a turf start at 120 capture FPS with height 1.82 meters, save the three outputs and read the Markdown.”