Frame Rate Conversion and You

There are two basic types of content stored on most DVDs: content that came from a 24 fps source and content that came from a 30 fps source. The most popular is 24 fps source content because all movies are recorded at 24 fps and since the majority of DVDs out there are movies, this is the type we'll talk about first.

Although most motion pictures are recorded at (approximately) 24 frames per second, no consumer television is capable of displaying at that frame rate. In order to get TVs up to the sizes that we all know and love (and at affordable prices), TVs are not as flexible as computer monitors - they are fixed frequency displays, so displaying contents with varying frequencies is not exactly possible. The DVD production houses know this so they have to convert their 24 fps source into something that can be displayed on the majority of TVs out there.

In the North American market, the majority of TVs are interlaced NTSC TVs that display 60 fields per second. As we've just explained, a single interlaced field has half the resolution of a full frame in order to save bandwidth; by displaying 60 of those interlaced fields per second, the human eye is tricked into thinking that each frame is complete. But how can you convert 24 non-interlaced (aka progressive) film frames into 60 interlaced fields?

The first step is to convert the progressive film frames into interlaced frames, which is pretty simple, just divide up each frame into odd and even lines and send all the odd ones to one field and all the even ones to another.

Now we have 48 interlaced fields, but we are still short of that 60 fields per second target. We can't just add 12 more fields as that will make our video look like we hit the fast forward button, so the only remaining option is to display some of the 48 fields longer. It turns out that if we perform what is known as a 3-2 pulldown we will have a rather nice conversion.

Here's how it works:

We take the first progressive frame and instead of just splitting it into two interlaced fields, we split it into three, with the third being a copy of the first. So frame 1 becomes field1a, field2a and field1a again. Then, we take the next progressive frame and split it into two interlaced fields, field2a and field2b, no repetition. We repeat this 3-2 pattern over and over again to properly display 24 fps film source on interlaced NTSC TV.

There are a few movies and some TV shows that are recorded at a different frame rate: 30 fps. The 30 fps to 60 fields per second conversion is a lot easier since we don't need to alternate the pattern, we still create interlaced fields for the sake of NTSC compatibility but we display each field twice, thus performing a 2-2 pulldown instead of the 3-2 pulldown that is used for film. One of the most popular 30 fps sources is Friends (note: it turns out that Friends is incorrectly flagged as a 30 fps source but is actually a 24 fps source) but other sources are sometimes recordered at 30 fps, including some bonus material on DVDs. Because of this, while 24 fps sources are usually categorized as "film", 30 fps sources are usually called "video" (these names will have significance later on).

Remember that the whole point for performing these conversions is that until recently, all televisions have been these low bandwidth interlaced displays. Recently however, televisions have become more advanced and one of the first major features to come their way was the ability to display non-interlaced video. A non-interlaced TV is useless without non-interlaced content, thus manufacturers produced affordable non-interlaced DVD players, otherwise known as progressive scan DVD players.

But if you have a progressive scan DVD player you don't have to buy progressive scan DVDs, the DVD player instead does its best to reassemble the original progressive scan frames from the interlaced content stored on the DVD. Given the two major algorithms we mentioned above, reconstructing the original progressive frames from the interlaced data on the DVD shouldn't be a difficult task. Once the DVD player know if it is dealing with 24 fps or 30 fps content, it simply needs to stitch together the appropriate fields and send them out as progressive frames. The DVD spec makes things even easier by allowing for flags to be set per field that tell the DVD player how to recover the original progressive source frames. No problems, right? Wrong.

It turns out that the flags on these DVDs aren't always reliable and can sometimes tell the DVD player to do the wrong thing, which could result in some pretty nasty image quality. So DVD players can't just rely on the flags, so algorithms were created to detect the type of source the DVD player was dealing with. If the decoder chip detected a 3-2 pattern it would switch into "film" mode and if it detected a 2-2 pattern it would switch into "video" mode. The problem here is that due to a variety of factors including errors introduced during editing, transition between chapters on a disc, and just poorly encoded DVDs, these algorithms are sometimes told to do the wrong thing (e.g. treat 24 fps content as 30 fps content). These hiccups in the 3-2 pattern don't happen for long periods of time (usually), but the results can be quite annoying. For example, if the DVD decoder chip tries to combine two fields that belong to different frames, the end result is a frame that obviously doesn't look right. While it may only happen in a few frames out of thousands on a single DVD those few frames are sometimes enough to cause a ruffled brow while watching your multi-thousand-dollar home theater setup.

So what does all of this have to do with NVIDIA's PureVideo? Although it's not in a set-top box, PureVideo is just as much of a DVD decoder as what you have sitting underneath your TV, it's just in your computer. And to measure its effectiveness, we have to look at how it handles these trouble cases. Remember that your PC is inherently a "progressive scan" device, there's no interlacing here, so the quality of your videos directly depends on NVIDIA's algorithms.

An Interlacing Primer A Brief Look at De-Interlacing Modes
Comments Locked

62 Comments

View All Comments

  • Rand - Monday, December 20, 2004 - link

    Anand- Could you provide the details on what the test platform in use was?
    You mentioned the processor of course, but it would be appreciated if you could disclose the other components in use.

    Thanks.
  • Spike - Monday, December 20, 2004 - link

    But the 6800's come with NVDVD (at least mine did), isn't that basically their decoder? Other users are reporting their new (just recieved today) 6800 GT's coming with the DVD decoder on CD.

    -spike
  • Anand Lal Shimpi - Monday, December 20, 2004 - link

    NVIDIA's DVD decoder has always been $20, unfortunately I don't know of a single manufacturer that gives away their DVD decoders for free.

    The WMV9 acceleration can be had without the DVD decoder, however that you will have to wait on Microsoft for as WMP10 needs to be updated.

    The features right now are mostly for HTPC enthusiasts who want the image quality benefits offered by PureVideo.

    Take care,
    Anand
  • Spike - Monday, December 20, 2004 - link

    I am still confused on the "free" comment. If I have to pay $20 to enable a feature that was supposed to come with my 6800 GT, how is that free?

    Thanks,
    spike
  • Anand Lal Shimpi - Monday, December 20, 2004 - link

    How to enable WMV9 hardware acceleration on ATI cards:

    Note: WMV9 acceleration has been disabled until Microsoft issues a new patch for WMV9. To enable this with other versions of Catalyst (with some rendering errors), RUN regedit -> HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> Control ->Video and find your ATI reg value. The key to update is DXVA_WMV = 1

    Take care,
    Anand
  • gordon151 - Monday, December 20, 2004 - link

    #16, It does. It just doesn't have the full capabilities that it was advertised as having. If you look at the descriptions you'll see only the 6600 AGP/PCI-E and 6800 PCI-E have use of the full capabilities of the encoder.
  • Klaasman - Monday, December 20, 2004 - link

    I don't see on Nvidia's website where the 6800GT does NOT have PureVideo capability. They say all Ge Force 6 series.
  • OriginalReaper - Monday, December 20, 2004 - link

    why couldn't *those* sites shut down next week instead :-\
  • Gatak - Monday, December 20, 2004 - link

    There are some facts missing when it comes to differences between interlaced and progressive video.

    NTSC TV broadcasts are recorded at 60fps, not 30fps. (PAL is 50fps). Each field is recorded after eachother in time. There is a 16.7ms delay between each field.

    If you were to de-interlace two fields into one frame you would loose half of the temporal resolution! This is a big mistake - especially for fast moving things like a football or hockey game.

    A proper de-interlacing method would render each field as a separate frame (like a TV does!), not blend or discard fields.

    24fps content, on the other hand, need to be converted to fit the 60fps NTSC (or 50fps PAL). It is nasty and should be banned. A DVD/MPEG-2 video is perfectly capable of storing 24fps progressive.

    So, what we want is to render 24fps content as 24fps progressive and TV content as 60fps progressive.

    Remember, a TV is already interlaced. There will be no problems with interlaced content because each field is rendered consecutively. It is only on a computer monitor which is progressive where we need to do field deinterlacing.
  • SlinkyDink - Monday, December 20, 2004 - link

    How can we enable hardware acceleration on our ATI cards now? (I believe its a registry edit)

Log in

Don't have an account? Sign up now