Watching and Recording HD video on Mac OS X
Digital Video Recorders (DVRs) and High Definition (HD) programming have positively revolutionized entertainment, particularly for busy folks who can't always sit down at the time of broadcast to view their favorite show.
While DVRs are convenient, they certainly have limitations. Even after buying your Tivo you must pay a monthy fee to use it. If you get your DVR from your cable provider you must pay a monthly fee *and* you never own the device. Your DVRs can run out of space requiring that you delete shows that you may not want to. Your DVR will not allow you to export your shows and movies to DVD, iPhone or any other device in your household.
After months of torturous research and beta testing of software, I'm here to report how you can assemble a better-than-tivo experience with your Mac, all with equipment that you own and do not have to pay a monthly fee to run.
The easiest way to explain what you will need and how to piece it together is to follow the cables from your wall to your screen. In this article we'll be referring to the below diagram which you can click on to view in 1080p:
Your HD signal can come from a number of sources. Because we're running our signal through our computer we will require some form of receiver to accept the television source and send it along to us via the correct cables. Here, we will presume that you have signed up for digital cable service, Direct TV or some paid service that provides HD channels as part of the package.
The back of your receiver will have a number of different outputs which we'll need to choose from in the next step.
As you'll soon see, the path to getting an HD signal through your computer is a treacherous one, littered with the bleached bones of old tech and modern MPAA booby traps.
First and foremost, a high definition signal carries a lot of information, cramming 1920x1080 pixels a frame through (for 1080p) or 1280x720 pixels (for 720p) so we will need a connection that is capable of carrying this data.
The RCA connector was introduced way back in the 1940s. The common "composite video" incarnation (yellow, red, white) is an analog connection that is limited to NTSC resolution of 720x480. FAIL: not enough bandwidth.
S-Video is a newer technology, introduced by JVC in 1987. It improved the quality of the picture being passed through, but still topped out at "standard resolution" NTSC. FAIL: not enough bandwidth.
The Coaxial Cable is the line that brings the signal into your home or apartment if you subscribe to cable television. It clearly has the bandwidth but you run into a myriad of compatibility problems when you attempt to plug it into anything other than your receiver. At the time of writing elgato sells USB tuners that will accept only coax and will play and record "Clear QAM" video. If you live in a major city you do NOT have clear QAM -- instead you have encrypted or scrambled stations that must go through your cable box to be viewed. FAIL: Interference from encryption
HDMI or High Definition Multimedia Interface is a high-bandwidth all-digital interface. These are the cables that electronics stores will try to sell you and for good reason: For devices that are compatible you get plug-and-play convenience and a beautiful distortion-and-noise-free picture. When I plugged my projector into my Mac the two devices communicated with each other and in System Preferences -> Displays my projector even showed up by name.
All of this convenience and quality hides the sinister (and deal-breaking) aspect of HDMI. HDMI uses HDCP to prevent recording of data. Remember the mess with DRM for music? Same thing here, but embedded into the devices and protocol itself--not the files. FAIL: DRM
So we've seen that the old composite and s-video cables aren't capable of carrying the signal we need, and that coax and HDMI are riddled with DRM. Our savior comes in the form of what is often referred to as the "analog hole". The Component Video cables are capable of carrying an HD signal, but due to their analog nature, are INCAPABLE of carrying the broadcast flag that devices are supposed to identify and use to block recording.
There are a LOT of video encoders on the market from a myriad of companies. A few will accept the increasingly rare "Clear QAM" signal and record it without a loss in quality but as a practical matter, ALL of them are limited to NTSC 740x480 with the exception of one...
At the time of writing Hauppauge may be making the only consumer encoder on earth that accepts component video.
It manages to get by on a USB 2 connection by compressing the video using H.264 (the same codec used in Blu-Ray DVDs, Quicktime, iChat videos and more). Even with the help of this dedicated encoder, you still end up having massive processing needs which we'll cover a bit later.
Another easy part of the process is the software. Aside from elgato's eyeTV there pretty much isn't anything out there for Mac that works with the HD-PVR except for a wildly experimental version of MythTV and a command-line app.
Not that eyeTV will leave you wanting for much; it gives you the complete Tivo experience and then some. A quick rundown of key features include:
- pausing and timeshifting live television
- recording of television (or any component, composite or s-video input) to any Hard Drive you select
- quick editor to remove commercials from recordings
- export shows to any format including burning to DVD, ripping to quicktime or iPhone
- remote scheduling of television through the titan tv website (free)
- "smart scheduling" which will allow you to create playlists of recordings based on your preferences (for example: recording only new episodes of a particular show you watch every week)
Both the ZephIR and Remote Wonder require you to train them but it is worth the time. eyeTV can use the ZephIR to change channels for you while you're away so that it can perform scheduled recordings. With the Remote Wonder you can tap into eyeTV's time-shifting functions such as pausing live TV. You can also use it to control your Mac's DVD player, iTunes and more.
**The Remote Wonder product has been discontinued but is often available on eBay. The software works but is not a "Universal Binary" which means your computer will run it through Rosetta emulation. I am currently researching a more compatible solution (and encouraging our friends at elgato to get their act together and support the Hauppauge remote).
For those on Linux I understand MythTV is quite good and on Windows we've confirmed that SageTV works with the HD-PVR. We thought that the interface was pretty tortured, requiring 4x the clicks to perform the same functions using eyeTV. The software that comes with the HD-PVR is simply beyond hope. Even if you are a Windows user, expect to purchase additional software to use your device.
As eluded to above, your encoder will work best when it is set to maximum quality. At the top settings it will be throwing 13.5Mbps of data at your computer to process. If I'm recording a show while watching it full-screen I use 80% of the CPU on my Mac Pro 2.66Ghz Quad Xeon. I record all of my shows to their own dedicated 1TB HD and have eyeTV set to use 1.5GB of RAM as it's scratch disk.
As I understand it, a number of people have been recording on their Mac Minis to some success, but many have to set their compression higher to prevent seeing dropped frames.
Once we have our video captured we need to send it out to be viewed. Here we run into the same problems we had with the input, minus the broadcast flag issue.
We will continue to disregard composite and s-video because of their bandwidth limitation, and will add to that list coax AND our previously favored component due to our graphics card not having these interfaces.
As it turns out, DVI (standard on almost every graphics card sold today) and HDMI are THE SAME THING, except their plugs are physically different. You can pick up a DVI -> HDMI converter for cheap online at stores such as monoprice which will enable you to plug your HDMI projector or television into your graphics card with no conversion (or loss of quality) at all.
Audio is the one section that doesn't require a section: both RCA and Dolby Audio work fine. Plug and play.
Finally, an easy part! When you buy your TV or projector just make sure it has an HDMI port and is listed as "HD". Ask your friendly sales rep if you aren't sure.
While each one of these sections could be a book in an of itself, and some tinkering will be required to get your home entertainment system dialed, this will at least lay out the different parts you will need to assemble to watch, record, and export HD video on your Mac.
At it's best you will have all of the convenience of the $10/month DVR plan through your cable provider but will have the freedom to do what you want with your content, and will own all of your own equipment to bring with you from home to home and from plan to plan.
Posted by Aaron R. Deutsch on May 3, 2009 12:34 PM
Can I watch on my Apple HD Cinema Display as I record, or do I have to wait for recording to stop before playback?
Posted by: Bradlecat at July 22, 2009 1:21 AM
Yes, you can watch (and timeshift) television on any screen while it is recording.
It is this capability that allows you to time-shift in the first place; even without selecting "record" the DVR is recording live TV in a buffer on your HD so that you can rewind a given amount of time and FF (or jump) your way back to live television.
The key difference is that when you choose "record" the program is saved on your HD until you manually delete it, instead of simply disappearing when you quit, or being overwritten when the buffer is full.
You are using a set-up very similar to what I am looking at for my upcoming HTPC build. I was planning on using the Hauppage HD-PVR to capture the component output from my DirecTV HD receiver because of it's ability to encode using the H.264 AVC codec that is used on Blu-Ray disc. That brings me to my question which I believe would be the obvious "next step" with your set-up:
How do we then burn to Blu-Ray discs from our DVR (Hard Drive)? Have you tried this yet?
Posted by: Nick Ferraro at September 12, 2009 9:58 PM
Terrific summary of the choices and how to put it all together! I've landed pretty much where you have though still having some stuttering issues with the Hauppauge signal, which I fear may require a firmware update. (Insert parallels-windows yak shave here.)
I have made a little progress on the blaster issue: because I have a live Firewire port on my HD set top box, I've been able to use the free Channel Changer app to control my STB from EyeTV. Still no support for the Hauuppauge remote itself but at least I can use my mouse. Hoping to find some way to make Remote Buddy do the job instead.
You can see my notes here: http://bit.ly/hdtvmac
Again, great summary!
Posted by: Alexandra Samuel at November 4, 2009 11:42 PM
I have the same setup as you pretty much. One thing I don't see you specific is how you get audio from your STB to the Hauppauge HDPVR - but you do specify that either Optical or RCA auto out from the Hauppague to the TV. I have been able to use the RCA on the Hauppauge to get sound, but when I use Optical I get nothing. I have the Optical going from my STB OUT to the Happauge Optical IN, and then another Optical on the Happuage Optical OUT to my AV Receiver. When I switch reciever sources from my MAC to use my STB directly - I get sound e.g. the Optical is passing through the Happauge to the receiver. Is there an issue with getting Optical audio out to the Mac over USB?
Posted by: Shane at February 6, 2010 3:49 PM
Using RCA for sound as I'm only rocking a 3 piece sound system (the main advantage to optical, aside from cleanliness is the 5:1 you gain). My exact setup is: RCA from STB to Hauppauge -> USB2 sound AND picture to Mac -> Harmon/Kardon "jellyfish" 3-piece speakers plugged directly into Mac.
I was excited at the prospect of using the optical so I bought a cable and had a few problems myself. Since it wasn't mandatory for my setup I let it slide...
Have been meaning to post an update as I was able to get the remote situation worked out with the following:
- remote buddy software (as a STB in eyeTV)
- Manta TR 1 USB IR receiver
- Apple Remote
The thing that's cool about it: eyeTV has all the controls you need on-screen (I use the guide to make up for the lack of number pad). The Apple remote is so simple you can navigate by "feel" and not even have to look at the remote.