A label is not a stopwatch.

There are three useful quantities behind a timecode value: the displayed label, the number of picture frames, and elapsed playback time. At an integer rate they can line up neatly. At a fractional rate, reading the hours, minutes and seconds as clock time can lead to the wrong answer.

For 29.97 video, this guide uses the exact rate 30000/1001. Non-drop-frame counting numbers frames on a nominal 30-count scale. Drop-frame counting changes selected frame labels so the displayed time stays close to elapsed clock time.

Neither counting choice changes the rate of the pictures. Apple’s glossary describes the skipped numbers at 29.97; Avid documents separate 29.97 and 59.94 DF/NDF formats. Apple glossary · Avid timecode formats.

Drop the labels. Keep the pictures.

At 29.97 DF, labels ;00 and ;01 are omitted at the beginning of each minute, except minutes divisible by ten. Minute 00, 10, 20, 30, 40 and 50 keep their opening labels. No picture frames are removed.

For a full-rate, 60-count 59.94 DF display, four opening labels are skipped at the corresponding minute boundaries. Some video systems display high-rate timecode using a different base or field indicator; confirm the representation before comparing raw labels.

DF is a counting convention, not a frame-rate conversion, a dropped-frame playback error or a way to turn 30 fps into 29.97 fps.

One frame later, a different label.

At the first minute boundary of a 29.97 DF count, the label after 00:00:59;29 is 00:01:00;02. The two labels in between do not exist in that counting mode.

Inspect the boundary.

00:00:59;29Last label before the boundary
00:01:00;02Next picture frame

Labels ;00 and ;01 are skipped at this minute boundary. Every picture frame remains.

At the tenth-minute boundary, no labels are skipped: 00:09:59;29 advances to 00:10:00;00 in the 30-count 29.97 DF representation.

What does one hour actually contain?

For an offset starting at zero, 01:00:00:00 at 29.97 NDF represents 108,000 frames. Their physical playback duration is 108000 × 1001/30000 = 3603.600 seconds: one clock hour plus 3.6 seconds.

At 29.97 DF, 01:00:00;00 corresponds to 107,892 frames. There are 54 minutes with two skipped labels in an hour: 108000 − 54 × 2. Those frames play for 3599.9964 seconds at the exact fractional rate. DF follows the clock very closely; it is not mathematically identical to every clock boundary.

Labels measured from a zero origin
Label and modeFramesElapsed playback
00:10:00;00 · 29.97 DF17,982599.9994 s
01:00:00;00 · 29.97 DF107,8923599.9964 s
01:00:00:00 · 29.97 NDF108,0003603.6000 s
01:00:00;00 · 59.94 DF, 60-count215,7843599.9964 s

The final row uses 60000/1001 fps. These are frame-offset calculations, not a claim about a recording’s time-of-day origin or an arbitrary edit’s inclusive out point.

Choose the delivery’s counting mode.

Carry the frame rate and DF/NDF flag with every timecode handoff. A naked value such as 01:00:00:00 is incomplete if the reader does not know the rate and convention.

  1. Read the source metadata and the receiver’s delivery requirements.
  2. Keep the frame rate and counting mode explicit in edit notes, caption work and exported logs.
  3. When subtracting timecodes, resolve both to a consistent frame-count basis first.
  4. Check whether an out point is inclusive or exclusive before adding a frame to a duration.
  5. For an elapsed-time comparison, convert the resulting frame count using the exact playback rate.

Do not apply the 29.97 drop pattern to 23.976, 24 or 25 fps. A fractional rate is not, by itself, an instruction to enable drop-frame.

Keep the format visible.

In Timecode Pro, select the correct rate and DF/NDF mode before entering a value. Keep frame count in one of the comparison displays when you need to inspect the number of picture frames represented by a label.

The elapsed-time examples in this guide are separate physical-rate calculations. App format comparisons retain their established rules; do not assume that a nominal-seconds display at a fractional rate is a stopwatch measurement.

If the source and destination rates differ, start with the HD and UHD frame-rate guide before changing the counting mode.

Validate and convert a DF/NDF label with the corresponding free tool.

Technical references

Examples use conventional 30-count and full-rate 60-count displays, exact rational rates and a zero origin. Confirm high-rate timecode representation when exchanging values with another system.