mythtv on FreeBSD: The beginning

Posted by Benjamin Close on April 1, 2009 under Mythtv | Read the First Comment

This article is the first in a series of blog entries which documents my progress getting FreeBSD 7.1-Stable working a both a MythTV backend and frontend. There’s very little information out there talking about this process, probably as FreeBSD’s multimedia drivers are not as mature or as abundant as Linux’s . However there is some information out there alluding to clues that is it possible.  Below is the specs of the computer I’m using for this setup.

Hardware

  • CPU: Core2Duo  E8200  @ 2.66GHz
  • HDD:
    ad0: 114472MB <WDC WD1200JB-00FUA0 15.05R15> at ata0-master UDMA33
    ad4: 305245MB <WDC WD3200AAKS-00B3A0 01.03A01> at ata2-master SATA150
    ad6: 190782MB <Seagate ST3200822AS 3.01> at ata3-master SATA150
    ad7: 190782MB <Seagate ST3200822AS 3.01> at ata3-slave SATA150
  • Video Card:
    NVideo GeForce 7300 LE
  • Audio:
    Intel 82801G (ICH7 Family) High Definition Audio
  • Capture Cards:
    • CX2388x TV Capture Chip (DVB-T)
    • Conexant (Was: Brooktree Corp)
      ‘7610144D&REV_02\4&1F7DBC9F&0&09F0 TV Video Capture

With the hardware set and not likely to change (I refuse to buy hardware due to an O/S not working with what I’ve got), it was time to try and get things working. Whilst there is a mythtv port, it’s the old stable release of 0.18. There has been a lot of changes since then. Including the new libmythui library where groovy graphics features are available. I must admit I’m not coming in to this blind. I’ve been running mythtv under Linux for quite some time.  Hence I’m quite aware what needs to be done under Linux to get a working Mythtv setup. Hence I’ll break this article up into a number of different steps as below. Each one being a different blog entry.. some of these steps are going to take a while to get working!

  1. Setting up required ports
  2. Setting up capture cards
  3. Setting up audio
  4. Setting up Xorg
  5. Installing Mythtv
  6. Configuring Mythtv
  7. Tweaking Mythtv

For anyone who wishes to follow this drama of getting things working below I provide some links I’ve found which useful in determining what might be possible. I also provide a little justification as to why I want Mythtv working under FreeBSD.

Why the Switch?

After having mythtv successfully running under various versions of ubuntu, I finally reached a point where Linux annoyed me enough to try and get rid of it in favour of FreeBSD. It’s not that Linux didn’t work, it’s just the amount of stuffing around I had to do to get things working was CRAZY! Sure installing mythtv was relatively easy but it’s all the little things that FreeBSD does so well that Linux doesn’t that made me want to change. Thinks like power management, cpu throttling, wireless that actually works!

These things are just easier under FreeBSD, there’s no config, overiding some config, linked to some default, using some crazy symlink farm. There’s not ‘volatile’ kernel modules which must go through crazy loading scripts because they are not GPL compliant. FreeBSD also is much easier to upgrade in place and has the ZFS filesystem. This is the main reason I wanted to switch. I use the same machine as a backup server with 2 disks in raid 1. The ability to daily snapshot at the filesystem level is just soooo nice!

FreeBSD Mythtv Links

Below are some links that I found useful when getting mythtv working under FreeBSD.

  • http://mythtv.son.org/tiki-index.php
  • http://wiki.freebsd.org/MythTV
  • http://www.lemis.com/grog/HOWTO/mythtv-on-FreeBSD-setup.html


Donations keep this site alive

  • miggyb said,

    From what I’ve been reading, there IS support for that video card in FreeBSD using the cx88 port, but that’s not enough to get it working under MythTV. MythTV uses V4L and it’s apparently being a pain in the ass porting V4L to *BSD because of some low-level complications that go slightly above my head.

    So basically, you can use the built-in capture program that cx88 comes with or you can wait around for someone to solve the compatibility issues.

Add A Comment

*