What is the Timecode (Frame) Calculator?
This tool adds or subtracts two SMPTE timecodes in the standard HH:MM:SS:FF format used throughout video and film production. It works at four common standards: 30 fps and 60 fps non-drop-frame (NDF), and 29.97 fps and 59.94 fps drop-frame (DF). It returns both the resulting timecode and the equivalent total frame count, so you can verify durations, offsets and edit points exactly.
How to use it
Pick a frame unit, enter your first timecode, choose Add or Subtract, then enter the second timecode. The calculator converts each timecode into an absolute frame number, performs the arithmetic, and rebuilds the result into a clean timecode. If a subtraction goes below zero, the result is shown with a leading minus and the magnitude as a timecode. Hours accumulate freely (no 24-hour rollover) so the tool reflects elapsed duration, which is what editors usually want when summing clip lengths.
The formula explained
For non-drop-frame, $$N = \left(\,(60h+m)\cdot 60 + s\,\right)\cdot D + f$$ where \(D\) is the nominal frame counter (30 or 60). Drop-frame keeps the integer counter at 30 or 60 but skips certain frame numbers so the timecode tracks real wall-clock time. At every minute boundary except multiples of ten, the first 2 frame numbers (4 at 60 fps) are dropped. The dropped count is subtracted on conversion and added back when rebuilding the timecode.
Worked example
At 30 fps NDF, TC1 = 01:50:38:25 gives $$n_1 = (110 \times 60 + 38) \times 30 + 25 = 199165.$$ TC2 = 00:10:35:16 gives $$n_2 = (10 \times 60 + 35) \times 30 + 16 = 19066.$$ Adding: 218231 frames, which converts to 02:01:14:11.
FAQ
What is drop-frame? A counting trick for 29.97/59.94 fps that skips frame numbers (not real frames) so a one-hour timecode equals about one real hour.
Why is the frame field under 30 even at 29.97? The integer counter runs at the nominal rate (30); the .97 only affects which numbers are dropped.
Can the result be negative? Yes — subtracting a larger timecode shows a negative frame count and a minus-prefixed timecode.