MPEG2 Flagging and
Timecode Utility

This program takes a progressive MPEG2 video elementary stream, and applies pulldown flags to change it to a higher legal MPEG2 output frame rate. It also allows changing/correction of timecodes.

DGPulldown is useful for applying traditional 3:2 pulldown. It is also useful for converting 25fps PAL progressive material to NTSC. It allows you to encode your movie to MPEG2 at 25fps using progressive encoding. This saves a lot of bits and therefore allows for much better quality with the same bit budget. Also, compared to methods that first slow down the video and then apply 3:2 pulldown, there is no need to process the audio.

The great idea for using irregular pulldown patterns for PAL to NTSC conversion was first suggested by 'Xesdeeni'. An extensive discussion of the theory and usage of DGPulldown can be found at the Doom9 forum:

Pulldown of 25 fps to NTSC

A typical workflow is as follows (assumes you are starting with PAL source material):

DGPulldown works by altering the MPEG2 RFF/TFF flags to increase the number of display frames to exactly the right number to generate the specified output frame rate during playback.

The latest released version is 1.0.11. This version fixes the drop frame option. The option was ignored and so only the auto mode worked. It was not possible to enable or disable drop frame using the 3-state checkbox.

DGPulldown Version 1.0.11

Version 1.0.10 fixed a bug in in-place operation that caused possible corruption of the last 32Kbytes of the source file.

Version 1.0.9 fixes a bug in the initialization of the destination file edit box when drag-and-drop is used.

Version 1.0.8 fixes the problem of in-place operation with files greater than 2GBytes in size, makes the field order of the output stream user configurable, presents more meaningful statistics during processing, and adds a GUI configurable output path (to allow having input and output on different physical disks for faster operation). A note was also added to the help file that explains how to use DGPulldown to remove all existing pulldown.

Version 1.0.7. offers an option to modify the input file instead of creating a new output file. Update: this feature is broken in this version for files greater than 2GBytes in size!

Version 1.0.6 adds a command line interface (CLI).

Version 1.0.5 adds drag-and-drop to the input file edit box.

Major contributions to the code were made by "Jetlag". The author appreciates and acknowledges the assistance of the members of the Doom9 forum (http://www.doom9.org) in the development and testing of this software.


This entire package is released under the GNU General Public License, as described in the accompanying file COPYING.

Copyright (C) 2005-2007 Donald A. Graft, All Rights Reserved.

[up to home page]