Introduction
Determining your needs
Basic Hardware
Audio
Video
Video Card Configuration
LIRC
Input Devices
TV/HDTV Tuner Cards
Installing Linux
HTPC Software
HTPC Tips and Tricks
Conclusion

Linux HTPC How-to

Video

Picking a Video Card

Video cards also are another difficult area as there is only 1 brand of cards, NVIDIA, that have on board MPEG2 decoding (_That is supported under Linux_) that helps offload the CPU. ATI cards, however, are known to have truer color output and better contrast and gamma tables.

I wish I had a better solution for video hardware, but right now there isn't (A better solution would be a card with the best picture, MPEG-2, DIVX, etc hardware decoding). If you plan on having HDTV, and want to offload the CPU of this processing, you're only choice right now is using an NVIDIA Geforce 4 MX card or later. This is very helpful when you are trying to decode a 1920x1080 resolution MPEG2 stream. This decoding requires at least a 2.4Ghz CPU to do if you don't have hardware support.

How you can overcome this hardware demand

If you're willing to decrease the resolution you can easily lower the hardware demands. Let me explain what I'm doing. My projector's native resolution is 1024x768, but I will only use 1024x576 worth of it. If I was to keep the full 1920x1080 MPEG2 stream, I'm simply wasting disk space, memory, and CPU cycles. Also, I plan on using MPEG-4/DIVX and future video codecs to also save disk space. Once you change from using MPEG-2 to any other format, you're MPEG2 hardware is useless.

By going down to a 1024x576 MPEG-2 stream (from 1920x1080), the CPU demand drops down to 20% (from 80%), but then by using MPEG-4, which is a better compression for video, it moves my CPU usage back up to about 30%. I also drop the space needed from 18GB (Gigabytes) per hour of data to 1.2 GB per hour.

Note: If you still want to keep a 1920x1080 MPEG-2 stream, you can drop to about 9GB/hr by removing the additional sub-channel audio and video that is sent in an HDTV ATSC stream, which also drops your CPU usage a little.

NVIDIA Cards

If you plan on staying with MPEG-2 as your video codec, I recommend the NVIDIA Geforce 440MX, 4200, 4600, 5200, and 5600. Any of these cards work just as good for the other for MPEG-2 decoding. It's your 3D performance that varies between cards.

ATI Cards

Chances are the newest card that you can afford is your best choice. There may be support in the future for ATI's MPEG-2 hardware decoder, but this isn't known right now.

Composite/SVGA/VGA/Component/DVI outputs/inputs

Your best choice is to find out which inputs your display device (HDTV, Projector, Plasma, TV, etc) uses, and use that. Most of the newest ATI and NVIDIA cards (as well as newest Projectors, Plasma, and LCD monitors) support DVI, which is the best choice. DVI uses a digital signal, so there is no loss in video quality (From what is send by the video card). DVI Cable is a little more expensive though, $2 per foot. The next choice after DVI is component or VGA. They both are fairly equal in quality, but VGA is more widely used. Next is SVGA, which is usually 640x480 max resolution (But many video cards have this as "TV-out". Last is composite, which is 640x480 max resolution, but it's a last resort. I use DVI as it will be the most widely used in the future, and it's the only pure digital video signal. DVI, VGA, or component are the only things you should ever use for a good HTPC. If your only choices are SVGA or composite, you should really consider getting a new display device, or, not plan on video quality being important to your HTPC.