WebScheduler and Windows 7 x64

Having achieved good video playback on my new ION 330 HTPC, the next step was to get WebScheduler running. Being a 32 bit app that had to work with 64 bit BDA drivers for the TV tuner cards, I was concerned about it all working properly.

I started with WebScheduler 4.0.14, the last “free” version before it had gone commercial a few years back. This version has served me well under XP32. It installed without a hitch and ran fine, the only glitch I noticed was that the taskbar icon didn’t reflect when WebScheduler was recording.

It recorded files fine and I left it running about a week while I worked on other stuff. It wasn’t until the weekend that I discovered that the recordings it had made were unplayable!

I determined the recordings were not total trash, just Haali Media Splitter didn’t want to know about them. Using the Gabest splitter or ProjectX to demux them both worked.

So it seemed something was different between the files recorded under XP32 and Win7 x64, both done with the same version of WebScheduler and the kWorld USB Dual DTV Tuner stick capture hardware.

Having determined I was on the latest driver for the KWorld tuner, I was resigned to having to try Win7 x86, but before I did, I thought I’d try the latest version of WebScheduler as it had become open source again. Its now known as TV Scheduler Pro, by Blue Bit Software.

To my total delight, the recordings came good. I was able to export and reimport my schedule match lists between the 2 versions, which happily co-existed on the same machine for a while while I transitioned. The new version has some nice new features and I’m glad its recording properly under the new operating system.

So now recording and playback is in place on the new HTPC.

ASRock ION 330: My new HTPC

Its over 4 years since I built the HTPC to record and watch DTV and given it was P4 based, an upgrade was well overdue. I bought an ASRock ION 330 to serve as a replacement. As if it knew, within a few days of acquiring the ION, the 300GB WD HDD on the old HTPC started reporting CRC errors.

I decided to go with a low power solution rather than eusing the nice Accent HT400 HTPC case (and its iMon remote control), mainly because power saving is a bit of an issue now. This meant buying a new DTV TV tuner solution. I went with the KWorld Dual DVB USB tuner. It is based on the ITETech AF9015 and even comes with a worthless remote control that looks like a calculator.

I was already forewarned that the application software (tvMe) that come with the KWorld (a version 1.0) was bad, but I had to install it on a test system just to see how unbelievably bad it was. It needed dotNET – this should have been a warning. The software looked like someone’s second programming attempt, you know the program you write after “Hello World”. It was badly broken but did indicate the tuner was working. The software stayed installed only long enough for me to notice that the tray icon it installed had the tool tip “My App”. Hello World indeed.

All I wanted from the KWorld TV stick was a functional BDA driver, and after a few days running under XP32 with WebScheduler 4.0.14 I was convinced it would be a viable DTV device (actually, a pair of them since its dual tuner).

Next it was time to setup the ION. I’d bought 4GB of RAM for it so I thought I’d give Windows 7 x64 a go. Whilst XP would have suited my needs, I thought the EVR rendering in Windows 7 would be useful.

The Atom 330 which powers the ION is not exactly a powerhouse but having the NVidia ION able to accellerate video rendering is what makes the ION 330 a winner for HTPC purposes.

My favorite video player after all these years is still ZoomPlayer so the next step was establishing how well a 32 bit app with all its 32 bit codecs would work under Window 7 x64. It turns out that ZoomPlayer 7 works fabulously, but now time came to get the codecs set up right.

Firstly, MPEG2 TS playback. I’ve yet to top the combination of Haali Media Splitter and DScalar for playback of raw TV recordings (TS files). It gives me silky smooth playback of off the air interlaced TV. Other splitters/decoders work but either have laggy response to fast forward/rewind, horrible seeking delays or bad video quality especially for motion. I dont think DScaler is doing acceleration, but it copes with hi-def MPEG2 at about 30% CPU utilisation.

Next was testing some H264 1080P trailers. FFDshow woeked but was maxing out all 4 “processors” on the Atom 330 (its actually two cores each with hyperthreading). So it was time to choose an accelerated video decoder. Supposedly Win7 provides one but the video decoder from the Media Player Classic Home Cinema (MPC-HC) open source project trumps everything else out there for quality.

Downloading MPC-HC codecs, I was faced with the decision of 32 or 64 bit. Given my application is 32 bit but my operating system is 64, I wasn’t exactly sure what I wanted, but my guess of using the 32 bit codec paid off.

The process involved just the file MPCVideoDecoder.ax, put it somewhere and register it with “regsvr32”. This worked, once I learned the Win7 trick of opening an administrative console with ctrl-shift-enter when you type cmd into the search field.

Back in ZoomPlayer, in the Smart Play video decoder configuartion for “H264”, I had to select advanced editing and manually browse the list of codecs to select it. It comes up as MPCVideoDecoder. I selected the EVR renderer as well.

With this in place ZP plays 1080P H264 with 10% CPU utilisation, amazing.

Its worth noting, I’m looking at XBMC as well, either as the front end to ZP or standalone once video acceleration support becomes mainstream for the Windows version.