Reading a Timeline in Frames, Writing It in Seconds
Motion work lives on a grid. An editor scrubs in frames, After Effects places keyframes on frames, and a timecode burn-in counts frames — but the numbers that arrive from outside that grid almost never do. A CSS transition is specified in milliseconds, a sound designer sends a hit list in milliseconds, a broadcast slate spec is written in seconds. Getting those figures onto the same scale is the small piece of arithmetic underneath every "make it two frames later".
What Sets the Grid You Are Snapping To
The rate decides the step size
The 1.001 family is an NTSC inheritance
CSS has no idea frames exist
Timecode is a label, not a stopwatch
From a Millisecond Spec to a Whole Frame Count
The usual job is a duration someone handed you in milliseconds that has to become a length you can actually cut.
Drop the millisecond figure in the left field
Type 350, 41.666667, 1 001 — whatever the spec sheet or the easing curve says. Seconds update while you type, and a comma works just as well as a dot if that is how your keypad is set up.
Divide the seconds by the frame duration
Hold the result against the table below. A length of 0.5 s is 12 frames at 24 fps, 12.5 at 25 and 30 at 60 — that middle answer is the warning sign that the number will not sit on a boundary.
Flip the pair when the source is already in seconds
The swap button (↔) turns the page into s → ms, the direction you want when a shot length is written 2.5 s and the animation tool is asking for a millisecond duration.
Copy the plain digits into the parameter box
The copy button on each field hands over the number alone, no unit and no spacing, which is what an expression field or a duration parameter will accept. Ctrl + C inside the field does the same thing.
Frame Rates and the Length of a Single Frame
Every rate you are likely to be handed, with the length of one frame in both units and how many frames a second of real time actually contains. The fractional entries in the last column are the reason timecode needs special handling at all.
| Frame rate | One frame (ms) | One frame (s) | Frames per real second |
|---|---|---|---|
| 23.976 fps (24000/1001) | 41.708333 ms | 0.04170833 s | 23.976 |
| 24 fps — cinema | 41.666667 ms | 0.04166667 s | 24 |
| 25 fps — PAL regions | 40 ms | 0.04 s | 25 |
| 29.97 fps (30000/1001) | 33.366667 ms | 0.03336667 s | 29.97 |
| 30 fps | 33.333333 ms | 0.03333333 s | 30 |
| 50 fps | 20 ms | 0.02 s | 50 |
| 59.94 fps (60000/1001) | 16.683333 ms | 0.01668333 s | 59.94 |
| 60 fps | 16.666667 ms | 0.01666667 s | 60 |
Only 25 and 50 give a whole number of milliseconds per frame, which is why PAL-heritage projects rarely fight with rounding while everything else does. The 1.001 rates are worse still: a second of that footage occupies 1.001 s of real time, so a "one second" title card really runs 1 001 ms.
Why This Pair Sits Open Next to the Timeline
Either box can be the one you edit
Both fields take input and the other one follows, so you can walk a whole easing curve — 120, 240, 350, 500 — without clearing anything between numbers.
Turn it round for the render spec
One press of the swap arrows reverses the direction, which is what you need when the shot list is in seconds and the motion tool is asking for milliseconds.
Minutes and hours are one dropdown away
The searchable unit lists reach from nanoseconds upward, so the same page handles a reel length in minutes or an overnight render estimate in hours.
Enough decimals for the 1.001 rates
Results carry up to eight decimal places, so 0.04170833 never collapses into 0.042 and a long frame count does not accumulate a rounding error.
Questions From the Edit Suite
How long does one frame last at 24 fps?
41.666667 ms, or 0.04166667 s — one second divided by twenty-four. Two frames come to 83.33 ms and six frames make a clean 250 ms, which is why quarter-second beats feel natural when cutting at this rate. Nothing shorter than that single frame can be shown, so an effect asked to last 30 ms either becomes one frame or vanishes.
Why is 29.97 fps not simply 30, and what does drop-frame timecode fix?
Colour was added to monochrome NTSC broadcast, and the rate had to be pulled down by a factor of 1.001 so the new colour subcarrier would stop interfering with the audio carrier. Drop-frame timecode deletes no picture at all — it skips two frame numbers at the top of every minute except the minutes ending in zero, keeping the label in step with the clock. Non-drop keeps every number and falls behind instead.
My CSS animation runs 350 ms — is that a whole number of frames?
At 60 fps, yes: 350 ms is 0.35 s and 0.35 × 60 comes out at exactly 21 frames. Take the same motion into a 30 fps render and it becomes 10.5 frames, so you must choose 10 (333.33 ms) or 11 (366.67 ms); at 24 fps it is 8.4 frames, and 8 frames (333.33 ms) is usually the closer read. Pick the frame count first and let the millisecond value follow from it.
Does 2.5 seconds land on a frame boundary at 25 fps?
Not quite. A frame is 40 ms there, and 2 500 ÷ 40 gives 62.5 frames, so the duration falls halfway between two of them. Sixty-two frames run 2 480 ms (2.48 s) and sixty-three run 2 520 ms (2.52 s). Half-second and quarter-second lengths only sit cleanly on this grid when the frame count happens to come out even.
How far does non-drop timecode drift from the wall clock in an hour?
About 3.6 s, which is 3 600 ms. An hour of 29.97 fps material holds 107 892 frames; counted thirty to the second, non-drop reports 3 596.4 s and shows 00:59:56:12 when a real hour has gone by. Drop-frame skips 108 frame numbers over the same hour — two a minute, nine minutes in ten — and lands exactly on 01:00:00:00. Left alone across a full day the error grows to roughly 86.4 s.
No comments yet. Be the first to comment!