Install MythTV using SuSE 10
MythTV is a linux-based Personal Video Recorder, like a
TiVo, except that MythTV is free, doesn't
require an expensive subscription, and is customizable. If you are
installing MythTV on SuSE you really need to read
this guide. It's the best SuSE
guide overall, but the author is capturing a digital signal in the UK, whereas I
capture a North American analog signal.
This guide is specific to SuSE 10:
- I capture a signal from analog cable. If you have digital cable or
satellite with an analog output, then the setup is the same except that you'll
want an IR blaster too, so you can control the cable/sat set top box via MythTV.
- I use a Hauppauge PVR-350 video capture card. If I knew then what I
know now, I would have bought a PVR-500. If I had a PVR-500, then I could record
two programs at the same time, or watch picture-in-picture.
- I use a wireless card to reach the internet.
- I use s-video TV-out from my nvidia video card to a TV for the display.
- The program data instructions are specific to North America.
- My system happens to dual boot Win XP Pro, but that's not relevant.
Hardware used
- AMD Sempron 2500+ with 512 MB RAM
- Asus A7N8X-X Motherboard
- 1 x 80 GB Maxtor (NTFS) and 1 x 200 GB Maxtor (ReiserFS)
- GeForce FX 5200 128 MB video card (NVidia chipset)
- The SuSE installation DVD includes a partially working driver.
- A better linux driver is available during SuSE online update or
from nvidia.
- Hauppauge WinTV PVR-350 video capture card
- Creative Audigy2 sound card
- The drivers are loaded by default during SuSE install.
- CD-RW
- BenQ DVD+/-RW
- Linksys WMP54GS Wireless-G PCI Adapter
MythTV uses about 2.5 GB to store one hour of TV.
Steps
Install SuSE from DVD:
- Disable the onboard ethernet and sound in the motherboard
BIOS. This saves trouble later.
- Boot from the SuSE 10 DVD.
- Follow the graphical install, adding the following packages:
- kde development (so that you can compile)
- kernel-source
- ndiswrapper
- mysql-server
- lzo
- Do not install lirc or ivtv and remove the packges if they have been
selected.
- Create a user "mythtv"
- Once the installer is finished and the system is ready to boot, a
vga monitor is required. The xwindows system cannot use tv-out
until the nvidia driver is installed.
Install wireless card driver:
- Install
ndiswrapper to install the wireless NIC driver. In a terminal as su enter:
- ndiswrapper -i filename.inf (where filename.inf
refers to the
driver, e.g./home/mythtv/Drivers/lsbcmnds.inf)
- ndiswrapper -l
- sudo depmod -a
- sudo modprobe ndiswrapper
- iwconfig
- ifconfig wlan0 up
- dhcpcd wlan0
- ndiswrapper -m
(writes to /etc/modprobe.d/ndiswrapper) - use Yast to
load ndiswrapper at boot - enter Yast, click on
system icon, go to icon for "/etc/sysconfig Editor", go to System /
Kernel / MODULES_LOADED_ON_BOOT and add ndiswrapper -
more info
- use Yast to start wlan0 at boot - enter Yast, click on
Network Devices, go to icon for Network Card, add a wireless card
(writes to /etc/sysconfig/network/ifcfg-wlan0)
- If you didn't disable your onboard ethernet, resolve
the multiple dhcp client interface DNS problem that occurs in
SuSE.
Install video driver:
- Do a Yast Online Update. Make sure to select the nvidia
driver.
- Using NVIDIA TV-out
- The nvidia driver cannot simultaneously output to both VGA and
TV unless Twinview is configured. See the
nvidia driver readme.txt appendix G.
- It is possible to use Yast to configure TV-out options - see
nvidia driver readme.txt appendix H - but it is not necessary to
change anything. I did try setting some of the nvidia card options
using Yast and my xwindows configuration broke; the keyboard stopped
working.
- More
installation details
Install the ivtv driver for the capture card:
- This was the trickiest part. SuSE 10.0 comes with
ivtv-0.3.7c. These drivers can be made to work, but I suffered a
PAL/NTSC auto-detection problem that results, for Canadians, in all the
channels being off by one. Compile the latest stable ivtv drivers
from source.
- The ivtv drivers for the Hauppauge WinTV PVR-350 need firmware,
(the firmware for ivtv cards isn't actually stored in ROM on the cards,
it needs to be loaded every time the driver loads). Firmware for
the 0.4.4 drivers goes in /usr/lib/hotplug/firmware
- Download the latest version (ivtv-0.4.4) and compile following these instructions:
tar zxfv ivtv-0.4.4.tar.gz
cd ivtv-*
su
make && make install
cd /lib/modules/`uname -r`/kernel/drivers/media/video/
mv msp3400.ko msp3400.ko.old
mv tveeprom.ko tveeprom.ko.old
mv tuner.ko tuner.ko.old
mv tda9887.ko tda9887.ko.old
cd /home/mythtv/ivtv-0.4.0/driver
cp *.ko /lib/modules/`uname -r`/kernel/drivers/media/video/
depmod -a
modprobe ivtv
dmesg | grep ivtv
- Make sure that the output shows that the card was properly initialized.
(If ivtv was installed by SuSE, it is necessary to remove the old ivtv modules as per these instructions.)
- If it's installed correctly, the tuner will be /dev/video0. Check to
see that it exists.
- Test the ivtv drivers with cat /dev/video0 > test.mpg which
will generate a MPEG2 file.
Install packages and rpms:
- Add DVD deCSS -
http://download.videolan.org/pub/libdvdcss/1.2.9/rpm/libdvdcss2-1.2.9-1.i386.rpm
- Add sources to Yast:
(See this good
article on getting SuSE to perform as it should.)
- http://packman.rsync.zmi.at/suse/10.0
- ftp://mirrors.kernel.org/opensuse/distribution/SL-10.0-OSS/inst-source-java
- ftp://mirrors.kernel.org/opensuse/distribution/SL-10.0-OSS/inst-source
- ftp://mirrors.kernel.org/suse/i386/10.0/SUSE-Linux10.0-GM-Extra
- ftp://ftp.gwdg.de/pub/linux/misc/suser-guru/rpm/10.0
- Add packages
- w32codec-all
- kaffeine-mozilla
- mplayer
- xvid
- search for xine and update the blue packages.
- LAME
- xmms
- search for sun to find java packages
- java-1_5_0-sun
- java-1_5_0-sun-alsa
- java-1_5_0-sun-jdbc
- java-1_5_0-sun-plugin
- more
stuff you need
- still
more stuff you need
- Add rpms
for mythtv
- create a directory in /home/mythtv
- in a terminal: wget -r -l1 --no-parent -A.rpm
http://folk.uio.no/oeysteio/apt/suse/10.0-olsen/RPMS.Olsen/
- add the local directory as a source in Yast
- add mythtv rpms using Yast
- There are at least two sources of SuSE/MythTV rpms:
- You may want to install aMSN,
a MSN Messenger clone, but not in Yast.
Download the RPM or compile it..
Time server:
- Get NTP up and running. This is important for correct start
and stop times for programming.
- Open Yast, click on network services, then NTP client
- Configure ntpd to start at boot
- Add time server addresses
- 0.north-america.pool.ntp.org
- 1.north-america.pool.ntp.org
- 2.north-america.pool.ntp.org
- There is more info on NTP at http://www.pool.ntp.org
Infrared Remote Control:
- This was tricky too. From the FAQ at lirc.org: "The lircd version in SuSE RPMs
is compiled without hardware support. It can be only used to receive
commands from another lircd over the network. This is probably not what
you want. Compile your own LIRC package from source and remember to
remove the LIRC RPM."
- Use Yast to add Øystein Olsen's lirc and lirc_i2c packages. Ses
his ivtv page
- Use Yast -> System -> Sysconfig editor to set the correct LIRCD_DEVICE and
LIRC_MODULE. They are /dev/lirc (most likely) and lirc_i2c.
- edit permissions: chmod a+rwx /dev/lirc
- There are two config files required.
- /etc/lircd.conf
- this file is saved both as /home/mythtv/.lircrc
and /home/mythtv/.mythtv/lircrc
- make sure in Yast that the lirc service is configured to start at boot.
- reboot
Programming Data:
- TV schedules for North America are available from Zap2It
DataDirect. You'll need to establish a user account. Go to http://labs.zap2it.com
- In the "Certificate Code" field, enter ZIYN-DQZO-SBUT
- Fill in the survey, then proceed to the lineup choices and
configure your account for your particular location and the channels
that you have. This configuration will be imported into MythTV when you
first run the setup program.
Configure Database:
- start mysql in Yast/System/System Services
- open terminal as su
- cd to the directory containing mc.sql (e.g. cd
/usr/share/mythtv/database or cd
/usr/share/doc/packages/mythtv/database)
- mysql -u root < mc.sql
- Set the mysql root password, replacing ROOT_PWD with your chosen
administrator password:
- # mysql -u root mysql
- mysql> UPDATE user SET Password=PASSWORD('ROOT_PWD')
WHERE
user='root';
- mysql> FLUSH PRIVILEGES;
- mysql> quit
Install MythTV:
- open terminal as su
- create a place to store video: md /var/video
- edit permissions: chmod a+rwx /var/video
- to configure backend: mythtv-setup
- fill database with program info: mythfilldatabase
- start backend server: in Yast/System/System Services, enable the mythbackend service
- start frontend manually: mythfrontend
- autostart frontend:
- In KDE, start Konqueror and open the folder .kde/Autostart in
your home directory
- Drag and drop "mythtvfrontend" and "mtd" from /usr/bin
into the Konqueror window and choose "Link Here"
- Now everytime you log into KDE mythfrontend and the myth
transcode daemon will autostart
- setup channel labels
MythWeb:
- make sure the the following packages are installed: apache2, bind, php4-mysql,
php-session, mysql-php
- Edit the file /etc/php.ini: change the line include_path = "/usr/share/php" to include_path = ".:/usr/share/php"
- You will need to make a change to the apache configuration. You can do
this in YasT:
- Go to Yast->network services->http server->Settings->default host->Edit->Directory
"/srv/www/htdocs"
- Change "AllowOveride" option to" All"
- Edit "Options" to "FollowSymLinks"
- Enable the env and rewrite modules
- The default location for mythweb is /svr/www/htdocs/mythweb
- Edit permissions. SuSE runs apache2 as wwwuser in group www
- chgrp -R www /srv/www/htdocs/mythweb/data
- chmod g+rw /srv/www/htdocs/mythweb/data
Other:
- While watching TV, I had a blue bar down the left side and across the
top. I got rid of it by using nvidia-settings to increase the overscan
of the TV display. (I use my graphics card TV-out but I did try the PVR-350 TV-out, which displayed correctly and needed no adjustment.)
- I added a keyboard shortcut to launch mythfrontend. Go to K Menu /
Control Centre / Regional & Accessibility / Keyboard Shortcuts and then the
command shortcuts tab.
- Make sure all your tags are correct before you attempt to import mp3s
into MythMusic. MythMusic is probably not a great way to manage a big
music collection but fine for playing a party play list.
Daily Use
Other Instructions
MythTV installation guides:
SuSE-specific installation guides:
Forums: