Less Is More: Why 24fps is Important in Home Theater PCs

By Aaron Brezenski (Intel) (5 posts) on May 19, 2008 at 4:55 pm

When I play games, I want my PC to be able to generate as many frames per second as possible; it's a measure of the strength of the CPU and GPU solution which is used consistently in gaming benchmarks to show which processor and/or graphics card is better.  My PC can beat up your PC if I can generate eye candy at a whopping 130fps and you can only do a mere 100.

Why then are home theater PC folks so obsessed with playing back at a paltry 24 frames per second when graphics solutions (including integrated graphics) are easily able to send out 60?

Judder-bug

Okay, so it's not an actual bug, it's just a bad pun. But the key is the word "judder". To understand why it matters, we must understand how films are made.

Motion pictures in 99% of Hollywood cinema are recorded at 24 frames per second and then each frame is strobed twice before the next frame is indexed. In effect, film in theaters is displayed at 48Hz, though the actual content is 24Hz.

Historically speaking, TVs are 60Hz (to match the AC frequency of the wall socket; in other countries with different wall socket frequencies, the TV rate is different). While I won't get into the specifics or the full history here (there are lots of sites out there which cover why this was so and how it was compensated), the major understanding to carry forth is that in order to get 24 frames of content into something that is refreshed 60 times per second, you have to repeat frames in an irregular way.

In short, the first frame in every second is repeated 3 times, the second frame is repeated 2 times, the third frame is repeated 3 times, the fourth is repeated 2 times, etc. This process is known as "3:2 pulldown", and you can see from the math that if you repeat 12 frames 3 times each and 12 more frames 2 times each, you will get 60.

So all of the picture content makes it onto the television screen, so everything's great, right? Alas, the human eye is only partially fooled: on scenes with high amounts of motion or where the camera pans across a landscape, the phenomenon known as "judder" manifests. The motion should be smooth, but you can see some jerkiness to it due to the fact that every other film frame is of slightly different duration.

This isn't a new problem: film has been 24fps for a long time, and TV has been 60Hz for almost as long. When TVs were interlaced the issue was reduced because at the transition between the 3-frame and the 2-frame the middle frame was essentially a mix of the two (again, not going into the specifics on interlacing history). Nowadays, TVs are made with non-interlaced (aka "progressive") components and you can see the judder artifacts better.

There are ways around this; people with computer monitors have a bit more flexibility with their refresh rates than TV users traditionally do. Setting the graphics to output at 72Hz generates a nice image (since 72 is an even multiple of 24), but the vast majority of television sets won't accept 72Hz signals. And while there are some computer monitors you could reasonably call "home theater worthy", most are a bit small and limited.

As I mentioned, this is not a new issue, but until now most sources were interlaced (even DVDs are generally interlaced, though flags in their software exist so progressive player hardware can pick out the original frames) so the issue wasn't high profile. With new technology like Blu-ray, the video is stored as 24 actual pictures per second, and the only limiter left is the display.

Of course, when you're a Consumer Electronics manufacturer, any nifty gadget you can add to your TV to distinguish yourself from your competition is a good one, and someone got the bright idea to include inputs which would accept and display 24fps. Everyone else soon followed, and now a lot of mid- to high-end equipment has the ability to take in images at 24fps and display it at some multiple of that (technology in the generic TV set has changed enough to decouple it from the original 60Hz number).

What the heck is your point, Brezenski? What does this have to do with Intel graphics?

Glad you asked. Early drivers for the 945G, G965, G33, and G35 were all capable of 24Hz output. You had to play tricks on them sometimes to convince them they could do a resolution/refresh they didn't know about by default, but if you got the drivers to accept that they could do it the chipset graphics would deliver 24fps goodness. After all, theoretically in sheer processing power it should be easier than the normal 60fps; any integrated graphics chip should be able to do it.

In reality, there were some difficulties, and they remain today. Desktop work at 24fps was fine, but watching media at 24fps exhibited very jerky behavior every several seconds or so... then returned to silky smooth motion once more. This was across a variety of software players-- both free and consumer-- and across multiple motherboards and chipsets. And didn't manifest on either ATI or Nvidia graphics... suggesting, once more, that this was a problem with the drivers. (It's vaguely possible this is a hardware issue with the chipsets, whose design concentration would logically have been "ensure high refresh rates".) There was some sign this might be modulated by the renderer used (EVR vs VMR) as well as by the presence of extra frames in the source files, but as of the 15.7 drivers there manifested a new problem: all support for 24fps is gone.

Whether your EDID is advertising the 24fps capability or not, even if you use the trick I linked to above, the resolution won't show up as selectable in the Intel drivers. 48Hz still seems to work fine... but as there are only a handful of TVs which accept 48Hz signalling, this is small consolation.

It could be that someone on the driver team recognized that 24fps was broken and removed it, or there could be something else going on that's even more mysterious. It could entirely be an oversight. But the fact is, even if you want jerky 24fps on Intel graphics you now have to use older drivers, keeping yourself in the past and avoiding fixes you might want for other bugs.

I haven't gotten my hands on a G45 system yet, so I don't know if this issue is fixed on newer graphics chipsets yet, but I sure hope so.

If you ask around in the home theater PC community, there are three issues which prevent Intel graphics from being an all-around winning solution for HTPCs:

1) The HDCP repeater bug

2) The 24fps problems

3) The Denon HDMI EDID issue

You'll note that these three issues just happen to be the ones I've covered in my blog. This is not coincidence.

I've seen internal presentations, and if our drivers meet or exceed the hardware the G45 is going to be a great chipset from a home theater standpoint. But it's important that we address the enthusiast in this space (because the enthusiast is going to tell his friends what to buy) and the enthusiast sees all three of those issues as important to have solved in a quality system.

So far I've not noticed a driver release which fixes any one of them. I don't know that any of our Graphics (or Audio) folks read this blog, but I sure hope so.

P.S. I won't even discuss the fact that it should really be 23.976fps instead of exactly 24fps. You'll have to figure that one out on your own. :)

Categories: Graphics

Comments(7)

May 20, 2008 3:21 AM PDT


Nathan Bray
It can be worse.....ever seen how bad 24p judder looks @ 50hz for us in "PAL" world!

I agree that Intel's G33/35 chipset is (or could be) the HTPC graphic engine of choice at present. While I hope that this blog and similar threads at AVS helps develop awareness within Intel I think it is really sad indictment that these issues are NOT being championed by the driver developers themselves.

Keep up the good work!
Nathan
May 20, 2008 2:48 PM PDT


MIck
Another great summary article AB!!

Keep at it my friend.
June 30, 2008 3:25 AM PDT


Sameer KP
The 24Hz mode which is mentioned here I believe is 1920x1080@24Hz
(progressive). This is not supported on sDVO based HDMI solutions.

How it worked then before?
Initially when we added support for registry/INF based modes, it just overloaded whatever Intel chipset & the sDVO chip (used for HDMI in said platforms) could (or rather was supposed to!) support. Later this was cleaned up so that only the originally advertised CE modes could be enumerated on the said products. This means though this mode (1920x1080@24Hz I believe) was added as a custom mode via INF, driver will remove it as that's not supported for sDVO based HDMI solutions.
July 20, 2008 10:46 PM PDT

7oby
Total Points: 1952
Status Points: 1452
Brown Belt
Regarding 24p/24Hz output:

Unfortunately sDVO specification is no longer available without NDA:
http://softwarecommunity.intel.com/isn/Community/en-US/forums/thread/28280007.aspx


I don't see how some transport protocol (sDVO) should have an impact on the content (e.g. display resolutions) it conveys besides some general constraints related to bandwidth. Some general purpose sDVO HDMI Transmitter such as
http://www.siliconimage.com/products/product.aspx?id=106

and the GM965 chipset
http://www.intel.com/Assets/PDF/datasheet/316273.pdf

adhere to EIA/CEA-861B specifcation or at least don't constraint it. As such they are valid devices for transmitting EIA/CEA-861B 1920x1080p@24Hz.


People which want to do that are stuck with Linux or Windows IEGD 8.x drivers I assume. Which reminds me of intel GM855 chipset: You can't use Widescreen resolutions with its Windows drivers unless you use Linux or IEGD drivers.

Besides that there are other use case scenarios for low refreshrates: WQXGA resolutions such as 2560×1600 on a 165 MHz HDMI Link. I've played with that in Linux, but I guess it will never work in Windows. This would be beyond the maximum specified horizontal 2048 pixelwidth.
July 25, 2008 12:22 PM PDT


Tek
Aaron, any update on 24p in G45? Have you had a chance to get your hands on a G45 board yet?
August 8, 2008 9:47 AM PDT

Aaron Brezenski (Intel)
Total Points: 515
Status Points: 515
Black Belt
Evidently this is not fixed on G45 yet. Folks are still seeing stuttering every 10-15 seconds.
August 21, 2008 4:33 AM PDT


DrivesMeCrazy
@Aaron: When I read your last comment... does "evidently this is not fixed" mean, that it will be fixed in a reasonable periode?

For a few weeks, I could live with this bug, but not for years :o


Leave a comment

Name (required)

Email (required; will not be displayed on this page)

Your URL (optional)


Comment*