{{ summaryTitle }}
{{ summaryValue }}

{{ summarySubtitle }}

{{ badge.label }}

{{ copyPrimaryDone ? 'Duration copied.' : '' }}

Timecode span inputs
Film, PAL, NTSC drop-frame, non-drop, high-frame-rate, and custom NDF profiles are available.
Use a positive rate from 1 to 240 fps.
fps
{{ startHelpText }}
{{ endHelpText }}
Use Exclusive for timeline in/out marks and Inclusive for last-frame pull lists.
The neutral default preserves the entered order and flags a negative span.
The neutral default is 0; add handles for VFX, sound, or review pulls.
frames
Force a separator only when a downstream sheet requires it.
Optional, for example VFX pull, act two, or mix review.
{{ copyDurationDone ? 'Duration ledger copied.' : (downloadDurationDone ? 'Duration ledger downloaded.' : (exportedDurationDocx ? 'Duration ledger exported.' : '')) }}
MetricValueDetailCopy
{{ row.metric }}{{ row.value }}{{ row.detail }}
{{ copyChecksDone ? 'Editorial checks copied.' : (downloadChecksDone ? 'Editorial checks downloaded.' : (exportedChecksDocx ? 'Editorial checks exported.' : '')) }}
CheckStatusActionReasonCopy
{{ row.check }}{{ row.status }}{{ row.action }}{{ row.reason }}
{{ chartExportAnnouncement }}

Editing decisions are made on frame boundaries, so two matching-looking clock labels can still describe different spans. A timecode address has four fields—hours, minutes, seconds, and frames—but its meaning depends on the frame-rate profile, whether drop-frame counting is active, and whether the final label belongs to the selection.

Non-drop-frame (NDF) counting assigns every nominal frame label in sequence. At fractional NTSC-derived rates such as 29.97 frames per second, those labels drift away from elapsed clock time. Drop-frame (DF) timecode compensates by skipping label numbers at prescribed minute boundaries. No video frames are discarded; only some addresses are unused.

Questions that determine a timecode duration
DecisionWhy it changes the answer
Frame-rate profileSets the valid frame field, real seconds per frame, and any skipped-label rule.
Exclusive or inclusive endAn inclusive final label adds one frame to a non-negative span.
End before startMay be an entry-order problem or an intentional wrap across a 24-hour boundary.
Handle framesAdds equal head and tail material to a pull without changing the selected editorial span.

Exclusive out points are common on editing timelines: the out label names the first frame after the selection. Pull lists sometimes name the last included frame instead. Confusing those conventions creates a one-frame disagreement even when the labels and frame rate are otherwise correct.

Handles solve a different handoff problem. Visual-effects, sound, color, review, and archive workflows may need extra frames before and after the chosen range. They enlarge the requested pull, but they do not redefine the original in-to-out duration.

Timecode identifies positions within a chosen counting system; it does not prove that two files share the same edit rate, starting offset, reel, or media. Confirm the source sequence settings before treating a calculated span as an editorial handoff.

How to Use This Tool:

Match the timeline profile and endpoint convention first; those choices determine how both labels become frame indexes.

  1. Select the Frame rate used by the source sequence. Choose Custom NDF only for a non-drop rate from 1 through 240 frames per second.
  2. Enter Start timecode and End timecode as HH:MM:SS:FF, HH:MM:SS;FF, or eight digits. Correct any invalid frame field or skipped DF label before continuing.
  3. Choose Out point exclusive when the end label is the first frame outside the selection. Choose Include end frame when it is the final selected frame.
  4. Keep End before start on Flag as review unless the range intentionally crosses a 24-hour boundary. Add handle frames per side only when the recipient requests them.
  5. Check Duration frames, Runtime, and the editorial warnings together. The frame count is the best audit value; runtime uses the profile's real playback rate.

Interpreting Results:

  • Duration frames is the signed selected span after the endpoint convention is applied.
  • Runtime converts that count with the real frame rate, so 29.97 and 30 NDF do not have identical elapsed seconds.
  • Pull frames never goes below zero and adds twice the handle count to a non-negative duration.
  • A separator warning does not by itself change the count, but a skipped DF label is invalid and must be corrected.
  • A negative duration under Flag as review should be verified before handoff; wrapping it is correct only when a 24-hour rollover is intended.

Technical Details:

Timecode arithmetic becomes reliable once each address is mapped to an absolute frame index. Nominal frames per second controls label syntax, while real frames per second controls elapsed runtime. For example, 29.97 DF uses a nominal base of 30 but a real rate of 30,000/1,001 frames per second.

Transformation Core

Each input follows one ordered path: normalize the label, validate its fields against the profile, subtract any scheduled DF labels, and produce a frame index. The two indexes then pass through the wrap and endpoint rules before runtime and handles are derived.

  1. Eight digits become four two-digit fields; a period before frames becomes a semicolon.
  2. Minutes and seconds must be 00 through 59. The frame field must be smaller than the nominal frame base.
  3. At 29.97 DF, labels ;00 and ;01 are skipped at the start of every minute except each tenth minute. At 59.94 DF, ;00 through ;03 are skipped under the same exception.
  4. If 24-hour wrap is selected, complete profile-specific days are added until the end index is no earlier than the start index.

Formula Core

For NDF timecode, the frame index uses the nominal base N:

F=((h×60+m)×60+s)×N+f

DF counting subtracts d skipped labels for every completed minute except each tenth minute. With M = 60h + m:

FDF=Fd×(MM10)

The selected duration and elapsed runtime then follow directly:

Fduration=FendFstart+I runtime=Fdurationrreal

I is 1 only for an inclusive, non-negative span. At 24 NDF, identical start and end labels therefore produce 0 frames when exclusive and 1 frame, or 1/24 second, when inclusive.

Supported timecode profile families
Profile familyNominal baseReal rateCounting rule
23.976 NDF2424,000/1,001All nominal labels retained
29.97 DF / NDF3030,000/1,001DF skips 2 labels at most minute starts; NDF skips none
59.94 DF / NDF6060,000/1,001DF skips 4 labels at most minute starts; NDF skips none
24, 25, 30, 50, 60 NDFSame as rateSame as rateAll labels retained
Custom NDFRounded rateEntered rate1 through 240 frames per second; no dropped labels

Accuracy Notes:

The calculation treats timecode as a continuous frame-address sequence. It does not inspect media, detect variable frame rate, reconcile reel changes, or verify that an NLE interprets a forced colon or semicolon the same way. Confirm the timeline's edit rate and endpoint convention in the originating system.

References: