Getting the Most Out of Your HTPC

Well, now that you have this wonderful Home Theater PC (HTPC), what do you do with it? In this article, I’ll provide some insight on how to configure your HTPC for maximum enjoyment. You paid a lot for this fancy piece of hardware. In fact, I paid as much for my HTPC as I did for my Denon 7.1 channel digital decoder and amplifier, and about half as much as I paid for my 720p projector. There’d better be a good reason for spending that much. Let’s explore…

Watching on the Big Screen

The first thing to consider is how you’ve connected your HTPC. Mine is not connected physically to my video system. That is, I have my HTPC sitting in another room of my home that I currently use as a den or study. It allows me the peace and quiet that I need to continue the on-going process of converting my movie collection into streamable media that I can serve from my HTPC.

I recognize that some people may want to connect their HTPC directly into their home theater system. Eventually, I’ll do this myself. But I have a problem, and you may also. Unless you have the latest video and audio equipment in your home theatre, you’re probably facing a physical connection issue that can’t simply be ignored. By this I mean that your slightly older video display (projector or TV) probably accepts, at most, analog component video (YPbPr) inputs. But the connection on the back of your HTPC (if you purchased the Gigabyte motherboard I mentioned in that first HTPC article) has only VGA, DVI-D and HDMI outputs.

Direct Digital Connection

If you’re lucky enough to have newer home theater equipment–a 1080p projector with HDMI inputs, and a newer 5.1 channel digital decoder/amp with HDMI video switching capability, then you’re really set. Just plug the HDMI output from the onboard ATI video circuitry into one of the free HDMI inputs on your amplifier, and start watching!

The nice thing about an end-to-end digital connection is that you’ll be able to watch your Blu-ray content in the highest resolution available to your display device. Such a connection between your HTPC and your TV will provide exactly the same home theater experience you’d get from your 350 dollar Blu-ray player.

Direct Analog Connection

As mentioned, to get the most out of a direct connection, I really need to use the digital (either DVD-D or HDMI) outputs. But, short of upgrading my amp and projector, I have little recourse here. My somewhat older Denon amplifier has component video switching capability for up to three inputs switched to one output, which is really nice for older devices and monitors. But unfortunately, none of this is compatible with modern digital signals. Until I come into some spare cash, I’m going to have to settle for an end-to-end analog signal between my HTPC and my projector.

To make matters worse, VGA has nothing whatsoever to do with component video, except that they’re both analog signals. Unfortunately these two analog signals operate in different color spaces, so there’s no ad-hoc wiring harness that you can solder together that will allow you to generate component video from the VGA signal at the back of your HTPC.

The solution to this problem is an inexpensive video transcoder. There are various devices available for reasonable prices that will actively convert from one color space to the other. Some of them have more capabilities–and are thus more expensive–than others. I’ve mentioned these devices briefly in my first HTPC article, but I’ll cover them in more detail here.

The device I’ve found that seems to be the best compromise between price and performance is one manufactured by Audio Authority called the 9A60 VGA to Component Video Transcoder. This is a sweet little device–the sweetest aspect of which is the price. In the first place, it does exactly what you want it to do, no more and no less. It converts an RGB signal from a VGA connector to YPbPr Component Video via the standard 3 RCA jacks, with no video scaling or dimensional transformations.

Incidentally, the best price I’ve found on the 9A60 is at mythic.tv for 105 dollars.

Setting Video Card Resolution

Regardless of the type of connection you establish, you’ll have to configure your HTPC’s video card to provide the exact resolution and format expected by your projector or television. An HDMI connection will make setting the computer’s resolution a bit easier, but it has to be done nonetheless.

The resolution expected by your viewing device of choice often depends on how you’ve configured it. For televisions, the resolution is somewhat hard-coded into the device, but projectors can usually be configured to display in different resolutions. Both types of devices can automatically handle a slightly varying range of resolution, regardless of configuration, the rendering quality of which depends on the quality of the display circuitry in the device.

You also need to understand the correlation between TV industry display resolutions and computer display resolutions. In the television industry, resolutions are defined in terms of number of scan lines and whether the signal is progressive or interlaced. Thus, you’ll often hear of TV’s that can display 480p, 720p, 1080i, or 1080p. The numeric values indicate the number of horizontal scan lines displayed, and the letter is either “i” for interlaced, or “p” for progressive (non-interlaced).

The number of scan lines directly corresponds to the vertical resolution on your HTPC. Thus, to generate a 1080p signal to your HD television, you’re going to have to configure your HTPC’s video card to display a resolution of (‘something’ x 1080). The ‘something’ is determined by back-calculating the horizontal resolution from the aspect ratio of your television.

The aspect ratio of US televisions (I mean NTSC/ATSC, rather than the European PAL standard) is either 4:3 or 16:9. So, on a wide-screen (16:9) US television, you would use the following formula to determine the horizontal resolution of your video card:

   Hr = Vr * 16 / 9

where ‘Hr’ stands for Horizontal resolution, and ‘Vr’ stands for Vertical resolution. Thus, the proper horizontal resolution for a 1080p display is 1080 * 16 / 9, or 1920.

The biggest problem you’re likely to run into in this process is actually finding a conforming resolution in the list handed to you by the Microsoft Windows video card configuration dialogs. Windows wants to query the monitor to find out what it can handle, and then transform this information into a set of resolutions compatible with your monitor, but when your monitor is effectively the Audio Authority 9A60, you’ll find it to be quite uninformative regarding what it can handle. Windows responds by giving you a minimal set of choices.

Fortunately, there is free software available in the form of an application called PowerStrip by a Taiwanese company called Entech, which allows you to manually choose your horizontal and vertical resolution, as well as color depth, and horizontal and vertical sync rates. These values must be chosen carefully, or you can damage your display device, but most TV’s and projectors are much more resilient than computer monitors. PowerStrip is pretty self-explanatory, and there are guides abounding on the Internet, so I’ll forego the details here.

Extender Technology

Before I’m ready to connect my HTPC directly to my home theater system, I’m going to use it for several months to convert my video collection, so I’ll want to use “Windows Media Center Extender Technology” and my home network to display my Media Center console on my home theater projector remotely.

Microsoft sells an extender device designed explicitly for this purpose, however, I already have an XBox 360 that I got for my family for Christmas last year, and the 360 has built-in WMC extender functionality. You activate it through the 360 console’s Media page. Look for the option to connect to a Windows Media Center PC.

When you select this “connect” option, the 360 displays an 8 digit random number on the screen, and tells you to use this number at the appropriate location when setting up the extender on your HTPC. In the Media Center setup menu of your HTPC, you’ll find an option for setting up an extender. During this setup wizard, an entry dialog will be displayed, where you’ll be asked to enter this 2-part, 8-digit value. Once you’ve entered this value, the rest is trivial, and your 360 will display your Windows Media Center console.

You can use your game controller to move about the WMC menus and select various options. There’s a cheat-sheet provided by Microsoft that will help you understand how the controller buttons map to Media Center functionality.

Watching Digital Television

TV cards–even digital TV cards–are so inexpensive these days, it would be a shame if you chose to forego that expense. I dare say a TV card costs less than the memory in your HTPC. With that TV card, you get the ability to watch digital TV in full definition.

Of course, if you’d rather spend 400 dollars on a stand-alone digital broadcast tuner, feel free. I much prefer the 80 dollar Hauppaugh WinTV solution. In fact, it’s so cheap, It’s worth considering purchasing two such tuners. Windows Media Center will recognize and consume both units. You can then use one of them to record from one channel, while you’re watching another channel on the other. You can even enjoy picture-in-picture features using both tuners–want to watch a movie while not missing the big game (or vice-versa)? Hmmmm. 400 dollars for a single stand-alone tuner, or 160 dollars for a couple of tuner cards? Not a tough choice.

In fact, the Hauppaugh WinTV 1800 card is actually two tuners in one; an analog tuner and a digital tuner. So even one card will let you do some of the fancy stuff–like recording a digital program while watching an analog program, each on different channels. But if you’re hooked on the realistic quality of digital TV, then you’ll probably almost forget that you have an analog tuner in your TV card. I didn’t even bother connecting the analog tuner to the antenna wire.

This does bring up an interesting side issue for me. The TV card has four antenna inputs on the back: TV, DTV, FM, and QUAM. Okay, I can understanding separate inputs for FM radio and Satellite or Cable input, but was it really necessary to separate the inputs for Analog and Digital TV? I can get a really nice analog picture by connecting my digital antenna to my Analog antenna input. I suppose it’s conceivable that your area has digital and analog broadcast towers set up in different locations, which would preclude aiming TV and DTV antennas in different directions… What I’d really like to see is some sort of software switch or hardware jumper that bridges the DTV input to the TV input, so I don’t have to use an input cable splitter to connect my DTV antenna wire to both inputs.

Time-Shifting and the Media Center Programming Guide

One of the nicest features of Windows Media center is the ability to easily record a program for later viewing. I can sit down on Saturday afternoon, and check out the schedule for the coming week. In a few minutes, and with just a few clicks, I can schedule the recording of broadcast movies or shows I want to watch. If you always schedule tuner B to record, then you know you can always watch tuner A without worrying about bumping in to a recording session.

Remember when you had to get out the manual for your VCR whenever you wanted to record a program on TV. It was a fairly complex and time-consuming process to configure your VCR to record a program at a later time. If you just wanted to record something now, it wasn’t too bad. You could almost figure it out without the manual (just press the red record button and the play button at the same time–often this combination was highlighted on the remote for this purpose). But if you wanted to record a program that was scheduled to start when you were not home, now that was a different matter. How’d I do that last time? Dang! Where’s that VCR manual?!

Windows Media Center comes with an online programming guide for the United States. If you live in the US, you simply supply your zip code when you configure your tuner card (and, of course, agree to the online content use license), and Media Center will configure your TV viewing experience with an online programming guide. Recording any program is as simple as finding the upcoming program in the guide, and pressing the record button at the bottom of the screen. This isn’t perfect–it never has been. Last minute programming changes will always be sources of heartburn, but the media providers understand this, and try more then ever to ensure that the content is accurate.

You even have the option of recording an entire season of a program with one button. Do you like a particular television program, but you forget to record it half the time, so there are gaps in your understanding of the program plot? No problem. Let Media Center do the remembering for you. Just tell it to record the entire season, and then forget it. If you become busy with life and stuff (who doesn’t?), and are unable to watch your program for a few weeks, don’t worry–when the load lightens up again, the missed episodes will be there for you to watch.

You can also watch a program while it’s being recorded. Now, why would you want to do that?! Okay, you can perhaps understand that you might wish to save this program and watch it again later. But most people who record while watching do so for one reason: They want to skip commercials on the fly. Just start recording a program you want to watch, then go away for 15 minutes or so. When you come back, you’ll have enough recorded material so that when a commercial starts, you can fast forward over it to the show again. By the time you get to the next commercial, enough material has been recorded to allow you to skip this one as well. This is a common feature on 200 dollar Personal Video Recorder (PVR) devices. PVR functionality comes built-in to a Media Center PC with a tuner card.

DVD and Blu-ray Movies

My system includes a Blu-ray disc player, so I can watch my Blu-ray discs on my HTPC. At the time of this writing, Blu-ray players (not recorders) can be had for between 100 and 150 dollars, and they’re coming down in price fast. It won’t be long before, like internal DVD players, you can pick one up for about 20 bucks.

But Blu-ray players can also play DVD’s and CD’s, as well. This shouldn’t be too surprising, as DVD players can also play CD’s. Thus, for about 100 bucks, I have an HTPC-based replacement for my stand-alone Blu-ray/DVD player. Such a device would normally cost 350 dollars or more in today’s market. (It’s becoming easier and easier to justify the 1000 dollar cost of my HTPC!)

For complete instructions on how to create a playable archive of your purchased movie content, see my previous article, entitled, “Creating a Disk-Based Movie Archive”.

NetFlix Streaming Media

One of my favorite services (and a primary motivation for me to build an HTPC in the first place) is NetFlix streaming video. I’ve had a NetFlix subscription for a couple of years now. Last year when NetFlix came out with free streaming video for current subscribers, I thought Christmas had come early for me.

If you’ve got your Media Center PC connected directly to your television, then you have a several options. The most obvious option is to open a browser window from your HTPC desktop, and navigate to netflix.com. In this case, you’re accessing NetFlix streaming video just as you always have (if, that is, you’ve used NetFlix streaming video in the past), except that now you’re watching it on your television, instead of your computer monitor.

If you’re using an WMC extender, or if you simply want to configure WMC as your only desktop (by making it non-minimizable), then you have fewer options. Since you can’t access your browser application from the extender console, you’ll have to find a way to access NetFlix streaming video through WMC itself. There are two approaches you can take.

One of these is a free software project hosted by Google code, called VMCNetFlix. VMCNetFlix is basically a Windows Media Center application that makes the NetFlix Web API available through the Windows Media Center interface. To use VMCNetFlix, you must be using Windows Vista Media Center (thus, the ‘VMC’ portion of the name), which comes packaged with Windows Vista Home Premium, Business or Ultimate editions. Assuming you are, simply go to the VMCNetFlix project download page, and download the package appropriate for your hardware architecture (32- or 64-bit).

Install the package by double-clicking on it, and then bring up Windows Media Center. Navigate up or down to the “Online Media” menu, and select the “Program Library” option. If you’ve seen this screen before, then you should see a new item in the list with the familiar NetFlix motif. Select the NetFlix program, and the VMCNetFlix application will help you configure your Media Center to access your NetFlix account.

I like this option because it’s easy to use, fully functional, and best of all–free. In sharp contrast, the other option for accessing NetFlix streaming content through WMC is just plain stupid. I’m sorry, but I just don’t understand how normally intelligent people can conceive of what they deem to be viable business models that fly in the face of reality. If you’re using an XBox 360 as a Media Center extender, then you can also access NetFlix streaming content through your XBox Live! account, if you have one. This would be fine, except that you have to have a Gold account, which means you’ll be charged a monthly fee to use a service that you already pay a monthly fee to use. Now, of course, if you’re an avid gamer, and you already pay for an XBox Live! Gold account, then this requirement probably won’t bother you (much).

The sad part about the XBox Live! method is that it’s the only officially sanctioned way of accessing NetFlix streaming content from the Media Center console. To be sure, there’s nothing illegal about using VMCNetFlix. It’s just that it’s a bit of a hack, which means that anytime NetFlix decides to change their web API, VMCNetFlix will have to be updated to accommodate the modifications.

Additional Features

You can also play games and execute other pc-based software. You’re not limited to using your HTPC as a media center. Unless you’ve configured WMC to be non-minimizable, you can simply click the usually minimize button in the upper-left corner and you’re looking at the Windows Vista PC screen on your TV. This means that any software you have installed is available from your TV. There are a few Windows games that can be played through the “Online Media/Program Files” menu.

There is on-line content available through Windows Media Center. Most of this is subscription based, but you’ll have to decide whether it’s worth the price. And finally, you can do most of the usually things with Media Center that you can do with media on your PC, including playing music. If you have a really nice stereo, this could be a great way to use your PC-based music collection.

Since PC’s are naturally extensible, having a PC as a component in your home theater makes your home theater extensible. Whenever a new PC-based media experience becomes available, you’ll be ready to take full advantage of it.

Advertisements

DMCA and Fair Use

I’d like to take a short detour from technical articles to cover some legalities regarding encrypted DVD and Blu-ray content. Now, this probably sounds like I’m going to write a lengthy disclaimer about copying encrypted copyrighted materials. I’m not. Instead, I’m going to delve into the law a bit and examine some of the rights that we’ve had in the past, but which have essentially been revoked or nullified by laws enacted due primarily to commercial lobbying efforts during the last decade.

The Digital Millenium Copyright Act (DMCA), signed into law by Bill Clinton in 1998 is one of the most significant infringements of American public rights ever recorded in history. And the true irony of it is that it has little or no effect on the problems it was originally tauted to solve–that of commercial media piracy. Because lobbyists and legislators are not stupid (I really believe this), one can only assume from this that the actual intent of the law is something different from the published intent.

The effects on consumer rights are both broad and deep. Where once we could simply set our VCRs to record broadcast content, so we could watch it later when we had time (and without commercial interruption, I might add), we could in the future be stopped cold from doing any such thing–even with broadcast content.

In 1976 a lawsuit brought to bare against Sony over the market introduction of the Betamax video recorder, by various broadcast and media content copyright holders, provided landmark legislation that nearly guaranteed the rights of the American consumer to record broadcast content for later viewing–a process also known as “time-shifting”. Sony won the case for time-shifting based on sub-section 107 of section 17 of the United States Code–more commonly known as the “Fair Use” clause of the US Copyright Act.

In early 2009, all analog broadcast will be turned off, in favor of digital broadcast, which is already happening today. To this statement, you might respond with, “Oh, that! Well, I have my 40 dollar set-top box already, so I don’t care.” But pure digital broadcast content paves the way for broadcast content encryption–all of it. Your set-top box will simply quit working in a few years. The very fact that satellite subscription services already encrypt all of their content should be a big red flag. You’ll have to subscribe to broadcast content. And, guess what–due to DMCA legislation, it’s already become illegal to descramble that content for time-shifting or other fair use purposes, because the act of copy-protection circumvention was made a new crime by that very legislation. Thus, fair use doesn’t even come into play.

Did you know you have to purchase a special TV to watch Blu-ray movies in full definition? Of course you did. Your old analog TV simply didn’t have the resolution. Everyone knows that. However, because of the careful timing of the market introduction of Blu-ray content, Blu-ray players, the HDMI and HDCP transmission standards, and HDMI-based digital video monitors (1080p televisions), most people are unaware of the fact that they can’t play their Blu-ray movies at full definition on any device that doesn’t have an HDMI input–even if it does have a component video input. If you want an end-to-end digital experience, then you’ve got to have a TV with a digital input.

After all, they purchased Blu-ray movies to see high-definition content. Why in the world would they want to then convert that picture into anything less than Blu-ray quality? Who would pay 30 dollars for a Blu-ray disc, and then watch it in DVD quality, when they could have spent half that amount for the DVD version of the same movie? No one would, but in the process of setting themselves up for a Blu-ray experience, they’ve also set themselves up with an end-to-end encrypted channel between the Blu-ray content and the very screen on which they view the content. The problem, of course comes into play for folks that don’t have the 5,000 to 10,000 bucks required to enjoy a true high definition experience at home.

If you have a high-end computer system, for example–perhaps you’re a gamer, and you’ve already laid out the money for a nice video system on your PC–you need special hardware, and software-based licenses to play your blu-ray discs on your PC in end-to-end digital definition. If you have a WUXGA (1920 x 1200) monitor, you must use either the HDMI port or the DVI-D (digital) port on your monitor. But if you do, then your monitor has to decrypt the HDCP digital signal.

This becomes much more of an issue with for-purchase on-line high-definition content–Amazon Unbox, or iTunes HD video, for example. If you do have the hardware, but you’ve lost the content licenses–perhaps you upgraded your operating system and unknowingly lost the licenses that Microsoft Windows silently stores for you–you’ll find your expensive monitor stubbornly refusing to display the HD content on your hard drive–yep, that content that you purchased. The monitor will simply refuse to decrypt any HDCP-encrypted content for which it can’t acquire a license over the HDMI cable. We’re being silently herded into a small coral, from which we’ll find it impossible to do the things we’ve always been able to do before with our legally purchased copyrighted material. Fair use has been subtly, but effectively by-passed.

Have you look around lately at the up-converting DVD players available these days? In fact, you can find all sorts of devices that will “up-convert” video from 480p (DVD quality) to 1080p–but only over HDMI. I spent 75 dollars last year on an “up-converting” DVD player. I plugged it into my component video channel, and messed with it for several hours before I found an obscure reference, at the bottom of page 57 of the manual, to the fact that the up-conversion feature only works over the HDMI input, but not the component input. I took it back to Best Buy and got my money back.

Why is this happening? Look, I’m not a conspiracy theorist. I believe I’ve mentioned this before. But when the facts are so glaringly obvious to anyone who puts just a little effort into looking around, it becomes difficult to deny the possiblity that the MPAA has an end-goal in all of these subtle changes in the electronics and media industries. Ironically, when I questioned the sales person at Best Buy about the HDMI requirement of up-converting DVD players, he laughed and said, “Of course it only works over HDMI! Didn’t you know that?” Well, now how was I supposed to know something like that when the industry has gone to such great efforts to obscure the details from the average consumer, by carefully using market timing tactics against technology “upgrades”?!

As a society, we’re essentially putting up with this garbage, because it doesn’t have anything to do with the issue dejour. By that, I mean human rights. If it has to do with gay or lesbian activities, or with pro-life vs. pro-abortion, we’re all over those topics. But if it has to do with the rights of some commercial interests vs. that of the consumer, then we feel like we’re inherently protected. Because, after all, we’re consumers of commercial products, right?. Why would the industry want to hurt us? Why indeed.

About the only freedom that we’ve had in the past to uphold our rights as US consumers toward copyright holders is the fair use clause of the Copyright Act. Fair use has been the cause of a fair amount of heartburn to copyright holders, as it doesn’t necessarily guarantee them all present and future rights. Well, they’ve finally found a way around fair use, and we’re nearly locked into it now.

The true power of fair use to uphold consumer rights is that it’s very losely defined. Rather than laying down rigid rules and guidelines that can easily be used by the executive branch, fair use provides a four-pronged test for any given situation. The test must be exercised by the judicial branch to create new legislation from the bench for each new circumstance.

Rick Cotton, a New York Times commentator wrote this about fair use as it relates to the DMCA. The entire article can be found on the New Your Times blog site:

Because fairness cannot be reduced to a set of bright line rules, whether a use is fair is determined on a case by case basis and a large body of law has developed over decades to address this issue. The Copyright Act sets out a four factor test (although other factors can be considered). The factors include the purpose and character of the use, the nature of the original work, the amount taken from the existing work and the importance of what is taken and the effect of the use on the potential market for or value of the copyrighted work. Thus, as a legal matter, a case-by-case analysis remains the standard.

Despite the loose definition of fair use, one can easily see that making a backup copy of purchased media is easily covered by these tests. Fair use tends to allow consumers to do reasonable things with media they’ve purchased, as long as those things don’t, for instance, decrease potential profit (in terms of future sales) of the copyrighted materials. Of course making a backup copy of purchased media isn’t going to hurt the copyright holder! Making a backup copy is not the same as making copies for your friends and family. Making a backup copy is not going to stop anyone who would otherwise purchase a copy from doing so in the future. In fact–quite ironically, I might add–the ability and guaranteed right to easily make a backup copy might just provoke a purchase that otherwise would not have happened.

Fair use has, in the past, protected consumers against litigation over issues like making backup copies of purchased media–until DMCA, that is. With the advent of the DMCA, it has literally become a crime to decrypt copy-protected media. Fair use doesn’t even enter the picture. Before you can make a backup copy, you have to decrypt the original content, and doing so is now simply a crime against US federal law.

Congressman Rick Boucher of Virginia wrote an article in 2002 in CNET News about his attempts to reform DMCA legislation to accomplish its originally intended goals–to stop commercial piracy of copyrighted media:

The American public has traditionally enjoyed the ability to make convenient and incidental copies of copyrighted works without obtaining the prior consent of copyright owners. These traditional “fair use” rights are at the foundation of the receipt and use of information by the American people. Unfortunately, those rights are now under attack.

In my next article, I’ll really talk about converting video formats from DVD and Blu-ray to streamable media, but I’ll remind you that it is illegal today to decrypt copyrighted materials that are encrypted. Whatever the purpose, it’s simply illegal to do it. Fair use doesn’t come into play at all. The only consolation is the fact that, regardless of the power with which they are endowed, copyright holders are not likely to prosecute you for making personal backup copies, or for converting your movies to different formats so you can view them the way you want to. The most significant reason for this is that such individual prosecution would be expensive and would have very little effect on the copyright holder’s bottom line profit margin. In other words, they’re more likely to go after the big dogs.

To wrap things up, I leave you with a reference to an article written by Fred von Lohmann, a senior staff attorney with the Electronic Frontier Foundation. Mr. Lohmann has written a very complete and very readable treatese on the subject of fair use and DRM entitled simply, “Fair Use and Digital Rights Management“. This is recommended reading for anyone interested in digging just a little deeper than average into the consumer rights ramifications of the DMCA and fair use.

Confessions of a Video Addict

I’ve long been interested in home theater as a hobby. My family doesn’t watch much TV. This is mainly because a few years back, through an almost comical set of circumstances, I ended up cancelling my DishNetwork subscription. Since then, everyone’s been so busy with life and stuff, that we’ve never really missed “America’s Top 150”. It’s always been a bit of a joke around our house anyway that “AT/150” really should have been named “AT/15” – I just could never find enough really interesting, family-friendly content on the other 135 channels. It reminds me of that episode of the Simpsons where the pious next-door neighbor, Flanders buys a new satellite receiver. When Homer comes over to try it out, he finds all 250 channels “locked out”! “Doh!”

Regardless of my family’s attitude toward broadcast content, we do like to watch movies. I’ve had a Sanyo PLV-Z2 home theater projector for several years now. Given how much we’ve used it, the bulb should have been gone long ago, but it’s still putting out the lumens like it was new. If you like home theater and you’re considering buying a projector, then I have a tip for you: Don’t buy a spare projector bulb when you buy your projector. That way, when the bulb goes, you have a great excuse to upgrade your projector. Bulbs cost between 3 and 5 hundred dollars. With current projectors (such as the much newer PLV-Z700 [EDIT: The PLV-Z2000 has recently been discontinued in favor of the coming release of the PLV-Z700 in mid October ’08 — the specs are almost identical on these two units, and the PLV-Z700 is a couple of hundred dollars less.]) costing around $1800 dollars, it’s not a tough choice. It’s not quite as bad as the laser-printer-to-cartridge cost ratio, but it’s close enough.

Recently I read a great article on Ars Technica about building a Home Theater PC (HTPC). I’ve been aware of the concept of HTPC’s for some time now, but they’ve always been just outside my price range. This article got me all excited again about the possibility of building one for my home theater. The commercial hardware and software to make one feasible has recently become both widely available and reasonably cost-effective.

The System

What I like about Ars Technica’s HTPC system design is that it’s broad enough to be easily tailored to individual budgets, needs and tastes, and yet down to earth enough to be implemented by the average tinkerer. I enjoy building systems, and what makes this one interesting to me is that it’s not something that can be purchased outright. Very few of the mainstream system builders (Dell and Gateway, for instance) are selling PC’s today that are actually designed to be used as components in home theater systems. And yet motherboard and case manufacturers are already providing great inexpensive tools toward this very goal. When things like this begin to happen, you know it won’t be long before you’ll be able to buy components from Crutchfield that look like stereo equipment, but act like computers.

I had two goals in building my version of the one advertised in the article. First, I wanted to stay under 800 dollars. That was the limit imposed by my wife – and I agreed with her. (We actually get along pretty well when it comes to spending money on toys – we tend to stay pretty even with each other.) My system consists of the following components:

  • 1 – Antec Veris Fusion v2 Black 430 Micro ATX Media Center case.
  • 1 – Gigabyte GA-MA78GM-S2H motherboard.
  • 1 – AMD Athlon 64 X2 5200+ 2.7 Ghz 65W dual-core processor.
  • 1 – Scythe Ninja Mini CPU cooler.
  • 1 – 2 GB (2 x 1Gb) Crucial Ballistix DDR2 800 SDRAM.
  • 1 – Western Digital 250 Gb (Blue) SATA 3 Hard Drive.
  • 1 – Western Digital 1 Tb (Green) SATA 3 Hard Drive.
  • 1 – Hauppauge WinTV-HVR-1800 MCE PCI Express interface card.

Total price: 762 USD, plus 15 dollars shipping and handling. Here’s my NewEgg HTPC wishlist. (EDIT: I’ve had trouble with my NewEgg public wish lists remaining stable, as it were–they tend to modify themselves without any human intervention, so please take this NewEgg list with a grain of salt.) I added a keyboard, mouse and an old 1280 x 1024 capable monitor I had laying around the house.

I’ve never had an AMD-based system before – I’ve always just assumed that Intel had the upper hand on quality and compatibility. But I’m so impressed with its price/performance ratio that I’m seriously considering making AMD my processor of choice from now on.

Configuration Issues

The only problem I had assembling and configuring this system was that I couldn’t initially get the Vacuum Fluorescent Display (VFD) that came integrated with the Antec case to display any data. I checked and double-checked the wiring, even reversing polarity on connections that might possibly have been polarized.

When I called Antec about the problem, the technician I spoke with suggested that I ensure that the drivers were installed properly, and that the USB cable was plugged into the internal USB header correctly. I was surprised they didn’t have any other suggestions, because a quick Google search pointed me to several conversation threads in various Audio/Visual forums where other people had similar problems. I never saw a good solution, however.

Here’s what I did to get mine working – and I consider this solution to be a work-around to a bug in the Antec VFD USB circuitry: First, I had to uninstall all VFD related software. One of the problems appears to be that the driver disc that comes with the Antec case has drivers for Windows XP Media Center, not Windows Vista Media Center. The XP drivers simply won’t work under Vista, but there’s no documentation indicating this issue.

Instead, you need to go to the the SoundGraph support site and download the latest Vista VFD drivers – I installed the latest beta drivers. SoundGraph wrote the drivers for the Antec VFD, and has integrated them into a configuration package that provides a front-panel configuration utility. Using this utility, you can configure the VFD to display just about anything you might want to. It’s really pretty cool stuff.

Next, you have to do something really weird. After you’ve properly installed the new drivers, reboot your machine, remove the cover while it’s still running, and disconnect the three-wire VFD power connector (purple, red and black). Wait a couple of seconds and then reconnect it. The iMon software driver installer will appear on your desktop, and within seconds your VFD will begin to display information properly. The USB standard indicates that it’s supposed to do this for you, but with the Antec USB interface, you actually have to power down the VFD while the USB cable is plugged in to get it to install the proper driver.

The Operating System

My software of choice? Windows Vista Media Center Edition. Now before you get into a big huff about my chosing commercial software over freeware, let me just say that I’ve been working on this stuff for a long time now, and I really do understand the pros and the cons of using both. If you’ve got the hundred bucks for Vista WMC, the difference in user experience is well worth the money.

One thing I’ll say for the folks in Redmond – when they put their minds to something, nothing is left to chance, and this sentiment applies well to the Microsoft eHome group. They’re working frantically to beat the competition to market in this area. Features are added faster than I can keep up. And, with Windows online update service, new features are available in this version, not just the next time you upgrade.

Case in point: The XBox 360 picked up streaming DivX support just last December (07). That’s after I bought my 360 in November. Yet I have DivX support today – all it took was a 5 minute download on the 360 console, which happened automatically when I tried to play my first DivX movie, streamed from Windows Media Player.

Connecting an HTPC to a TV (or Projector)

I have a slightly older projector. The Sanyo PLV-Z2 can only accept analog input via standard component video RCA jacks, and it only displays 1080i video. I also have a somewhat dated Denon 7.1 channel Dolby Digital/DTS decoder. This amplifier is also a video switcher, but will only switch composite, s-video and component video sources, and doesn’t do any up-conversion between these formats. It’s been good for me for several years, so I’m not complaining (much). The newer systems all do HDMI video switching and will do up-conversion – all for a lesser price tag. Oh well, that’s technology for you.

The point, however, is that the Gigabyte motherboard has that sweet AMD (ATI) 780G on-board video processor (which is why I didn’t have to buy a video card). This chipset provides both analog and digital video via VGA, DVI-I and HDMI ports, available through the I/O panel. But no component video. Don’t even bother considering a video converter. They exist alright, and you can pick one up for about 130 dollars from Audio Authority, but due to the Digital Millenium Copyright Act (DMCA), it’s literally illegal (at least in the United States) for these devices to convert any video that’s HDCP-encoded, which includes most Blu-ray content. Blu-ray content is only displayed on digital outputs, and encrypted with HD Content Protection (HDCP). Thus, as the man at the gas station says, “Ya can’t get there from here.”

This means that even if I did plug my new HTPC into my existing home theater system, I literally couldn’t play any of my Blu-ray discs in the BD-ROM drive. Since I can’t play anything from disc, that only leaves the option of ripping content and playing unencrypted streams from the hard drive (not counting the far less viable option of spending another 3 grand updating my amp and projector).

(EDIT: I’ve since discovered that you can, in fact, play Blu-ray disks, and have the content displayed just fine on any analog display device. Apparently the MPAA doesn’t consider analog 1080i picture quality a threat to their income.)

This isn’t as bad as you might think. Dozens of my DVDs have seen better days just because my kids don’t spend their hard-earned cash buying them. But that’s the way kids are. I try to teach them to be careful, but they really won’t become careful until they do spend their own money.

My solution is to rip everything, convert to DivX and put my discs in a closet for safe-keeping. DMCA or not, there’s nothing immoral about what I’m doing. While it may be technically illegal, the only thing I’m withholding from the Motion Picture Association of America (MPAA) is any additional cash I might spend on a new copy of a disc I’ve already purchased, but which is now too scratched up to use.

(EDIT: I’ve since discovered, through a closer examination of the DMCA wording, that it’s not actually illegal to make copies of your purchased media. What’s illegal is either selling them or giving them away, or creating and distributing tools that help other people make such copies. It’s a strange world we live in!)

I’ve contacted media sources for this very reason in the past, and I could almost hear the glee in their voices when they told me that there’s simply no recourse for a scratched disc. I have to purchase a new one. It makes me angry just thinking about it.

Since I’m going to rip and convert all my content anyway, there’s really no point in connecting the HTPC directly to the projector. Not when an XBox 360 is a perfectly good WMC extender. And the ability to use a 360 as a WMC extender is about the coolest thing I’ve ever seen Microsoft provide. It works like Windows remote desktop. It’s just as if you’re sitting at your PC screen with Windows Media Center in full-screen mode. And the PC doesn’t even have to be running WMC! There’s a media center agent that runs WMC in the background for remote extenders.

Since the 360 will drive my projector at 1080i over component video, I can leave my noisy PC in my work room. (In point of fact, with two 120 mm fans running at low speed, the system is really very quiet – almost silent.) I can then simply stream HD video and live or recorded TV right to my 360 in high definition, letting the XBox drive the projector at 1080i. Since it’s more comfortable to sit at my desk while I’m ripping and converting, this setup works quite well for me.

The Software

While HTPC hardware is coming down in price and going up in features – literally on a daily basis – the software is still a bit rough around the edges, which is another reason I recommend using Windows Media Center. You’ll have a difficult enough time getting your media configured to play the way you want, without worrying about getting the right mix of hardware and open source or free software to work correctly on your HTPC. After much experimentation, I settled on two commercial packages – both providing at least two-week free trial periods:

AnyDVDHD will rip literally anything from DVD, HD-DVD or Blu-ray discs – encoded, encrypted, encased in kryptonite – it doesn’t really matter. And it removes all the various rediculous copy protection schemes, in the process. You’ll then have DVD or HD content from your media in a format with which you can do something useful. The cost: 100 bucks. Sorry, but you get what you pay for in this area. The free stuff is available, but it usually breaks down on the disc you want most to rip.

(EDIT: AnyDVDHD is copy protection circumvention software and as such, according to the Digital Millenium Copyright Act of 1998, is illegal contraband material. To avoid prosecution or shutdown of this blog, I’m not linking to the site directly. You’ll have to use Google or your favorite search engine to find references to AnyDVDHD or SlySoft on your own. I’m sorry, but this is what our society has come to.)

How do they get away with providing a product like this? After all, it is illegal under the DMCA. They can do it because the software is completely developed and marketed on the Internet outside the United States. (I have a similar tool, called TuneBite for decrypting music files so I can put them on my daughter’s Rio. Tunebite is developed in Romania.)

TMPGEnc 4.0 XPress is an audio/video format converter that does just as well on format conversion as AnyDVDHD does on ripping content. Pegasys advertises that it converts virtually any format to any format, and they aren’t lying. It comes with native support for DivX, but if you want to get down and dirty with your special HD camera codecs, it will allow you direct access to any installed Video for Windows codec. This includes external Xvid or DivX pro codecs. The cost: another 100 bucks…and worth every penny for the simplicity and power that it grants you to do what you want without hassle.

The trial versions of these packages are a bit crippled in various ways, but they were functional enough to tell me that the hundred-dollar costs of each weren’t going to be wasted.

Ripping and converting is a dark art. There are a lot of “tutorials” but very few instruction manuals. The only reason I can think of for this is that, as I mentioned above, it’s basically illegal to do it. Regardless of your intentions or motivations, the law is the law, and no commercial enterprise wants to get their hand slapped for providing instructions for doing something illegal.

Given the lobbying power behind the DMCA, doing so is about equivalent to providing on-line detailed instructions for creating a homemade nuclear device. Most of the information you’ll find that’s very useful will be from sources outside the US. A really good source of fairly up-to-date information is the Doom9 web site. Click on the “Guides” link sometime when you have a few hours of reading time in front of you.

The Work Flow

To get you on the fast path, I’ll explain my work flow and the options I use to get the most out of streaming video. First, here are a few links to important facts about streaming video to the XBox 360:

The XBox support site also has detailed instructions on how to connect your 360 to your WMC PC, but it’s trivial enough to do that I didn’t even need these instructions.

There are a few facts about digital media formats that you should know before you start. These are hard to find – especially if you’re not looking for them to begin with. In the first place, while you can now stream DivX and Xvid to the 360, the only format that will stream 5.1 channel audio is WMV. With all the press coverage that the December ’07 360 console update received regarding the new DivX support feature, you’d have thought it was the next best thing to sliced bread.

For my purposes, DivX video without 5.1 channel audio is useless. At least half of the home theater experience is related to audio. I find it difficult to believe that people are willing to settle for simple 2 channel stereo in a home theater system these days. Here’s the configuration that worked for me:

Blu-Ray Video Specifications

  • Windows Media Video (WMV) 9 Advanced Profile
  • 1920 x 1080, 30 frames per second, progressive
  • 2 Pass Variable Bit Rate (VBR), 10,000 kb/s (avg)

Blu-Ray Audio Specifications

  • Windows Media Audio (WMA) 10 Professional
  • 48 Hz, 5.1 Channel Audio, 24 bits
  • 2 Pass, Variable Bit Rate (VBR), 256 kb/s (avg)

DVD Video Specifications

  • Windows Media Video (WMV) 9 Advanced Profile
  • 720 x 480, 30 frames per second, progressive
  • 2 Pass Variable Bit Rate (VBR), 1500 kb/s (avg)

DVD Audio Specifications

  • Windows Media Audio (WMA) 10 Professional
  • 44 Hz, 5.1 Channel Audio, 16 bits
  • 2 Pass, Variable Bit Rate (VBR), 128 kb/s (avg)

These are the only streamable audio/video configurations I could find that would stream HD video and 5.1 channel audio while using the 360 as a WMC extender. If you don’t mind popping out of extender mode into the 360 dashboard to watch Divx movies, then you can also stream similiar video and audio using Divx/avi files. On this issue, I have to agree with many a forum participant (read, “complainer”) regarding Microsoft’s decision not to support 5.1 channel audio in Divx streams through the extender interface. They hate it, and so do I. It’s just plain lame that the 360 can handle divx with 5.1 channel audio, but not through the WMC extender interface. Oh, well. When that functionality is finally added, I’ll just re-encode to Divx.

Now, you may have a few questions about this configuration. For instance, why did I go to all the trouble of encoding 5.1 channel, 16 bit audio, only to limit my bit rate to 128 kb/s? Well, frankly I defy anyone to tell the difference between 128 kb/s and 256 kb/s. Most of the mp3 audio files we download from iTunes or Amazon these days are 160 kb/s data files. iTunes recently came out with their iTunes Plus program, which makes some music available unencrypted, and at a higher, 256 kb/s bit rate. I’ve upgraded some of the music in my library to iTunes Plus – mainly so I could get it in an unencrypted format, but I can’t tell the difference between 168 kb/s and 256 kb/s. I simply can’t. Some may be able to, but the difference is nearly indistinguishable to the human ear. If you’re worried about it, use 256 kb/s instead of 128. The audio stream size difference is negligible compared to the video stream in the data file anyway.

Another question you might ask me is why I’m using 1920 x 1080 in my blu-ray video streams, when the native size of my projector is 1280 x 720. The reason is that the projector has some very sophisticated video scaling circuitry that can easily convert a 1080 line picture to 720 lines of native resolution. At some point, I’ll upgrade my PLV-Z2 projector to a PLV-Z700, which has a native 1080 scan lines of resolution. When I do that, I’ll see a noticable improvement in video quality from my HD video files.

The same question could be asked in reverse of the DVD-quality video streams. I’m encoding 720 x 480 video streams, so my projector has to upscale the picture to 1280 x 720. In this case, 720 x 480 is the best I can get from DVD video. The projector will do a better job of scaling than will my software encoder, so I see no reason to make my video files larger than I have to.

Unanswered Questions…

Could someone please tell me how to discern the difference between 1000 kb/s video and 10,000 kb/s video? I encoded The Waterhorse at 10,000 kb/s, but I encoded a 50 second sample from the beginning at 1000 kb/s, and I simply can’t see any discernible difference. The difference in file size is enormous. The entire movie, encoded at 10,000 kb/s is about 8.5 Gb, which isn’t bad, given that the original mpeg-2 Blu-ray encoding was 29 Gb. If I encode the entire film at 1000 kb/s, however, it drops to an amazing 1 Gb – I can fit that onto a normal DVD, along with 4 other movies!

Despite my apparent enthusiasm at these compression ratios, I’m still a purist at heart. I’d like to say I’m watching better quality video. Perhaps it’s just the fact that I’m watching on a 1080i projector that down-converts to a native resolution equivalent to 720p. Perhaps a native 1080p projector or a native 1080p LCD or plasma display would make all the difference. Oh well. I’ll have to find out later, when I can afford the upgrade.

Incidentally, I also compared these samples on a regular monitor. I still can’t see a difference. Both pictures look sharp and clear. Neither one looks quite as good as watching the movie right from the Blu-ray disc using PowerDVD-HD. I attribute that mostly to the fact that I encoded the samples at a lower resolution, not a lower bit-rate.

Stay tuned, because I’m sure I’ll have more to say on this topic later.

Experiences with Linux Hardware Config

I got a new laptop at work in late August. The date is especially significant because it’s now mid-October and I’m still sorting out issues with video drivers, network cards, and bluetooth functionality.It’s a Lenovo T60p – a nice machine. Speedy. Sleek. Full-featured – it even comes with some built-in biometric features. Oddly, these are the sorts of hardware features that open source geeks love to play with. And it’s a good thing for us users because otherwise they’d just be extra baggage on an otherwise nice machine. Manufacturers just don’t spend a lot of time yet on Linux drivers.

For example, the package I ordered came with a Logitech M-RBB93 bluetooth wireless mouse. Now, this is a nice piece of hardware. I’ve had wireless mice before, and they all come with a USB fob that takes most of the joy out of using a wireless mouse. This mouse has an on/off switch on the bottom. That’s the extent of the init/shutdown process. I love it! But it didn’t work with my laptop out of the box as it should have. I didn’t even bother to open the CD that came with it. I would only have found myself disappointed by the instructions, as they nearly always begin with “Press the Start button, and select the Run option…” I hope this will change in the near future – not everyone runs Windows these days.

SLED 10

My new laptop came with SLED 10 (SuSE Linux Enterprise Desktop, version 10) pre-installed. Now, this Linux variant is clearly designed for non-technical people, as it comes completely configured to work well with several hardware configurations, including my Lenovo T60p. But it still had troubles with unforeseen additions such as the bluetooth mouse. It turns out that SLED 10 does work pretty well with the mouse, but you need to perform a few command-line gymnastic stunts in order to get the laptop to connect. Secretaries and executives will probably just toss the mouse in the garbage can, assuming it’s broken. Geeks like me know better.

I didn’t even hope that I could get the fingerprint reader working. But it turns out that there’s an entire community surrounding this little built-in device, known affectionately as the ThinkFinger. There’s a wiki site for configuration that contains very complete information on getting the fingerprint reader working on a variety of platforms, and Ubuntu actually has it’s own ThinkFinger community. I must say, it works very well. Sometimes it requires more than one pass to get a good reading, but usually it works on the first try – much of the quality of experience involves training yourself to swipe your finger in just the right way, but it’s an easy habit to pick up.

ATI is making big advances in coming to terms with the open source world, but they still have a long way to go. Five years ago, I installed a version of Mandrake Linux on my home computer (dual boot) just to play with it. I had an ASUS NVidia card installed. The desktop graphics came up out of the box in 800 x 600, 8-bit color. I was a bit disappointed at first, but then I decided to dig a bit deeper. I went to NVidia’s website, downloaded their latest open source Linux drivers, ran the installer and rebooted. When it came back up, I was viewing my X desktop in 1280 x 1024 24-bit color – perfect! I didn’t even have to select the resolution and color depth (although I had plenty of choices).

I can only wish for the same experience with ATI drivers. Five years ago, ATI drivers for Linux were unheard of. The answer to your question was simply this: You bought the wrong video card. Since AMD acquired ATI, things have changed. Video drivers for ATI cards can now be downloaded from AMD’s web site. They even (usually) work – if you have the patience and technical prowess to mess with them for long enough. But to the average user, my answer to your question is generally still the same: You bought the wrong video card. Give it a couple of years, and ATI will have caught up to where NVidia was five years ago. Now, don’t get me wrong. ATI cards are wonderful, but if you want to take full advantage of them, you’d better stick to Windows.

OpenSuSE 10.2

SLED 10, being designed for non-technical folks, has been tweaked and tested such that many of the processes that have to be done manually in even later opensuse offerings are well integrated and much more automated. However, SLED 10 is old. I’m sorry, but anything older than a year in this industry is out of date. I’m a developer, so I need the latest tools and libraries, and many of these just won’t install on SLED 10, so the first thing I did was upgrade to opensuse 10.2.

SLED 10 is actually ahead of opensuse 10.2 when it comes to integration. While the software may be older, the amount of integration testing and tuning is much greater with enterprise-level offerings. Frankly, given what I know about opensuse 10.2, I can’t wait for the next version of SLED. I still won’t use it, but for my non-technical co-workers, it will be a wonderful improvement.

Well, the devil (as they say) is in the details, so here they are:

Bluetooth Mouse

The bluetooth subsystem on Linux is called bluez. The bluez project is hosted by sourceforge.net. The trouble with the bluez web site and packages is (like many free software offerings) a woeful lack of both technical and non-technical documentation. The maintainers have done a great job of making it easy to build and install. Unpack the tarball, type “sudo configure; make; make install” and you’re done. The makefile installs a dozen tools and libraries, and even man pages for most of them. The trouble is that there’s no overarching documentation that describes WHY you’d want to use any of them.

Most of the tools are fairly low-level, designed to be configured and consumed by system integrators to provide a good automated end-user experience. The problem, of course being that system integrators in the Linux world generally stop short of the finish line.

Bluetooth is designed to work with a wide variety of devices. Most of these fit into a few categories. Bluetooth mice, for instance, are classified as input devices. The bluez tool that deals with human interface devices is known as hidd – human interface device daemon. This daemon is a system service that is supposed to be started by your system init scripts at boot time. It can also be called by a user logged in as root in order to configure it to bind to your mouse.

If you look on the bottom of your mouse, you’ll see what looks like an ethernet MAC address – a six part, colon separated set of values, two hexadecimal digits each (mine is: 00:07:61:6b:92:13). You can tell hidd to bind to your mouse by using a command like this:

>sudo hidd --connect 00:07:61:6b:92:13

Another way of doing this, is to tell hidd to just search for all devices it can see:

>sudo hidd --search

But if you happen to have more than one mouse lying around, it may connect to the wrong one.

The trouble with opensuse 10.2 is that it’s about 89 percent there with respect to bluez integration. Sometimes this works, other times you have to resort to tricks like adding the above hidd –connect command to your initialization startup scripts, so that it will connect every time. The hidd daemon is designed to remember connections, and the latest offerings really do work, but you may have to play with it for a while to get it to work consistently.

Fingerprint Reader

Download the latest version of the thinkfinger package (0.3 at the time of this writing) from the sourceforge.net thinkfinger project site. The package is easily compiled and installed. From the root of the directory into which you extracted the package, just run the following sequence of commands:

>su
#configure; make
#make install
#exit
>

Next, you’ll want to configure the pam module that comes with the package so that you can log into your desktop using your finger print. Pam modules are configured using the /etc/pam.d/common-auth file. Edit this file with your favorite editor and add the following line BEFORE the line containing the reference to pam_unix2.so:

auth  sufficient  pam_thinkfinger.so

This will cause the PAM (Pluggable Authentication Modules) library to query the fingerprint reader each time a password is requested. But you’re only half done. You have to supply credentials in the form of .bir files. For this, you use the tf-tool command (as root):

>su
#tf-tool --add-user jcalcote
#ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@suse.de>

Initializing... done.
Please swipe your finger (successful swipes 3/3, failed swipes: 1)... done.
Storing data (/etc/pam_thinkfinger/jcalcote.bir)...done
#exit
>

Note that your .bir file was stored as username.bir in the /etc/pam_thinkfinger directory. Now, if all has gone well, the login prompt should say, “Password or swipe finger:”, instead of simply “Password:”. You’ll also get a prompt like this at the command line when you type “su”.

ATI Video Drivers

The Lenovo T60p comes with an integrated ATI Mobility FireGL V5250 video card. The “Mobility” part means it’s for laptops, the FireGL part means it’s one of their high-end offerings (along side of, but slightly lower than the Radeon series), and the V5250 part means it’s close enough to a V5200 that it works with any drivers designed for the V5200 – and that’s a good thing, because the drivers don’t actually recognize the card model number.

At the time of this writing, the latest driver available on ATI’s web site was 8.41.7. The most difficult issue to deal with here is that ATI’s website driver guide will not lead you to the latest drivers for your card unless it’s a fairly late Radeon series card. This doesn’t mean the driver won’t work with your FireGL card – it just means that ATI hasn’t spent the testing resources on your card with that driver, so they aren’t going to lead you to it. Here’s the deal: Most of ATI’s drivers will work with most of their cards just fine – they’re all based on the same or similar chip sets, so the drivers can’t really tell the difference. If you want the latest features, you’ll have to just get the latest driver and see if it works with your card. In fact, I’ve found that the 8.41.7 driver does NOT work with my card, but the previous 8.40.4 driver works fine.

Drivers come from ATI in the form of an executable that runs either from the command line, or as a GUI-based application. This application is actually designed to build a variety of driver installation packages for several different flavors and versions of Linux. For instance, it can build an rpm package for opensuse or redhat. It can also build .deb packages for debian.

To use the driver generator, use the following command-line syntax:

>su
#ati-driver-installer-8.40.4-x86.x86_64.run --help          (optional)
#ati-driver-installer-8.40.4-x86.x86_64.run --listpkg       (optional)
#ati-driver-installer-8.40.4-x86.x86_64.run --buildpkg SuSE/SUSE102-IA32

This will generate an rpm installer package for your system. Note that the first two ati* commands are only for your information. The –listpkg option will display a list of all packages that CAN be generated by the package generator. Choose the one that’s closest to your system type. After this command has completed, you’ll find an rpm package named fglrx_7_1_0_SUSE102-8.40.4-1.i386.rpm in the same directory.

Here’s the tricky part. This installer is complicated. It actually builds a kernel module as part of the installation process, which means that you’ll have to have kernel source and development packages installed in order to install this package. So ensure that you have the appropriate kernel development libraries installed on your system.

The opensuse community and ATI itself provides a YUM repository for various flavors of the opensuse 10.2 kernel (found at http://www2.ati.com/suse/10.2 – note that this site is not accessible via the web – only through YUM). This package is NOT the same as the one you just generated. It’s pre-configured to run against a specific kernel version with a specific set of patches. Personally, I like the approach taken by this ATI package generator better. If you install kernel patches, you’ll either have to get matching updated community drivers, or simply reinstall from this rpm you just generated. It will rebuild the kernel module against the latest libraries and headers installed with those patches. If the kernel changes too much, then you’ll need to get a later ATI driver that’s designed to work with the latest kernel.

Now install the drivers with this set of commands (It’s best if you do this from a tty console – press Ctrl-Alt-F1):

Login: root
Password:
#init 3
#rpm -ivh  fglrx_7_1_0_SUSE102-8.40.4-1.i386.rpm
#sax2 -r -m 0=fglrx
#init 5

You should now be running with your ATI drivers. To test your configuration, open a terminal window, and type:

>su
#glxinfo

You should see the following lines among the output:

...
client glx vendor string: ATI
...
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI MOBILITY FireGL V5250
OpenGL version string: 1.2 (2.0.6747 (8.40.4))

ATI drivers are not as well integrated as they could be. They don’t hook into sax2 so that you can toggle settings and enable or disable 3D mode. However, they do allow you to configure clone and xinerama modes from sax2, if you want. This situation can cause some frustration until you understand it. Basically, 3D hardware acceleration can’t be disabled, regardless of what sax2 tells you its current state is.

To prove this to yourself, run the fgl_glxgears program that’s installed with the firegl drivers. You should see a spinning cube whose faces each contain a set of gears spinning within the plane of the face. You can’t do this in software, so if you have any sort of smooth performance in this demo, then you’re definitely runnning with hardware acceleration enabled. Note that there’s a more basic program called glxgears. This one shows a simple set of gears spinning in one plane.

Compiz to Beryl to Compiz-Fusion

Of course, after getting your 3D accelerated drivers installed, you’ll want to do something with your system that will prove the worth of all that effort every minute that you use your computer. This is where compiz comes in. You know all that yummy eye candy that Mac OSX provides for its user experience? Well, Linux isn’t that far behind. To quote the compiz.org home page:

“Compiz is a compositing window manager that uses 3D graphics acceleration via OpenGL. It provides various new graphical effects and features on any desktop environment, including Gnome and KDE.”

To enable the required OpenGL features, you’ll have to switch your display manager server from xorg to xgl. The default display manager server is the one that comes with the xorg system. It’s tried and true, and doesn’t often have a problem. In the vernacular, it’s stable. The xgl display manager server uses OpenGL to do everything done manually by the xorg server. The community calls xgl “experimental”, but the fact is it’s pretty good lately.

To change from xorg to xgl, you need to use your system configuration editor (YaST | System | etc/sysconfig Editor). From the menu on the left, choose Desktop | Display Manager | DISPLAYMANAGER_XSERVER. Change the setting on the right from “Xorg” to “Xgl”.

Close your applications and restart XWindows by pressing Ctrl-Alt-Backspace. If everything comes up as before, then you’re set. Now go to your main menu and from the section entitled “Look and Feel”, select “Desktop Effects”. The information in this dialog is a bit disconcerting. It tries to tell you that you can’t enable desktop effects (compiz) because your hardware is not recognized. It also tries to tell you that 3D acceleration is not enabled. Don’t forget that ATI drivers have bypassed the sax2 hooks for this feature. So applications that use sax data to determine 3D acceleration state are going to be misled into believing it’s not enabled. But just select “Enable Desktop Effects” at the bottom anyway (if it’s not already done for you). When you exit this dialog, you should see your windows doing cool stunts (sometimes without your aid or approval).

Probably because of the “experimental” nature of Xgl, occasionally you will lose your window manager. The effects of this are simple – the title bars on all of the windows on your screen will disappear, making it difficult at best to accomplish anything. Easily remedied however – just restart XWindows (Ctrl-Alt-Backspace). Unless you’ve really hosed things up, it should restart the window manager correctly.

OpenSuSE 10.3

After all of that (and that took me a month of research), opensuse 10.3 was released on the 3rd of October. I’m a bleeding edge sort of guy (if you couldn’t tell by now), so I immediately upgraded my 10.2 system. Believe it or not, nearly everything worked without a lot of tweaking and configuring in opensuse 10.3.

The only problem I’m having at this point is with my wireless network card. I got myself into a situation where there were two entries for my wireless card in the Network Devices dialog. One of them came from the udev hardware detection subsystem, and was listed as “unconfigured”. The other was a copy of the detected card that was listed as “DHCP” (meaning, configured to use DHCP). When I would try to delete the configured entry, and then configure the detected entry, it would look good until I closed the dialog and then rentered it, whereupon it would look as it did before. The solution to this problem finally presented itself accidentally, as I tried to do what I’d tried before, but in reverse order. That is, I first configured the detected card, and THEN deleted the originally configured card. For some reason, this worked.

One other problem I’m having with wi-fi is that I can’t seem to connect to my wireless network at work. At work, we have a wireless network with an unadvertised or “hidden” ssid – the network identifier. In order to connect to a network with a hidden ssid, you have to know the value of the ssid and specify in when you attempt to connect. I just can’t connect – I still can’t, and I haven’t got a clue why not. I can only assume there’s some sort of bug in the wireless drivers for 10.3 because I can connect just fine at home, where my ssid is advertised. I’ve googled this one for hours, but apparently no one else has had this problem, or they’re not speaking up. In truth, I did find some references to a problem like this last November – nearly a year ago, but it was quickly resolved with a patch to the wlan sub-system. Apparently, the bug is back with a vengeance – at least on my system.

But these things tend to sort themselves out in fairly quick order. People don’t like to go without network access, and whether or not they’re talking about it, this sort of defect is often more wide-spread than it appears at first glance.

Regarding ATI video drivers and opensuse 10.3; ATI provides a web-based repository for 10.3 drivers along side of their 10.2 repository, but be aware that it provides an rpm package with the 8.41.7 drivers. You’ll perhaps recall that these drivers didn’t work with my V5250 FireGL card, and this repository version is no exception. I tried them, and then had to back off to the 8.40.4 drivers. YMMV.

The bluetooth subsystem is substantially enhanced on 10.3. I was able to bind to my mouse using (get this) a GUI interface! If you’re coming from a Windows background, you’re no doubt laughing, but then I’m not talking to you, am I? 🙂

The fingerprint reader actually has a YaST panel plugin in 10.3. The installer detects the fingerprint reader and ensures that the appropriate packages are installed, so you don’t have to go looking for it.

Despite the fact that both bluetooth and biometric hardware integration is much better in 10.3, I still upgraded these two packages from bluez and thinkfinger – probably because I’m a glutton for punishment. But the latest packages do provide some small bit of extended functionality.

All in all, I’m so pleased with opensuse 10.3 laptop, that my co-workers think I’m weirder than I really am, walking around the office with a big grin on my face. But they’re not laughing at me when I show them something cool that my machine can do that theirs can’t.