MythTV PVR350 tutorial

I’ve never managed to finish this tutorial, but luckily thanks to user-friendly distro’s like Ubuntu, I don’t think I’ll have to. 

Tutorial for installing MythTV frontend-backend on Debian with Hauppauge 350 capture card

Requirements:

  • Hauppauge PVR350 capture card (most parts of this guide will work with other cards)
  • Working Debian Stable/Testing/Unstable installation (Ubuntu will work as well)
  • Patience
  • Some experience with kernels, modules, nasty compilation problems
  • More patience

Step 1 – Installing kernel 2.6.17
Kernel 2.6.17 has some of the drivers we need available in the kernel, as opposed to previous versions which were only available through the IVTV project (http://ivtvdriver.org)

Note that kernel 2.6.17 is currently only available in the Debian Unstable repository. But you can also get it from www.kernel.org
So, get your root-hat on by su root, sudo -s, logging in as root, or whatever you like.

Getting the kernel:

apt-get install linux-source-2.6.17

After downloading 40MB of kernel source code, comments and kernel jokes, we’re ready to extract these from the tarball it came in.

cd /usr/src
tar vfxj linux-source-2.6.17.tar.bz2
ln -s linux-source-2.6.17 linux

Before we can compile a kernel, we’ll need some stuff to make it all possible.

apt-get install build-essential kernel-package libncurses5-dev wget gcc-4.1

This should have gotten us all the tools we’ve need.

We’re now gonna steal your working kernel configuration, to save you a lot of headaches concerning the compilation of your first kernel.
The config file of your current kernel is located in /boot/config-“name-of-your-current-kernel”.
To make it easier, just type the following.

cp /boot/config-`uname -r` /usr/src/linux/.config

We’ve now copied your current kernel configuration to the 2.6.17 kernel source directory.

Let’s do some kernel configuration stuff, don’t worry, it’s a ton of fun.

cd /usr/src/linux
make menuconfig

You’ll now be presented with the glorious ncurses kernel configuration.

ncursues rule
Navigate to “Device drivers” -> “Multimedia Support” and make sure you select “Video For Linux” by pressing the “Y” key.

ncurses rule
Go to “Video Capture Adapters” and press the M key on the following lines:
BT848 Video For Linux
Conexant 2388x (bt878 successor) support

Go to “Encoders and Decoders” and press the M key on the following lines:
Conexant CX2584x audio/video decoders
Philips SAA7113/4/5 video decoders
Philips SAA7127/9 digital video encoders

Exit the kernel configuration menu and save the configuration when asked to do so.

Back at the prompt, you’ll have to type some stuff to start the kernel compilation.

make-kpkg kernel_image

This will take a while.

After compiling, you can install the kernel.

cd /usr/src
dpkg -i linux-image-2.6.17_i386.deb (the name might be slightly different)

After installing the kernel, it should have been put into your bootloader as the new default kernel to boot.
This is a good time to reboot your machine and prey it will work.

Assuming your machine is still working, you should now be in kernel 2.6.17. Congratulations! :)

Step 2. IVTV Installation

We’re now going to install IVTV.
This is a good time to make a user called mythtv where you can dump all this shit and run mythbackend from in the end.
But first we’re going to download and ‘install’ the firmware for your TV card.
The guys at IVTVdriver.org made this one very easy, so kudos to them.

cd /lib/firmware
wget http://dl.ivtvdriver.org/ivtv/firmware/firmware.tar.gz
tar zxvf firmware.tar.gz

adduser mythtv
cd /home/mythtv
mkdir mythsetup
cd mythsetup
wget http://dl.ivtvdriver.org/ivtv/archive/0.7.x/ivtv-0.7.0.tar.gz
tar zxvf ivtv-0.7.0.tar.gz
cd ivtv-0.7.0
make
make install

Because we’re running kernel 2.6.17, we need lirc (for the remote control) to be built from CVS.
To make life easy for you, you can grab a tarball and compile.

cd /home/mythtv/mythsetup
wget http://www.ariekanarie.nl/tutorials/lirc-cvs.tar.gz
tar zxvf lirc-cvs.tar.gz
cd lirc
./configure
make
make install

Open /etc/modules in your favourite editor and enter the following modulenames

ivtv
msp3400
saa7115
saa7127
tuner
lirc_i2c
ivtv_fb

Save and exit.Create a new file called /etc/modprobe.d/ivtv and enter the following in that file:

alias char-major-61 lirc_i2c
alias char-major-81 videodev
alias char-major-81-0 ivtv
alias char-major-81-1 bttv
options ivtv ivtv_debug=1
options tuner pal=B

Save the file and exit your favourite editor and type the following commands.

depmod -a
modprobe ivtv ivtv_fb lirc_i2c lirc_dev

This should fire up all the modules we need. Use the command ‘dmesg’ to check for any errors regarding the ivtv modules.

Step 3. MythTV installation

The current MythTV release is 0.19.1. For reasons beyond my comprehension, this version is not directly available from the MythTV website (just 0.19).

To get the latest and greatest MythTV, you need to get it from SVN. Don’t worry, the code is stable, it’s just not in a tarball.

How to get the good stuff. First we’ll try to satisfy a load of dependencies for compiling MythTV.

apt-get install subversion liblame-dev liblame0 libdvdnav-dev libdvdnav4 libiec61883-0 libiec61883-dev libavc1394-0 libavc1394-dev libasound2-dev libqt3-mt-dev en qt3-dev-tools libqt3-mt-mysql mysql-server
cd /home/mythtv/mythsetup

svn co http://svn.mythtv.org/svn/branches/release-0-19-fixes/mythtv

svn co http://svn.mythtv.org/svn/branches/release-0-19-fixes/mythplugins

svn co http://svn.mythtv.org/svn/branches/release-0-19-fixes/myththemes

This should have downloaded MythTV 0.19.1

Now on to compiling.

cd /home/mythtv/mythtv/mythsetup/mythtv

./configure

qmake mythtv.pro

make

make install

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>