Storyboard Timing & Shot List
Audit storyboard timing and export frame-accurate shot lists and dialogue subtitles.
Try an example: Timing a six-board delivery · A thirty-second story spot
How it works
Inspect a Flipline Story Desk project for cumulative frame ranges, non-drop-frame timecodes, scene totals and GIF timing differences. Download a CSV shot list and dialogue-only SRT cues using the same timing engine as the editor.
- Each nonblank line uses Title | Seconds | Action | Dialogue, optionally followed by Scene | Shot size | Camera. Pipes cannot appear inside fields. Shot sizes: wide, medium, close, detail, over-shoulder. Camera labels: static, pan-left, pan-right, tilt-up, tilt-down, push-in, pull-out, handheld.
- Seconds are rounded to the nearest whole frame, with a minimum of one frame. Board intervals are half-open; timecodes are non-drop-frame at integer 1–30 FPS. Maximum 48 boards, 120 seconds per board and ten minutes total.
- Staging sketches are original, deterministic stick figures and a ground line. They are editable drawing marks, not AI-generated images or 3D camera simulations. No Storyboarder project, Fountain screenplay or NLE timeline import is provided.
- The input is a Story Desk project or the smaller Shot data JSON export. Project text is limited to 2 MB in this utility. The editor stays local; using this separate utility sends the submitted JSON to the server.
- CSV cells are quoted and spreadsheet formula prefixes are escaped. SRT includes only nonempty dialogue, uses cumulative frame boundaries rounded to milliseconds, collapses blank lines and replaces timing-arrow sequences inside dialogue.
- GIF delays round each board to the nearest 10 ms with a minimum of 20 ms for browser playback. GIF total can differ from ideal frame timing. Contact-sheet art and camera labels do not change durations.
Sources
Part of Flipline
-
Flipline Drawing, storyboards & animation
A few drawings. A little life. Make a flipbook in your browser.
How to use the Storyboard Timing & Shot List
Check a Story Desk storyboard for exact frame ranges, timecodes, scene totals and GIF timing, and download a CSV shot list and dialogue SRT.
What it is for
When a storyboard goes to an editor, a sound designer or an animation team, everyone needs the same numbers: where each shot starts and ends, how long each scene runs and when each line of dialogue is spoken. This tool reads a Flipline Story Desk project and lists exactly that, using the same timing engine as the editor.
Paste either the full .flipline-story.json project or the much smaller Shot data JSON export from Story Desk, which leaves out the drawings and reference images. Text up to 2 MB is accepted. The tool returns a frame-accurate shot list, scene totals, the duration a GIF animatic would have, a CSV shot list and a dialogue-only SRT file. It doesn't change your project, and drawings don't affect timing.
Worked example
The project was a four-board morning scene at 12 FPS: "Alarm" (2.5 s), "Too early" (3 s, dialogue "Five more minutes."), "The calendar" (typed as 1.3 s) and "Up and out" (4 s, dialogue "The interview!"). The full project was 3,450 characters; its shot data JSON only 995.
The summary read "130 frames across 4 boards, lasting 10.833 s." The table showed why it isn't 10.8 s:
| Board | Title | In (NDF) | Out (NDF) | Frames | Seconds |
|---|---|---|---|---|---|
| 1 | Alarm | 00:00:00:00 | 00:00:02:06 | 30 | 2.5 |
| 2 | Too early | 00:00:02:06 | 00:00:05:06 | 36 | 3 |
| 3 | The calendar | 00:00:05:06 | 00:00:06:10 | 16 | 1.333333 |
| 4 | Up and out | 00:00:06:10 | 00:00:10:10 | 48 | 4 |
At 12 FPS, 1.3 s is 15.6 frames, so the board holds 16 frames, which is 1.333 s. The scene totals were 82 frames in the bedroom and 48 in the hallway. The GIF estimate was 10,830 ms instead of 10,833 ms, because a GIF stores delays in 10 ms steps and the calendar board became 1,330 ms.
The SRT held two cues: "Five more minutes." from 00:00:02,500 to 00:00:05,500 and "The interview!" from 00:00:06,833 to 00:00:10,833.
How to read the result
- Summary: total frames, board count and length in seconds.
- Frame-accurate shot list: board number, scene, title, in and out timecodes, frames and seconds. Timecodes are non-drop-frame,
hours:minutes:seconds:frames. The out point is exclusive: it equals the next board's in point, and no frame is counted twice. - Scene totals and GIF timing (in the JSON result): frames per scene, and the rounded duration a GIF animatic would play.
- Shot list CSV: the same rows plus shot size, camera, action, dialogue and notes, ready for a spreadsheet.
- Dialogue SRT: cues for boards with dialogue, at cumulative frame boundaries rounded to milliseconds.
Tips and common mistakes
- Use the shot data JSON for image-heavy stories. Reference images can push a full project far past the 2 MB limit, and the timing is identical.
- Read frames, not seconds, when timing matters. Seconds are derived from whole frames and can carry long decimals such as 1.333333.
- The GIF total can differ from the frame timing by a few milliseconds. Trust the frame timing for edits and subtitles.
- Silent boards create no SRT cue, so cue numbers don't match board numbers. Use the timecodes to line them up.
- Cells that start with
=,+,-or@get a leading apostrophe in the CSV so spreadsheets don't run them as formulas.
FAQ
Is my project sent anywhere?
This utility sends the JSON you submit to the server. Story Desk itself processes and exports locally in your browser.
Why do the timecodes have four parts?
The last part counts frames within the second. At 12 FPS, 00:00:02:06 means 2 seconds and 6 frames, which is 2.5 s.
Can I use the SRT in a video editor?
Yes. The file uses standard SRT cue numbers and --> timings. Blank lines inside dialogue are collapsed, and timing arrows typed into dialogue are replaced so a cue can't break.
Does the tool check drop-frame timecode?
No. Story Desk uses integer frame rates from 1 to 30 FPS and non-drop-frame timecode only.
Guide last updated:
For scripts and AI agents
- JSON API:
POST https://fliplinestoryboardtiming.usefulweb.site/api/v1/calculate(same calculation as this page) - Interface description: OpenAPI 3.1 · AI guide: llms.txt
- MCP server (Streamable HTTP):
https://fliplinestoryboardtiming.usefulweb.site/mcp· tool nameflipline_storyboard_timing
Example request
curl -s -X POST https://fliplinestoryboardtiming.usefulweb.site/api/v1/calculate \
-H 'content-type: application/json' \
-d '{…see OpenAPI examples…}'