A Google search of "mythtv site:avsforum.com" brought me to this thread. I thought I could contribute some personal experience, for what it's worth.
I first started playing with Linux when I was in high school, around 1996 or so. I've been using it almost exclusively for the last decade (at least on machines that I own, i.e. at home). I've tried a lot of distros over time, Slackware, Debian, Gentoo, Ubuntu, CentOS, and Arch. So I'd like to think that I'm fairly knowledgeable on Linux systems.
Along the way, I've even been a Linux "evangelist", that is, trying to promote it as much as possible without being labeled a zealot. Recently, though, I've come to adopt a more neutral view on the whole Linux vs. whatever debate (where
whatever is usually Windows).
My recent decline in "passion" for Linux as the be-all, end-all operating system I think stems from two things: increasingly less free time for tinkering/configuring, and Linux's overall limitations. And those two things are not necessarily mutually exclusive: often, Linux's limitations can often be overcome if one is willing to spend enough time tinkering with their system (and/or hacking code if you're
really dedicated!).
Here's some areas I've struggled with using Linux, most of which are media PC issues:
- Some DVDs still can't be played under Linux. Unless I've missed something (entirely possible!), there's still no ARccOS defeat software for Linux. Also, at least in the USA, because of the DMCA, it's technically illegal to watch DVDs on Linux (unless you're using paid-for, officially licensed software; I assume the overwhelming majority of people don't do this, and instead use libdvdcss2). Note that most people, myself included, believe it's an exercise of fair use rights to watch legally-obtained DVDs under Linux with libdvdcss2, but I think it's still technically illegal. (On second thought, I vaguely recall reading a blurb about this no longer being true... but not sure.)
- The Blu-Ray problems that have already been pointed out. You have to rip the Blue-Ray first to watch it in Linux. And what about reliable ripping tools? The only ones I've seen are for-pay, and cost at least 50 USD. That's half-way to a Windows license.
- Streaming Netflix. I highly doubt Linux will ever have the ability to display streaming Netflix content. I believe it's fundamentally the same issue underlying the Blu-Ray and ARccOS difficulties. That is, the movie studios want to protect their content, and that can't be done (or at least they believe it can't be done) on an open system like Linux. These big content providers know that if they, e.g., allowed Microsoft to release an open-source implementation of their DRM tech (used by Netflix streaming), that they would effectively open up another avenue for people to copy content.
- Hardware support. Linux does have pretty good hardware support. But you still have to be careful what you buy. And, quite often, new hardware has Windows drivers released before the Linux drivers. Likewise, Linux hardware drivers don't always support the full feature set of the device.
Example: for a media PC, the video card is one of the most important components. Modern ATI/AMD and nVidia cards support hardware-based video decoding. But you can't use that functionality under Linux with ATI/AMD video cards. So you're stuck with nVidia for video. And it appears that the highest spec on-board nVidia graphics you can buy for an AMD CPU-based system is the 8300. For Intel, it's the 9400, but that's only for Socket 775 or Atom---nVidia literally isn't licensed to make chipsets (and therefore integrated graphics) for Intel's newest chips. (Perhaps Sandy Bridge will provide some competition for nVidia in the hardware-assisted video decode on Linux, as Intel is usually pretty good at supporting it). In other words, if you want nVidia tech newer than the 8300 (w/AMD CPU) or 9400 (w/Intel CPU), you have to go with a discrete graphics card, which in turn adds cost, power consumption/heat, and size constraints, all of which conflict with the media PC ideal.
Sound hardware is obviously the other critical piece to a media PC. Sample a few of the more advanced soundcards out there, and compare their release date to the ALSA support notes. Most lag significantly. Another example is the E-MU 0404 USB device. It's oft-recommended as a great external DAC, yet, last I checked, there was no Linux support.
- Transcoding support. Yes, x264 is cross-platform. But if you want to do something fancier than simple transcoding, it's definitely harder to do (or maybe impossible) on Linux. In particular, I'm talking about the Avisynth program, which has, among other things, the best deinterlacing capabilities. I've purchased some DVDs (particularly of TV shows) that have wacky interlacing and/or telecine schemes. I wasn't able to get good encodes until I shelled out for a Windows license, and ran meGUI in Windows in a VirtualBox virtual machine. I believe I've read of people running Avisynth under WINE, but meGUI makes it so easy... as I mentioned before, I'm increasingly short on time, and am so unwilling to replicate the whole meGUI chain under "native" Linux.
I'm not trying to bash Linux or discourage someone from using it. I use it on all of my numerous computers, except my wife's laptop (and the virtual machine I mentioned above). I'm just trying to point out some realistic issues with using it (specifically as a media PC, as is the topic of this thread).
For what it's worth, this is my Linux-based media PC setup:
- A CentOS fileserver, where all my CD/DVD rips and pictures are stored. This is actually a headless (i.e. no connected monitor) box that I keep in the basement. It serves up other non-media related tasks as well. For this role, Linux is absolutely perfect: no cost, and with my Linux experience, extremely quick and easy to set up. Given it's use, it requires virtually no maintenance, and basically "just works".
- A MythTV box running Arch Linux. This machine uses the Biostar A760G-M2+ motherboard (on-board video disabled), an AMD Athlon II X2 250 CPU, an nVideo geForce 210 PCIe (discrete) video card, and a Chaintech AV-710 sound card (for optical audio output). I use MythTV as a DVR to record (and commercial skip!) over-the-air broadcast TV (via HDHomeRun). I also use it to play music and ripped videos. This machine lives in the living room. We have a corner setup, so it's in an actual mid-tower case, behind the media console.
This system more or less works great. Even the wife likes it! The only thing it doesn't do is Netflix streaming. We have a Playstation3, and can use that for Netflix streaming. But I don't like the idea of using the PS3 for Netflix streaming---it seems to be counter to the whole "home theater" experience: I can't just pull up Netflix from the remote, but instead have to get up and put the Netflix disc in the PS3, load the Netflix program, etc etc (and ultimately remember to turn the PS3 off, given that it's kind of a power hog). I know, this isn't a huge deal (we Americans really are lazy, aren't we?), but, I really want Netflix to be as integrated into the whole thing as seamlessly as possible. Ideally, it would show up as a menu option under MythTV.
What I did, then was purchase a Roku player, just for the streaming Netflix capability.
Another thought I considered was buying another copy of Windows, and creating another virtual machine instance on the MythTV system. Not terribly hard, but again, a fair amount of time and setup compared to the Roku solution. Not to mention, it would be a bit more "fragile" (e.g. consider a software crash when I'm not at home, how does my wife get it all back up and running)? In short---I'm having to jump through some hoops to get the functionality I want out of Linux, and spend a lot of time doing robustness checks for the WAF.
However, shortly after I hit "Submit" on the Roku purchase website, I had a thought: what if I instead ran
Windows on the media PC in the living room. I could then have a MythTV frontend in the form of XBMC, and also be able to get Netflix streaming natively.
The MythTV backend functions could be migrated to the fileserver in the basement. The fileserver has a beefy Xeon 3440 CPU, so would be more than adequate for commercial skipping and transcoding jobs. And therefore, the frontend (i.e. living room PC) could be an Atom+ION system, so smaller and lower-power. In fact, right now, the basement fileserver and living room media PC are powered-on 24/7. With this solution, I could actually power-down the living room media PC when idle, further saving power.
Anyway, just some thoughts from a long-time Linux user, particularly one who has been using Linux as a media PC for quite a while (I think I first started with MythTV around 2005).
-Matt