Denial
Running Windows 8.1 so I can use Windows Media Center is totally fine, even if it’s 2018. Windows Media Center is the best way to watch TV on my terms. All I have to do is pay for cable, and I can record all the shows I want with my HDHomeRun Prime. I don’t have to mess around with any of that streaming nonsense or multiple subscriptions to network-specific content. If I wanted to, I could even run the hack that lets me use Windows Media Center in Windows 10. Besides, all my saved recordings are already in .wtv format. Everything is just fine.
Anger
Freaking Microsoft! I still can’t believe they dropped Windows Media Center after all this time. It’s all the Xbox’s fault! To top it all off, all the other options out there suck. I don’t want to change how I do things or fight with someone else’s so-called “solution.” Plus, what else will work with a cable card? Using a cable card makes me super awesome and nerdy. I can’t just give that up and be one of the normals.
Bargaining
Well, maybe I can cut cable and just use Windows Media Center to record over-the-air TV. That’s still sticking it to the man, right? If I stop paying for cable, I’ll save a lot of money each month, and I can use that cash to buy new seasons of the handful of shows I really want to watch. In fact, it’s probably better that way because I won’t have to watch commercials like I would if I streamed those shows from Hulu or something. It’ll be good to watch less TV.
Depression
This sucks. Every single show is a choice between spending money or watching commercials. It was so much easier when I could just pay one bill and do it all myself. My OTA channel selection is super limited, and the way things are going, Survivor is probably going to be spoiled before I get around to watching the new season. Everything was so much better before.
Acceptance
This HDHomeRun DVR software actually has some nice features, and it’s really nice that the app runs on all our tablets and phones. I don’t even really need my Windows 8.1 PC any more—all I was using it for was Windows Media Center. You know, I could probably get rid of the gaming PC hooked up to the TV if I moved the video card into my home server. Having just one computer in the living room instead of three is the kind of thing that will make leaving Windows Media Center behind sting a little less. I bet that if I document the whole process and write it up for TR, it’ll be exactly the kind of therapy I need to wrap this up and move on with life.
And so it begins
Now, I know the thought process above has to be similar to what at least some of you have gone through. I figure I’m on the tail end of converts from ye olde Windows Media Center, but I know there are diehards still out there lamenting their loss or maybe still fighting to get Windows Media Center working on Windows 10 in a post-April Update world. To those of you good people, take a deep breath and listen to my tale. Maybe it will help you find peace.
I’ve used Windows Media Center since leaving BeyondTV sometime around 2008, right around the time the first HDHomeRun came out. Around that time, I had my sights set on getting a Hauppauge HD PVR as soon as I could. Back then, my HTPC was built around a Core2 Duo E6600 and a passively cooled GeForce 8600 GTS. That hardware had a good run, but it’s history and not part of the equation today. Today’s story really begins with the details of the three different PCs that did everything and the one PC that brought them all together.
The HTPC
First built in late 2012, and running Windows 8 from day one, my HTPC’s foundation was an AMD A10-5700 and its Radeon HD 7660D IGP. I was a bit obsessed with APUs and mini-ITX at the time, but I won’t rehash old forums posts here. I should mention, though, that the motherboard, an ASRock FM2A75M-ITX, became infamous for VRM fires shortly after it was released. I never had a problem with it, though, perhaps because of the 65-W TDP of my APU. I paired those parts with 8 GB of DDR3-1866 memory. A 128-GB Samsung 830 SSD and a 2.5″ 750-GB spinner for recording storage rounded out the system.
That setup got the job done for a while, but the IGP was coming up short for even the light TV gaming it was asked to do. As a result, I moved the PC into a new case, switched to a 3.5″ 2-TB hard drive, and dropped in a Asus Radeon R9 270 in the summer of 2014. It hasn’t changed since—not because it didn’t need to, but because it was trapped by Windows Media Center and its dependence on Windows 8.1.
The home server
Built not long after the first incarnation of the HTPC above, my home server came together in early 2013. Originally conceived as a dedicated PC for storage and game servers, its hardware configuration has stood the test of time. For one, I haven’t outgrown its modest storage space, courtesy of three 2-TB Western Digital Reds in RAID 5. For another, the 16 GB of DDR3-1600 memory, picked for RAM drive experimentation, is still a respectable capacity even by today’s standards. The Intel i5-3450S sitting at the system’s heart is a bit of an odd duck, but it can turbo up to 3.5 GHz and does its job within 65 W. Everything resides in a Fractal Design Node 304 case, which I still have a strong attachment to.
The gaming PC
When I replaced my main rig back in early 2017, my old system became available for redeployment. The venerable Intel i7-2600K that lived inside needs no introduction, but the system did need a new video card. My GeForce GTX 980 Ti had jumped ship to my Kaby Lake build, after all. Before the mining craze hit, I picked up an MSI Radeon RX 470 for a scant $175 to take its place. My old PC still rocked 16 GB of RAM and a 500-GB SSD, as well.
At the time, hooking this PC up to my TV solved a couple of problems. It was vastly superior at gaming compared to the HTPC I had before, and it could actually play 4K YouTube videos without looking like a fool (not to mention its ability to perform chop-free playback of 1080p video in funky broadcaster-specific players). As a Windows 10 box, though, it couldn’t run Windows Media Center.
The fox, the chicken and the corn
As I’ve said, all three of these PCs performed their various duties in the living room. The HTPC handled recording and playing back TV with Windows Media Center, addressed light gaming needs like Minecraft or Stardew Valley, and ran Chrome for all the things Chrome does. The home server sat next to it, providing bulk storage for my collection of ripped movies and saved recordings of Good Eats and Mythbusters. It also drove the all-important baby-monitor screen, served up the weather on the side, and kept the Minecraft server running. Meanwhile, the dedicated gaming PC was off most of the time, its video card going to waste unless friends or family wanted to fire up Gang Beasts, Rocket League, Helldivers, or whatever for a few rounds. All in all, having three separate computers around my TV was a less-than-ideal situation.
With so many missions spread across so many systems, it was harder than I expected to decide what to do. First and foremost, I needed to get away from Windows Media Center, but nothing else played nice with the .wtv recordings I had saved. I really didn’t want to mess with moving my RAID array to a new PC. I also knew that a PC with dual monitors was going to get really annoying really fast when the primary monitor (the TV) was getting powered off all the time and making windows all jump around on the secondary screen. It was classic paralysis by analysis, and I couldn’t bring myself to move forward.
My white knight wore a black leather jacket. I’m due for my every-three-year, top-of-the-line-video-card-upgrade, and I’ve been saving my Amazon bucks since I last spent them on my Kaby Lake upgrade. Say what you will about the value proposition of a GeForce RTX 2080 Ti, but I have the motivation and the means to pick up the latest and greatest once the stupid things are actually in stock at their suggested prices. Eventually, that card will free up my 980 Ti for a reunion with my 2600K and its destiny as a dedicated VR PC in the basement.
As I was piecing my plan together, though, the immediate fact was that the Radeon RX 470 in my old gaming PC could migrate into the home server to take over the duties of all three computers scattered around my entertainment center. Well, on the hardware side of things, anyway. Since my circuitous hardware-moving plan didn’t require any downtime for the current HTPC, I went ahead and yanked the RX 470 to put it into the home server, even though I wasn’t 100% sure what I was going to do with the software side quite yet.
Immediately, I ran into problems. Balls, where on earth are my Corsair modular PCIe power cables? Must have gotten tossed during the move or a spring cleaning since then. Dang, the EVGA ones I found don’t fit. Crap, I can’t use the PSU from the temporarily out-of-commission i7-2600K machine! It’s too long, and the modular cables collide with the top of the video card. Ah ha! I have that old 750-W non-modular Corsair PSU in the basement. Hope it still works.
It did work, and two hours into my 20-minute project, with the most tragic cabling mess I’ve ever created in place, I hit the power button. The system came to life, but there was no signal from the video card. Terrific. I think we’ve all been down this road before. I removed the RX 470 and went hunting for a BIOS update. Thankfully, the Intel BOXDH77DF motherboard had loads of them. Turns out I was still running on the first release. Oops. Thanks to Meltdown and Spectre, there was even an update for it from this year that’d I’d been too lazy to apply until now. I installed the update, reinstalled the video card, and everything was right with the world. As a bonus feature, my retro mobo was now rocking the latest Intel visual BIOS. It felt like getting a whole new PC.
With that out of the way, I still needed to get the server upgraded to Windows 10. I popped in a spare Crucial MX100 256-GB SSD that I’d recently replaced in another PC and installed Microsoft’s latest onto that drive while leaving the Windows 8.1 installation intact on the RAID array. Sweet, things were finally all coming together. Now I just had to get the services it performed back up and running. Let’s just quickly defrag that RAID array first, seems like a good idea now that the OS is on its own drive, right?
Wait, what? Windows 10 thinks the RAID array is an SSD and won’t defrag it? A bit of Googling informed me that, left to its own device drivers, Windows 10 will assume drives are SSDs if they perform above a particular threshold. Installing the Intel Rapid Storage Technology driver sorted that out, though. Finally, I could get to work.
Dusty silicon
I’ve mentioned that I first snagged an HDHomeRun device about 10 years ago. It worked great until it was destroyed by lightning, and I’ve stuck with SiliconDust’s product line ever since. I got a lot of mileage out of my HDHomeRun Prime after buying it in 2012, but I retired it when I dropped cable last year. That left me with a lone dual-tuner SiliconDust HDHomeRun Dual from 2011. It was still going strong and I saw no reason to replace it—at least, at first.
As a fan of its hardware, it was a logical step for me to switch over to SiliconDust’s HDHomeRun DVR software. I’d been keeping an eye on it for a few years and liked what I saw, but just not enough to take the plunge until Windows Media Center became truly unsustainable. HDHomeRun DVR has a reasonable $35 annual subscription fee for access to program guide data, plus the full complement of application features with no limits on the number of devices that can use it. My HDHomeRun Dual played nice with the free version, so, I decided to pony up my $35 to unlock the rest of the features.
That’s funny, the program guide isn’t loading anything…
It turned out that even though my old tuner worked with the new software, it wasn’t supported by the new software. I found this out after contacting SiliconDust’s support. They got back to me quickly with the news and offered me a 30% discount code on a new tuner from their store. That was a better deal than any of my other options, and I soon took delivery of a shiny new quad-tuner HDHomeRun Connect Quatro.
The existing, and fully updated, HDHomeRun software I already had installed found the new tuner instantly. After a quick channel scan (using this antenna, we get NBC, Fox, CBS, and PBS just fine over the air), I was ready to pick up where I’d left off a week earlier when my old tuner hit the wall. The setup process—if you can even call it that—was insanely simple, a far cry from the various hoops I’ve had to jump through over the years. All I had to do was set where I wanted my recordings to be saved. The Quatro worked flawlessly and identically with the HDHomeRun app on Windows 10, Windows Phone 10, iOS, and on a Fire 7 Kids Edition tablet. With OTA TV suddenly available on so many new screens in the house, I was glad to have the two extra tuners afforded by the Quatro. Now, it was time for the combo to show me what it could do.
Thankfully, the HDHomeRun app plays nice with my configured-for-Windows-Media-Center Logitech Harmony remote. A couple buttons inherited slightly different functions, but I didn’t bother to reprogram them. I did have to reprogram the remote to implicitly leave the PC on when switching to other activities, though. Otherwise, the remote would put the PC to sleep if I toggled over to the PS4 for some Spiderman action. The most important button, fast forward for commercial skipping, worked perfectly and without any limitations.
As for using the app to watch and record TV, I’m pretty impressed. We haven’t had to deal with any technical problems or crashing whatsoever. The live program guide shows up on the right side of the live TV and you can scroll through it one channel at a time to see what’s coming up. I actually like this better than Windows Media Center’s transparent guide that blankets the entire screen.
The “Discover” tab could also be considered a program guide, but it presents shows as thumbnails and doesn’t concern itself with showing you what channel something is on. How very modern. I’d be annoyed by it, but chances are I’m not going to watch TV live anyway. I don’t really care when a show is on—I just want to see what programs are available. So, surprisingly enough, this interface works for me.
Recordings and tasks are what you’d expect to see if you’ve ever used a DVR before. A feature I’ve long been jealous of on other platforms is the option to record sporting events only when specific teams are playing. Thanks to the HDHomeRun app, I finally have this ability. Go Lions! I do miss having a summary of upcoming recordings, though. Playback of recordings is synced across all your devices, at least, so you can pick up whatever you left off watching on the big screen whether you go for the phone in your pocket or the tablet on your nightstand. The wife approval factor of this feature is extremely high in my household. At long last, I can put Windows Media Center to bed, forever.
Not so fast, buddy
Oh crud, all my saved recordings in .wtv format. What am I going to do with them? A couple programs can play them, but the recordings have crazy file names that aren’t based on the name of the episode. Only Windows Media Center can read and properly display the metadata that ultimately allows you to pick the show you want to watch. The files are big, too, since they’re not saved as the H.264 files we all know and love. They also don’t enjoy the near-universal hardware-acceleration support of H.264 videos. As a result, I needed to rename and transcode hundreds of files. I needed some help.
Enter my 14-year old nephew, who, in his words, has been:
int x = 8;
Console.WriteLine("programming since age {0}", x);
Nice. Anyway, there was no way I was going to manually rename each file. I calculated that it would take at least six hours of abject tedium—the worst kind of tedium. So, I farmed it out for a song instead. Here’s what he came up with.
public static void renameFile(object input)
{
FileInfo io = (FileInfo)input;
Shell sh = new Shell();
Folder dir = sh.NameSpace(Path.GetDirectoryName(io.FullName));
FolderItem item = dir.ParseName(Path.GetFileName(io.FullName));
String det = dir.GetDetailsOf(item, 274);
DetailedFileInfo oFileInfo = new DetailedFileInfo(274, det);
String fileName = io.Name.Replace("_", " ");
String dirName = io.FullName.Replace(io.Name, "");
String fullName = Path.Combine(dirName, fileName);
File.Move((fullName.Replace(fileType, "")) + targetFileType, Path.Combine(fullName.Replace(fileName, ""),
(oFileInfo.Value.Replace(":", "").Replace("?", "").Replace("*", "")) + targetFileType));
}
It worked! While I was fast asleep, this code and his efforts magically transformed my unparseable file names into files with names that matched the episode within. It was wonderful. By the way, Shell32.dll and System.IO are dependencies for that bit of code. Code monkeys and keen-eyed non-coders among our readers probably noticed that the code is reading data from one file and renaming a matching file. That’s because I transcoded all the files before my nephew got to work.
Even the simple task of batch-transcoding required an unexpected journey, though. Thanks to my amazing foresight, I’ll be running a lowly quad-core processor for at least another year or so. Even using the most powerful PC in my house, the idea of transcoding hundreds of hours of recorded TV was still daunting. Thankfully, Handbrake was at least up for the job, as it can work with .wtv files. After some benchmarking and experimentation with quality settings with the hardware on hand, though, I realized what I really needed was the untapped potential riding shotgun within my CPU. I needed to enable my IGP to get help from Quick Sync.
A trip to the BIOS, a driver installation, and a reboot later, I was staring at a Device Manager listing that I never expected to see. I quickly became very thankful for it, though. With my swanky new Intel HD Graphics 630 unlocked, Handbrake had a fancy “Intel QSV” option for encoding H.264 available from its Video Codec drop-down menu. Using QuickSync still hit my CPU hard, which was surprising, but it made a huge difference in performance. I observed the average FPS while encoding rise from about 60 to about 150. I figure that saved at least four days of round-the-clock CPU time. At last—and for real, this time—I could put Windows Media Center to bed, forever.
I was down to the last niggling item on my to do list for the project. I’d identified it early on, but the final piece of the puzzle took a couple weeks to put in place all the same. The problem was driving two monitors from one computer when one of the monitors (the TV) is frequently turned off while the other one is left on all the time. This arrangement causes Windows to haphazardly rearrange windows on the smaller screen any time the TV and receiver are powered down. As you can imagine, this is very annoying.
After scouring the internet for software-based solutions, driver settings, registry edits, and the like, all I found was other folks with the same problem and tales of things that sometimes worked or used to work. Eventually, I followed the rabbit hole deep enough to come across the Monitor Detect Killer. It sounded like exactly what I needed, and it turned out that it was. The MDK is an unassuming device that could easily be mistaken for a generic cable adapter in a drawer full of parts. However, it’s got some secret sauce inside that allows it to perform its proverbial “one job” of not letting your PC know when the monitor plugged into it is turned off. There’s really not much else to say about it—it just works.
Conclusions
With all of my problems finally solved, it was time to look upon my works. Were the dozen or so surprises along the way worth the hassle? Unequivocally, yes. Everything about our HTPC setup is vastly simplified and improved. It’s drawing less power, pumping out less heat, generating less noise, and using fewer input devices. As a bonus, not much money was spent in the process, and I got the satisfaction of breathing new life into aging hardware (though I was tempted to make this a story about building a shiny new Ryzen 2700 system for the job instead).
In a way, this article is the opposite of a long story short. You could easily sum it up with one sentence, but I think the history and specifics are what make it interesting and relatable. Maybe you even learned something new. Certainly, nothing I’ve shared was particularly difficult, but if you’ve made it this far, I suspect that you appreciate the finer details. The kind of details that lead most people that don’t “get” computers to just use a smart TV, game console, or a Roku-alike for media-duty, I suspect. Even so, I’ll bet some of you are already mentally drafting up a reply about how I should have gone n steps further. I’m fine with that.
It’s funny: people tell me I must really love computers, but the truth is that I have strong, sometimes irrational, preferences that require me to understand computers. Maybe that’s love, I’m not sure. What I do know is that, in this case, those preferences just didn’t jive with Microsoft’s roadmap for living room media consumption, and something had to give. I gave, and I’m in a better place now. It’s going to be ok.
…wait, you’re still running Windows 7? Oh boy, I am not qualified to tackle that. Seek professional help, friend.