Convert frames to timecode at your frame rate
An editor says "frame 10800" while your player shows a time. Convert both directions — and see why 29.97 fps timecode drifts from the clock.
Tools used in this guide
The job
Video tools speak in frames; wall-clock tools speak in seconds. Reconciling a subtitle offset, a render log, or an edit note means converting between the two — at the project's actual frame rate.
How to do it
Pick frames→timecode or timecode→frames, choose the rate (23.976 through 60), and enter the value. The result shows the converted figure plus the real elapsed duration — frames divided by the true fps.
- 29.97 fps labels still count 30 per second — the timecode counts labels, so it drifts ~0.1% fast against the clock.
- The real-duration line divides by the true rate (30000/1001), giving the actual elapsed seconds.
- At 24, 25, 30, 50, and 60 fps the label rate equals the real rate and there is no drift.
Worked example
Frame 10800 at 29.97 fps reads 00:06:00:00 — six label-minutes — but the real duration is 360.36 s. That 0.36 s gap is the drift you compensate with drop-frame timecode in broadcast work.
Limits
Non-drop counting only: HH:MM:SS:FF with colons. Drop-frame timecode (the ;FF convention) and rates outside the preset list are not handled — check your project's spec if it uses 48, 90, or 120 fps.