Last weekend I got a bit fed up with the "Scheduler" software that came with my Hauppauge tuner card. There's no way to set the quality for recordings in the damn thing, it goes by the last setting in the WinTv program. Well, last time I used it I must have done a VCD recording, because my scheduled recordings since then have been total shit looking. I was going to try hacking something together, but I heard good things about the GB-PVR software and it's free, so I thought what the hell, I'll give it a shot.
Wow, it's a pretty cool program, not perfect [more than a few bugs] but I'm so impressed I really want to put together a seperate, full-fledged HTPC, instead of running it off and on from my only PC that I do pretty much everything on. It downloads TV listings from a website like Zap2It and then you use those listings as an on-screen guide to see what's on and to schedule recordings. The menus are navigable via the Hauppauge remote as well as from the PC mouse and keyboard. You can download or create "skins" to customize the look of the program. There are also tons of plugins to add even more functionality, like the weather plugin that gives you your local weather forecast at the push of a button. You can also listen to radio, net-radio, mp3's, cds, watch divx movies, DVDs, rip DVDs and re-encode them... the list is endless!
Another thing I found out about during this little experiment is the program comskip, that you can run during recording or immediately afterwards via a batch file [PostProcessing.bat]. It analyses the video file to locate the commercials and then you can run a program like cuttermaran [via another batch file, comclean2.bat] to actually snip out the commercials, leaving you with a pristine, commercial-free recording. I had my doubts that this would work, but with the few recordings I've done, it worked perfectly, I couldn't even tell where most of the commercials were snipped out. Awesome! Beats the hell out of removing them manually.
I did have a couple problems right off the bat though. The first was with the viewing window for the main menu. My desktop is set to 1280x1024 but my video card only outputs 1024x768 to my TV, so my desktop is not entirely viewable on my TV's "cloned" display. I got around this by "locking" the display on my TV to the upper left corner of my desktop so it wouldn't pan anymore. Then I edited GB-pvr's shortcut on my desktop so that it displays in the upper left corner, in a window sized at 1024x768. [D:\GB-pvr\GBPVR.exe -pos:0,0,1024,768] Now GB-pvr's window fills my TV's entire screen.
But the problem with that setup is that you also see the window's frame displayed on the TV, which looks pretty lame. I tried the -noframe switch to get rid of the frame, which worked but I lost the use of my remote that way. The iremote software uses the window frame's title to translate commands from the remote depending what program is running. But with the noframe attribute set, the window essentially has no name, therefore it refuses to obey commands for that window. I think you can get around this limitation by getting the window's handle instead and using that to translate commands from the remote, but I found a simpler hack. I simply positioned the window further and further "offscreen" until the frame was no longer visible -> D:\GB-pvr\GBPVR.exe -pos:-5,-27,1024,768. This almost worked, except then the bottom of the frame came into view. A problem easily fixed simply by increasing the size of the window -> D:\GB-pvr\GBPVR.exe -pos:-5,-27,1024,778. It worked, no more frame on my TV!
Another problem which became readily apparent was the on screen display [OSD] used when watching live TV. It was mostly offscreen, I could only see about the top half. I was trying to find out how to reposition the damn thing, but the fix was even simpler. I just had to set an element in an XML file [config.xml] from 1.05 to 1.00 and my OSD magically reappeared where it should be.
<HorizontalZoom> 1.00 </HorizontalZoom>