DIY Media Server and DVR Review Highlights
Are you tired of paying extra to rent sub-standard hardware from your cable company so you can watch & record your favorite shows? In this article I’ll discuss how you can easily build your own high-definition digital video recorder (HD-DVR) that will allow you to do everything your cable box can do – plus it’s a full-featured media server – with no rented equipment.
DIY Media Server and DVR Review Highlights Summary
- Building your own DRM-free HD-DVR is easy and relatively inexpensive
- No more equipment rentals – a (usually free) CableCARD is all that’s needed from your Cable-TV provider
- Software options are numerous but Windows7 Media Center is the best option for a diy-DVR
- Integration with a Network Attached Server (NAS) is nice but optional
- Since the system is basically a Win7 computer, the possibilities for streaming media services like Netflix, Hulu, Amazon, Vudu and the like are nearly limitless.
Introduction to the DIY Media Server and DVR Review
As Chris Eberle mentioned in his recent Technical Media Server review, (http://www.hometheaterhifi.com/technical-articles-and-editorials/technical-articles-and-editorials/media-servers-where-are-we-now-where-are-we-going.html) the world of Home Theater PCs encompasses a huge variety of solutions – nearly limitless ways – to stream, store, play, and record your media. These range from the fairly easy (e.g. Apple TV), to the quite complex (Linux & MythTV fans I’m looking at you), and not every HTPC does every function. I like to think that my system, while not quite as simple as an Apple TV, is on the easier side of this spectrum. Before going into the details of my system though, I’ll briefly go over what the basic components are for a DVR+media server system from a DIY perspective.
There are a few fundaments every media system (be it a full blown HTPC or just a media player) must have: (1) some sort of media center software (this is the core of any media system); (2) the hardware (e.g. a PC) to run said software; (3) storage for your media; and (4) a controller (e.g. remote control or wireless keyboard).
Optionally, some systems may have a tuner to bring in the live TV programs to the system (for the DVR aspect of the system) and an optical drive (Blu-ray or DVD).
Setup of the DIY Media Server and DVR
My system consists of a very small “net-top” PC (see definition below), which resides with the rest of my HT equipment, a Network Attached Storage (NAS) where all my media are backed up, a Harmony model 650 universal remote with a FLIRC infra-red receiver (FLIRC is a programmable infra-red receiver that converts your remote button presses to keyboard commands) and a networked HDTV tuner. I do not have an optical drive, which I’ll discuss later.
Next, let’s run through the hardware details of my DIY media-server / DVR.
The PC hardware at the heart of my system is what is often called a “net-top” mini-PC. It’s a Foxconn NT-A3500 which features an AMD E-350 “Fusion” processor. This particular mini-PC is no longer available, but there is a newer version (the Foxconn NT-A3800) that is virtually identical, but with a more modern processor (AMD E-450).
With the help of constantly improving acceleration drivers for hardware-based playback of graphics and video, this tiny barebones computer is fully capable of playing back full 1080p video perfectly smooth at full Blu-ray bitrates. “Barebones” means it came with no RAM and no storage. It has slots for both though, and I installed 4GB of fairly plain laptop RAM and a 240GB Crucial M500 SSD. The SSD was arguably a bit of overkill for an HTPC since the speed an SSD offers is not really needed for HTPC duty. You can get by just fine with a slower laptop-sized HDD which would give you much more local storage at the same price point.
The benefit of an SSD for this system is not so much the speed (although it is nice) but more the silence. Not only is the drive itself silent, but it puts off much less heat than an HDD, so the net-top’s internal fan doesn’t have to spin as much. I also knew that I was going to go with a NAS for storing my media so I didn’t need a lot of local storage in the HTPC itself (although I did want enough local storage for several hours’ worth of HDTV for reasons I’ll go into later).
Storage options for your media server abound. You could opt for local storage in the HTPC itself, build your own NAS (e.g. with the excellent FreeNAS software that is available free at www.freenas.org , or virtually any flavor of Linux can be setup as a server OS) or buy a retail NAS product, which is what I did. While I do like to tinker with PCs and HTs, my goal for this system was compact simplicity. I wanted each component to be easy to set up and use, and to not take up a lot of space. My NAS is the 2-drive DS213j from Synology, and it is awesome. Synology makes great products with very robust software and apps and a broad user base and 3rd-party apps environment.
The third main hardware component of my media server system is the TV tuner. A couple of years ago, thanks to the FCC relaxing laws about encryption of cable TV, my cable provider Comcast started encrypting my TV feed so I could no longer use the cable TV tuner built-in to my Plasma HDTV (which can only tune unencrypted cable channels). I was going to need some sort of cable box in my system, and another remote to go along with it. A little research into my options turned up the wonderful HDHomeRun-Prime from Silicon Dust. The HDHR-Prime is a networked HDTV tuner with three tuners and CableCARD compatibility.
Remember CableCARD? It was supposed to be the death of cable-co set-top-boxes back when it debuted in the late 2004. CableCARDs never really caught on big time, so TV manufacturers stopped making TVs with CableCARD slots in them. They are still around and available from your cable provider though; all you have to do is ask for one. Comcast will provide the first one at no charge. Additional CableCARDs are a small ($1.50 in my area) fee.
My CableCARD is the only piece of hardware in my system that is from Comcast, and it’s hidden inside the HDHR-Prime. The CableCARD is necessary to decode the encrypted channels from your cable provider. The non-“Prime” HDHomeRun does not accept a CableCARD, and therefore can only tune unencrypted stations. If you get your HDTV over the air via an antenna, this is an option for you. However if you get cable, even if your cable company has not started encrypting all your channels, I recommend the “Prime” version as sooner or later all cable TV markets will be fully encrypted.
The HDHR-Prime is a networked cable TV tuner. What this means is it tunes your live cable TV channels and makes them available over your LAN (local Area Network, i.e., your home wireless network) via your router. The Prime has three tuners, so you can watch and record multiple shows simultaneously. It presents the channels on your network as industry-standard BDA (Broadcast Driver Architecture) channels and also as DLNA (Digital Living Network Alliance ) compatible streams. With the DLNA streams, you can tune and watch live TV from almost any DLNA-capable networked video device in your house. Most media-center DVR software will access the BDA channels, but for quick and easy plain-old channel surfing, the DLNA streams are very convenient too: even though the built-in cable TV tuner in our TV sits unused, the DLNA streams from the HDHR-Prime allow us to channel surf using just the TV if we want.
While the DLNA streams make live TV available on multiple devices in my house (my TV, Blu-ray player, and phone are all DLNA compliant), what really makes the system shine is the media center software. There are many choices available when it comes to media center software: from Windows Media Center, to XBMC, to MythTV, to MediaPortal, NextPVR, JRiver Media Center, the list goes on. Each program has pros and cons, and some even integrate with others, sharing “back-end” and “front-end” duties. In my experience though, none does everything I want or need it to do. I am a long time XBMC fan and user, all the way back to hacking an original Xbox to run XBMC.
Since XBMC version 11, DVR functionality is built in. It’s not easy to implement though, and when I did get it sort-of working, the experience left me wanting; changing channels was slow, and the video was at times choppy. Since I was running XBMC in Linux, I also tried a couple of other Linux-based media center applications. I quickly grew frustrated with how difficult they were to set up and maintain. I wanted something much easier and robust if this was going to be my family’s primary interface for watching and recording regular TV. At this point, I decided to try Windows7 Media Center (aka “7MC”), which the HDHomeRun literature lists as its primary compatible media center application. I had been hesitant to convert my little net-top to Windows though, as I was concerned that the overhead of running Win7 would reduce performance.
Well, I needn’t have worried. I took the plunge and I have zero regrets. I now run 7MC and XBMC for Windows alongside each other, and this combination covers almost all of my media center needs.
For setting up live TV and DVR functionality, nothing beats Windows Media Center; it is absolutely best in class. After the headaches of trying to set up live TV + DVR on several open-source solutions like MythTV and XBMC in Linux, setting up 7MC was an absolute *JOY*. One thing that I had not known before getting into the home-brew DVR world was the challenge of getting programming data for your media center. The electronic programming guide (EPG) is not something that is just there for the taking on your cable stream. Most open source solutions require you to sign up with a third party EPG provider such as schedulesdirect.org (SD).
A membership with SD allows you to build a programming guide file for your cable provider which is then imported into your media center application, and must be updated on a regular basis. With 7MC, Microsoft does all of this for you (MS maintains their own EPG data for 7MC which downloads the data quite often),
and setup was easy. Another significant benefit of going with Windows Media Center over the dozens of open-source (and some paid) other options, is that 7MC is, as far as I know, the only media center software solution on the market that allows you to view premium channels like HBO, Showtime, Cinemax, and the like. Microsoft pays the licensing fees to allow this; no other software DVR developer does this (if there is one, please let us know in the comments). Although it is truly best-in-class for a home-made DVR, it’s not free: it requires you to purchase and run Windows (7 or 8) as the operating system on your HTPC. There are also several things I would miss dearly if I could only use 7MC. Fortunately I am not stuck with only 7MC.
The DIY Media Server and DVR In Use
So, how does it all come together, and what’s the overall experience like? Overall using my system is great. Like I said it is the primary interface for watching TV (recorded or live) on our system. My wife uses it, even my kids (ages 5 & 7) use it. There are a few hiccups now and then, but mostly it works very well. While the software is the heart of any media center, the remote control is (literally) what connects you to the system.
Part of what makes my system easy to use is the time I’ve put in to setting up my Harmony remote to operate each component and software program appropriately. There are many sites that can help with this, and Harmony remotes aren’t the only, nor necessarily the best solution. But I wanted to mention it as it is an important factor in the overall user experience. In addition to the remote, I also have a Logitech K400 Wireless Touch Keyboard. This comes in handy for those times when I need to install new software or drivers on the system, or if I just want to browse the net or e-mail on my big screen, while relaxing on the couch.
To give you a picture of how the system works, I’ll run through a couple of typical use scenarios.
Watch Live TV
For basic channel surfing, 7MC is the program we use. A macro on the Harmony turns on everything, wakes up the PC, and starts Windows Media Center. From there, it’s straight-forward to navigate to the Electronic Programming Guide (EPG, similar to the channel guide in your cable or satellite box) and browse to the show you want to watch. Since the system is a DVR, any show you’re watching may be paused, rewound, or recorded instantly. Setting up recordings is also straight-forward from either the EPG, or from the Recorded TV section of 7MC. The pause buffer and recorded TV both use the local storage of the Windows PC, in my case, the SSD I mentioned earlier. This is why even though I store most of my media on the NAS, I still wanted to have a decent amount of local storage.
Watch a Video from Our Collection
Many people prefer to rip some of their DVD and Blu-ray collection to their server to create a sort of “juke-box” for their movie collection. I prefer to watch my movies directly from the disc. As I’ll explain later though, I do archive some of my TV recordings to the server. So in the case that the movie is on the server, XBMC is how we watch it. 7MC has a limited number of video file types it can read and play back. This list does not include my favorite video container, MKV. Yes, you can install various codec packs into Windows, which should allow you to watch MKV and other file types inside 7MC. I’m not a fan of this though as codec packs often cause problems with Windows, and I like to keep my Win7 HTPC clean and light-weight when it comes to software. Anyway, to get to XBMC, a macro on the Harmony turns everything on, wakes the PC, and starts XBMC. Of course XBMC is more than just watching movies, so this scenario is also what we do if we want to take advantage of any of the other features of XBMC, like watching any of the thousands of internet channels, listening to our music library, or browsing our family photo albums (both of which are also stored on the server).
Watch a Show or Movie Recorded from Live TV
This is where the answer is “it depends”. If said recorded program is from a premium channel like HBO, then I have no choice; I must watch it from the local storage on the media center PC. This is because premium
channels are copy protected, so that you cannot move nor edit in any way the original recorded video file. So yes, all of season 4 of Game of Thrones is still on the local storage of my media center PC. However, if the show was from any non-protected channel (which for Comcast is everything but the premium movie channels and PPV), then it gets interesting.
As noted earlier, the local storage on my media PC is only 240GB. This is ample for the most part, but I can’t just keep everything there. To save space for shows or movies from say HBO, I need to move other recorded shows off local storage and on to the NAS. I do this with a wonderful little program called MCEBuddy. MCEBuddy is a service (i.e., runs in the background of Windows7) that monitors your recorded TV folder for any new recordings. When it detects a new recording, it can do any or all of several very cool tasks. Most importantly, it can automatically re-name and move the recorded TV file. This is important because XBMC expects a certain naming format for the system to properly add the file to the library. MCEBuddy reads the meta-data in the recording file, and re-names the file according to a format I define. For example, the 7MC -recorded show file “Cosmos- A Spacetime Odyssey_KTVUDT_2014_03_15_19_58_00.wtv” becomes, “Cosmos A Spacetime Odyssey – S01E01 – Standing Up in the Milky Way.mkv”
MCEBuddy can also re-encode the recorded TV file with better compression (e.g. H.264) and save it in a different video container (e.g. MP4, MKV, AVI, etc.) file format. Re-naming, repackaging (to a different container like MKV), and moving my recorded TV files, are the primary functions I use MCEBuddy for. However it can also remove commercials from your recordings, which is really very cool. I don’t always use this feature though as it has on occasion messed up, and I’ve lost part of my show, and I don’t mind fast-forwarding through uninteresting commercials. I also don’t always re-encode shows because it takes a long time. If I do want to re-encode shows for long term storage on my NAS, I usually use my more powerful desktop PC rather than the net-top HTPC.
What’s great here is that, except for my HBO recordings, all my recordings are DRM-free. This means I can move them to my NAS, re-encode them to save space, or even make them playable on my phone or tablet if I wanted to bring some shows with me while travelling. With the NAS as the primary storage, my capacity for keeping favorite shows is almost limitless (just a HDD upgrade away). Another benefit is that since both the tuner and NAS reside as stand-alone units on my LAN, they can physically be located almost anywhere in the house (although near the cable modem and router is most convenient). The benefit of that is the HTPC itself can be tiny. Many full-blown HTPCs are quite large components in the owner’s HT rack.
There are a few limitations to this system. Most notably, the HDHomeRun-Prime does not allow for any sort of “on demand” functionality. If you use and like this sort of feature, it is for the most part only available with a cable box from your cable company. The one 3rd-party exception that I know of is the TiVo Roamio which apparently does allow VOD functionality with the use of a CableCARD. There is a work-around though for some cable company customers; most cable companies who offer on-demand services also offer them via their website for consumption on-the-go or from your laptop. Since the system I’ve described in this article is a Windows7 computer, you can watch this web-based content via any browser you like on this system. Just make sure you have the right software (e.g. latest Flash) and drivers.
My system also lacks an optical drive. I don’t miss it, because I have a stand-alone Oppo Blu-ray player, and a desktop PC which I can use if I need to upload, install or transfer (via the network or USB stick) any files from an optical disc to the server or to the media center PC. Some do almost everything but might fall a little short on some features, like premium channels, or playback of certain media formats. My solution was to be able to use either XBMC or 7MC as needed. For my family this works out okay. Another limitation is that each component in the data line occasionally needs a little kick in the pants (a.k.a. reboot), be it the cable modem, the router, the HDHR tuner, or Windows7 itself. But these issues occur on most systems anyway, are minor, few, and far-between.
Conclusions about the DIY Media Server and DVR
To summarize, here’s a quick list of the minimum configuration to get going with this DIY media-server + DVR. The Silicon Dust HDHomeRun-Prime with cable TV service is the key hardware component for the DVR functionality. The Foxconn NT-A3800 is the latest version of this affordable, full-HD capable net-top. You’ll need one 4 or 8 GB SO-DIMM module of DDR3 RAM, and a SDD or HDD with at least 200GB capacity. The HDD or SDD should be a 2.5 inch internal notebook form-factor drive. The NAS is not necessary to have a DVR media center, but if you don’t have a NAS, then I recommend a 1TB HDD to store your DVR recordings.
You’ll need a remote control, and with Windows as the main operating system, any “Windows MCE” compatible remote is an affordable place to start, and many include an IR receiver. Finally, software: you’ll need to purchase a license for Windows 7 or 8. I recommend Windows 7, as it includes Windows Media Center. With Windows 8, you’ll need to upgrade to their “Pro pack” which is about $100, a.k.a. the cost of Windows7 Home Premium. If you already have Windows 8 Professional, then adding on Windows Media Center is only about $10. XBMC is a free download, from www.xbmc.org, and MCEBuddy is also free at www.mcebuddy2x.codeplex.com (though I liked it so much I purchased the “Early Access” license).
I have frequently priced out this or similar assemblies for friends, and the total price (not including the NAS) has been in the $500 to $550 range. I’ve been running this system or a variation of it for almost three years, and I’m very happy with it. It was easy to set up, and it’s easy to use, and except for re-encoding tasks (I do those on my more powerful desktop), it performs every media-server task I could ask for. I hope this article has illustrated for you how affordable, fun, easy to set up and use a full-featured, DIY, media server + DVR system can be.
Note: The purpose of this article is to show our readers how to set up a media server, which delivers both movies and music, the licenses of which belong to the person building the media server. We do not feel that Hollywood minds if consumers put their own movies on their own server for their private use. The laws that are in place are to protect the copyright owners of the media from those persons who copy movies and music, and sell, give, or distribute copies of the media to other people. Secrets does not condone such activity, as it represents property theft.