[Matroska-devel] Re: MPEG2 in MKV!

Pamel paul at msn.com
Thu Oct 30 18:02:38 CET 2003


First a little description of what pulldown is.  If the RFF bit is set in the
sequence header then then this progressive sequence of frames:

[A][B][C][D]

will be decoded to an interlaced sequence where the first letter is the first
field and the second letter is the second field in the interlaced image.  A
single image is split so that the odd lines become the uppercase letter and the
even lines become the lowercase.  The third and fourth images are combined so
that the image sequence looks like this:

[Aa][Bb][Cc][CD][Dd]


There are two ways to handle the pulldown. You can store it like its stored in
MPEG-2, or you can 'fix' it an remove the pulldown.

1. Store the four frames with timecodes like you are going to store 5 frames.
The fourth frame will have a duration that is twice the duration of the other
frames.  This should leave space for the decoder to generate the extra frame.

2.  Forbid pulldown.  When transferring the frames into MKV, you set the RFF
flag to 0, change the framerate, and space the frames out for what actually
exists.

John pointed out that you shouldn't force people to use progressive, but I say
you can encourage them.  So, I vote that we have both methods as an option in
muxing tools.  The default should be option 2, but you could set option 1.


Pamel






More information about the Matroska-devel mailing list