I know that most of my readers are not technically inclined. So, I will try to explain things as simple as I can. I have just built a Home Theatre PC (HTPC) prototype at home. My purpose for doing so is to get some performance numbers so that I will know what resources I’ll need to design and build my final HTPC.
The prototype HTPC is using a small form factor and low powered computer that I used to sell. It uses a VIA 1GHz processor, which has the equivalent performance of a Celeron 600MHz or so. This is fairly underpowered and it shows. I have been testing the system for playing back films that were encoded with H264 and vorbis.
VCDs are encoded with MPEG1, DVDs with MPEG2 and Bluray uses H264. So, H264 is a superior method for encoding videos. It is able to compress the size of the video while maintaining a superior image quality. What this means is that I can store about 350 full length films on a 250Gb hard disk. However, the trade-off is that it requires more computing power to play the video as compared to other encoding methods.
The prototype HTPC will happily play back a DVD sized video encoded in H264. However, when I check the load consumption numbers, they are hovering at about 0.9, which means that 90% of the processor’s working time is being consumed during playback. This means that the processor cannot do anything else while playing the film. This is not very useful for the production HTPC that will probably have to stream the video files from somewhere off the network while playing it.
However, an Atom based system should be more than capable of doing it. The D945GCLF-2 board has a new dual-core Atom processor in it with HyperThreading capabilities running at 1.6GHz. This will effectively mean having about a 4.2GHz processor, which is more than sufficient. So, the new Atom board should be able to happily decode films and stream them off the network. They also come with S-Video/Composite ports at the back that can be connected directly to a TV set.
While most websites recommend running a HTPC with at least 512Mb of RAM, the prototype system has only got 128Mb of which 16Mb are used for shared video. So, this leaves the computer about 112Mb of memory. When a computer is low on memory, the operating system will use the harddisk to store parts of it, which will slow it down a lot. This shows as everything takes a long time to start and run. So, for the final HTPC, I will probably install 1Gb of RAM in it.
As for noise, the prototype system has a notebook harddisk and processor fan in it. However, the noise levels are such that I cannot hear them at all. There are so many other sources of noise in my living room that these things are not really a consideration at all. Once the film starts playing, I can no longer hear the computer anyway. However, for cost purposes, I would probably install a solid state storage in the final HTPC.
As for power, the Atom based system is fairly low on power. I believe that the total amount of heat dissipated is under 40W. So, that is like having a 40W light bulb sitting in the living room. While it will generate some heat and feel warm to the hand, it will unlikely start any fires in the TV cabinet.
And for the software, I am presently using the default build of Mythbuntu – a specialised version of Ubuntu Linux for media PCs. It works well enough for my purposes. I like the fact that it has a full OS installed, which allows me the freedom to download stuff onto the HTPC.
The one hardware thing that I was not able to test is surround sound because I do not have a suitable sound system. The board comes with SPDIF, which is often used to transmit 5.1 surround sound channels from a PC to audio equipment. However, I was able to test the playback of a 5.1 surround sound film and the 1GHz processor was unable to handle the job. As a result, the film stuttered a lot and the sound was horrible.
Another two things that I was not able to test is the remote control and IR transmitter functions. These will have to be bought and installed for a proper HTPC. It does not make sense to run a HTPC with a keyboard attached. The alternative is to connect a mini keyboard to the HTPC but even that seems rather bland.
So, all in all, it’s quite a successful prototype so far. I will try to assemble a final HTPC at some point in time. I’ve already identified all the components and will only need to pop down to LowYat (or order the parts online) at some point.