<p>Apparently, the frames are dropped at the same cadence, but with double frequency.</p>

<p>From FFmpeg's timecode drop function,</p>

<pre><code>if (fps == 30) {
    drop_frames = 2;
    frames_per_10mins = 17982;
} else if (fps == 60) {
    drop_frames = 4;
    frames_per_10mins = 35964;
} 
....
d = framenum / frames_per_10mins;
m = framenum % frames_per_10mins;

return framenum + 9*drop_frames*d + drop_frames*((m - drop_frames)/(frames_per_10mins/10));
</code></pre>

<p>and the string is</p>

<pre><code>ff = framenum % fps;
ss = framenum / fps      % 60;
mm = framenum / (fps*60) % 60;
hh = framenum / (fps*3600) % 24;
</code></pre>

CC BY-SA 3.0
2017-11-05T10:34:21.857Z
Great idea. So from that code it really looks like the pattern of dropping every minute excepts tens of minutes is the same but dropping 4 instead of 2 frames.
Sebastian
CC BY-SA 3.0
2017-11-02T06:09:15.387Z
2017-11-02T06:09:15.387Z
Gyan
<p>The pattern for dropping frames in 29.97 drop-frame SMPTE timecode is well documented (2 frames at every minute except when minute is a multiple of 10).</p>

<p>I was wondering how it works with 59.94 fps drop-frame timecode? I guess it needs to be twice the amount of frames dropped, but what is the exact pattern?</p>

<timecode>
How are frames in 59.94 drop-frame timecode dropped?
Sebastian
# How are frames in 59.94 drop-frame timecode dropped?

(Asked by: username_0 on 2017-11-01)

The pattern for dropping frames in 29.97 drop-frame SMPTE timecode is well documented (2 frames at every minute except when minute is a multiple of 10).

I was wondering how it works with 59.94 fps drop-frame timecode? I guess it needs to be twice the amount of frames dropped, but what is the exact pattern?

**Tags:** timecode


---

## 1 answers

### Answer by username_1 on 2017-11-02. Score: 5 | Accepted answer

Apparently, the frames are dropped at the same cadence, but with double frequency.
From FFmpeg's timecode drop function,
if (fps == 30) {
    drop_frames = 2;
    frames_per_10mins = 17982;
} else if (fps == 60) {
    drop_frames = 4;
    frames_per_10mins = 35964;
} 
....
d = framenum / frames_per_10mins;
m = framenum % frames_per_10mins;

return framenum + 9*drop_frames*d + drop_frames*((m - drop_frames)/(frames_per_10mins/10));

and the string is
ff = framenum % fps;
ss = framenum / fps      % 60;
mm = framenum / (fps*60) % 60;
hh = framenum / (fps*3600) % 24;

> **Comments:**
> **username_0**: Great idea. So from that code it really looks like the pattern of dropping every minute excepts tens of minutes is the same but dropping 4 instead of 2 frames.  

---

