Timecode to Frame Number Calculator — SMPTE Converter
Enter a SMPTE timecode (hours, minutes, seconds, frames) and frame rate to get the absolute frame number — with accurate drop-frame correction for 29.97 and 59.94 fps.
Frame rate
Timecode mode
Timecode 00:01:30:00 @ 24 fps
- 1
Total seconds
0 × 3600 + 1 × 60 + 30 = 90 - 2
Absolute frame number
90 × 24 + 0 = 2,160
How does this calculator work?
Absolute frame = (3600H + 60M + S) × nominal_fps + F. For 29.97 DF, subtract 2 × (total_minutes − ⌊total_minutes/10⌋). Real elapsed seconds = frame_number ÷ actual_fps. Drop-frame keeps NTSC timecode within 2 frames of wall-clock time over a 1-hour clip.
Formula
How this is calculated
A SMPTE timecode (HH:MM:SS:FF) describes a position in a video stream using hours, minutes, seconds and a frame index within each second. To find the absolute frame number, multiply the total elapsed seconds by the nominal integer frame rate and add the frame index. For 24, 25, 30, 48, 50 and 60 fps this is exact.
29.97 fps (NTSC) actually runs at 30000 ÷ 1001 ≈ 29.97002 frames per second — not exactly 30. Non-drop-frame (NDF) timecode counts every frame at the nominal 30 fps rate, which causes timecode to drift about 2 frames per minute behind real time. Drop-frame (DF) timecode corrects this by skipping frame numbers 0 and 1 at the start of every minute except every 10th minute (00, 10, 20, 30, 40, 50). After one hour, DF timecode stays within ±2 frames of actual wall-clock time. The corrected formula is: frameNumber = 30 × total_seconds + F − 2 × (total_minutes − ⌊total_minutes ÷ 10⌋). 59.94 fps works identically but with 4 frames dropped per minute.
The real elapsed time in seconds is frameNumber ÷ actual_fps (30000/1001 for 29.97). The timeline bar shows the position within a 1-hour clip at the current frame rate.
Frequently asked questions
Non-drop-frame (NDF) counts every frame at the nominal rate (30 for 29.97 fps) and drifts ≈ 3.6 seconds per hour from real time. Drop-frame (DF) skips frame numbers 0 and 1 at the start of every minute except every 10th, keeping timecode within 2 frames of actual wall-clock time. DF is standard for broadcast NTSC; NDF is common for film editing and archiving.
29.97 fps is actually 30000/1001 ≈ 29.97002997 fps — an irrational fraction chosen for colour NTSC compatibility. Simple integer frame counting therefore diverges from real time. Drop-frame arithmetic inserts a small periodic correction to compensate for the fractional rate without changing the actual playback speed.
Drop-frame timecodes use a semicolon before the frame field: 00:59:59;29 instead of 00:59:59:29. Non-drop-frame uses colons throughout: 00:59:59:23. This notation difference (semicolon vs colon) is universal across NLEs, cameras and broadcast equipment.
Also known as
TG we-Calculate Editorial Team. (2026). Timecode to Frame Number Calculator — SMPTE Converter [Online calculator]. TG we-Calculate. https://we-calculate.com/calculator/timecode-to-frame-calculator
TG we-Calculate Editorial Team. "Timecode to Frame Number Calculator — SMPTE Converter." TG we-Calculate. 2026. https://we-calculate.com/calculator/timecode-to-frame-calculator.
TG we-Calculate Editorial Team, "Timecode to Frame Number Calculator — SMPTE Converter," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/calculator/timecode-to-frame-calculator
@misc{wecalculate_timecode_to_frame_calculator, title = {Timecode to Frame Number Calculator — SMPTE Converter}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/calculator/timecode-to-frame-calculator}}, year = {2026}, note = {TG we-Calculate} }
Did this calculator help you?
