Home Home Theatre PC Project

A project I've been working on for a while has been running a MythTV setup. The requirements for the project are pretty simple, just recording and playing back TV content:


Requirements:

  • Be capable of recieving analog TV now, and HDTV content in time for the ~2009 analog OTA shutdown.
  • Be upgradable to output to an HDTV display later

Don't Care Conditions

  • I have no cable TV. Ability to handle cable TV style digital content doesn't matter.
  • Analog output of audio a must, digital out nice (but nothing to connect it to presently).

So, I collected some hardware and put a machine together:


MythTV setup phase 1

  • MSI Mobo
  • AMD Athlon 1600+
  • 256MB PC2100 DDR RAM
  • bt878-based frame grabber
  • SB Live! audio
  • Asus AGP-V6600/32M(TVR)
  • Intel e1000 GigE NIC
  • Motorola digital cable STB

This setup was more a test then a production system, and featured a few unusual elements. The frame grabber was a freebie, aquired because the connector to the tuner was broken (but the composite input worked fine); this ended up working out OK, as I would have had to use the composite input to get digital-cable signals anyway. The digital cable has a serial port for power and channel control, and the model I happened to get was supported by MythTV directly (it includes the program to control it). The other unusual feature of this setup was the lack of disks: it was a net-boot setup with NFS-mounted storage. Gigabit is more than plenty for running this; video streaming really only needs ~15MBit/sec. The limitation here was less disk IO, and more CPU speed, as the framegrabber does no acceleration (I used Motion JPEG as the codec). Video ouput to TV was composite video from the Asus card. This card also had composite in, but using different circuitry then in most nVidia cards with that feature, and not supported by Linux drivers.

MythTV setup, phase 2

  • MSI Mobo
  • AMD Athlon 1800+
  • 384MB PC2100 DDR RAM
  • nVidia GeForce FX 5200
  • SB Live! audio
  • Haupauge PVR-250 tuner/encoder
  • Intel 10/100 NIC
  • Maxtor 120GB and WD 160GB HDDs

This setup was used in Houghton until I moved in 2006, then went home to my parents while I lived in the on-campus apartments and didn't buy cable that year. In that arrangement, no network access was conviently available (partially addressed with HomePNA bridges), so local disks were a nessecity. The CPU and RAM were upgraded slightly, and the framegrabber replaced with a tuner with hardware-accelerated MPEG-2 encoding, which cuts down on host CPU requirements dramaticaly. An additional 2 Seagate 160gb drives have been added.

Future improvements for phase 3

I've added space to the system -- 2x Seagate 160gb HDDs -- and an ATSC tuner card (an AverMedia A180). Picture quality with digital TV is fantastic -- too bad my monitor isn't big enough to display it wouthout downscaling it. The cheap antenna I have seems to do just fine with digital streams in the UHF band -- Forward Error Correection helps a lot. We'll see how it works when broadcasters shift their digital signals back down into VHF in 2009. Storage is again the big issue; at up to 9GB per hour, HD content is kinda big. The big issue I ran into was getting schedule metadata to work with both inputs. MythTV doesn't seem to like associating the same 'input source' data with multiple input cards -- so I had to define 2 copies of the schedule data and associate one with each card. Otherwise I get missing data for HD, or it tries to do digital tuning on analog stations, and nothing works right. Between disk space (HD content is huge!), power consumption, networking troubles with HPNA, and moving to an apartment with virtually no TV signal reception, this project got mothballed for a while, although now I'm starting to look at it again. Ideas for version 4:
  • Intel Atom-based system with direct HDMI outout for the frontend
  • AverMedia card (if I can find a small-form machine that still takes PCI...) or a USB tuner stick or HDHomeRun
  • Netgear ReadyNAS storage over NFS