- 1 openSUSE 10.2
- 1.1 Introduction
- 1.2 Initial System Setup
- 1.3 YaST Sources, get the packages
- 1.4 IVTV, the analogue TV card
- 1.5 DVB, the digital TV card
- 1.6 Audio setup
- 1.7 LIRC, the remote control
- 1.8 LCDproc, the lcd or vfd display
- 1.9 MySQL, the database
- 1.10 NTP, the time protocol
- 1.11 TV-out, the graphics adapter
- 1.12 Wakeup, ACPI or NVRAM
- 2 Client connectivity
The openSUSE project is a community program sponsored by Novell. With the launch of the openSUSE project, openSUSE is now developed in an open model—public development builds, releases, and sources will be posted frequently here and you will have access to our Bugzilla database for defect reporting.
When you start writing about mythTV and/or openSUSE, please:
mythTV; lowercase myth; uppercase TV
openSUSE; lowercase open; uppercase SUSE
SUSE Linux, one of the oldest Linux distributions, was originally developed by a German company. SuSE is an acronym in the German language for “Software und System-Entwicklung” which translates as software and system development.
For rich, reliable and secure home computing like mythTV, there's no better choice than openSUSE10.2. It features an easy-to-install Linux operating system that includes most of the required mythTV components standard in the box. While the official mythTV documentation attempts to be as distribution-agnostic as possible, this document is geared specifically toward building a MythTV system on the openSUSE 10.2 Linux distribution. blog is a platform for openSUSE and SLED-releated news that had a mythTV corner. We decided in January 2007 to move our content to the mythTV wiki and create this wikipage.
openSUSE 10.2, in combination with the PacMan (thanks Herbert Graeber for building the rpm's) repository, provides you with an easy installation and all the latest packages of the mythtv rpms, ivtv, lirc, xmltv, php, mysql, mplayer, xine and many more that are necessary for a fully functional mythTV box.
While mythTV can take quite some time to install, the result will be a fast box that can do nearly anything to entertain. Furthermore, the system is incredibly reliable, and if you leave it on, you can expect runtimes that last for years with little to no maintenance to be done (aside from updates if desired). We've also experienced that the WAF (Wife Acceptance Factor) for mythTV is enormous. As soon as you start playing with it, you need a second box because it becomes the most mission critical system in your house. I hope this document will help you in your quest for your ultimate mythbox.
Initial System Setup
Installing mythTV all starts with good hardware. The first requirement is a machine capable of running openSUSE 10.2 x86 or x86-64 (Linux kernel 188.8.131.52) and that can be connected to the Internet. You will also need a decent audio card and a video card, a hard drive with as much storage space as you desire, as well as a TV tuner capable of performing hardware-level video encoding. Many people run mythTV without any problems on older hardware; however, if you are planning on doing anything with high definition video or complex transcoding jobs, you will need to have sufficient memory and processing power. Check this wiki and the mailinglist before you purchase any new hardware.
You might also find it useful to look at http://www.silentpcreview.com/ if you build a machine for your living room, in order to get advice on low power-consumption, low noise setups.
Get your hands on an openSUSE 10.2 DVD or CD set. It can be downloaded from the opensuse download site.
openSUSE 10.2 uses ext3 as the default filesystem (earlier suse versions use reiserfs). I suggest you use ext3 as your default file system. If you want to use something other than ext3 for your /video partition, I suggest XFS because it can handle large files very well.
YaST Sources, get the packages
Add the following External YaST Repository to your Installation Sources.
yast --> Software --> Installation Source --> Add
There, first select the protocol and, on the next page, enter the server and the directory as listed below.
add pacman as your installation source:
Protocol - HTTP Server name - packman.iu-bremen.de Directories - suse/10.2
General openSUSE 10.2 installation sources can be found at the openSUSE website.
To add pacman from the commandline and the openSUSE 10.2 online source:
rug service-add http://packman.iu-bremen.de/suse/10.2 --type=ZYPP "Packman" rug service-add http://download.opensuse.org/distribution/10.2/repo/non-oss/ --type=ZYPP "openSUSE-10.2-non-oss" rug service-add http://download.opensuse.org/distribution/10.2/repo/oss/ --type=ZYPP "openSUSE-10.2"
This is an Installation Source that contains the packages required in the next section. Use YaST to search for all of the packages listed below. Packages could also be installed from the commandline:
sudo /sbin/yast -i mythtv mythtv-frontend mythtv-backend mythtv-setup mysql ivtv ivtv-kmp-default mplayer libxine1
NOTE: Another good way to perform installations is with SMART. Some have found it to be much better at package management. For instructions on setting up SMART for openSUSE 10.2 (which comes with the pacman repositories by default), visit the SMART page of the SUSE wiki.
Required Manual downloads
Looks like you need to add libcdaudio and/or pvm manual if you want to use mythMUSIC. Here is a sample for 32 bit:
There are two filesets that need to be manually downloaded to get MythMusic and transcode to install successfully.
libcdaudio - MythMusic requires this and is available for download here: http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/libcdaudio
NOTE: If you aren't sure which to get, you probably should try the 686 version.
pvm3 - transcode requires this and is available for download here: ftp://rpmfind.net/linux/SuSE-Linux/i386/9.3/suse/i586/pvm-3.4.5-3.i586.rpm
Required Manual Installations
Download each of these packages to your desktop and install them with yast
Right-click on the rpm file --> Actions --> Install with Yast
Yast will automatically install them and then exit when it is finished. This should only take a minute or two for each one.
Install either one first. They are not dependent on one anther. Once these are installed, you should not have any exceptions during the mythtv package installation... "should not". :)
mythTV and plugin dependencies
The following packages are prerequisites to the mythtv packages. Verify that they are either installed or install them through yast --> software --> Software Management The bolded packages are availabe on the 10.2 installation media and can be selected during the OS installation, or can be installed now if your OS is already running. The non-bolded requirements need to be retrieved from another YaST installation source.
kernel-source, gcc, ivtv, lirc, mysql, php5, python, xine-ui, alsa, libdvdread, mjpegtools, audit-libs, libao, flac, libid3tag, xmms, dvb, xmltv, phpmyadmin, mplayer, xvid, fame, libfame, transcode, w32codec-all, lame
mythtv, mythtv-backend, mythtv-debuginfo, mythtv-frontend, mythtv-setup, mythtv-themes, libmyth, libmyth-devel
mytharchive, mythbrowser, mythcontrols, mythdvd, mythflix, mythgallery, mythgame, mythmusic, mythnews, mythphone, mythplugins, mythplugins-debuginfo, mythvideo, mythweather, mythweb
A good article for you to start in setting up your openSUSE system is Hacking openSUSE 10.2.
IVTV, the analogue TV card
mythTV supports a myriad of different video capture cards. Some of the more common cards utilize the IVTV driver, a kernel driver for Linux and a driver for X11 for hardware based on Conexant's CX23415/CX23416 codec chip (such as the Hauppauge PVR 150/250/350/500 models). The recommended analogue Standard Definition Cable (SDC) capture cards are the Hauppauge PVR.
A list of supported cards; http://www.mythtv.org/wiki/index.php/Video_capture_card#Capture_Card_Matrix
The primary resource for IVTV support is the IVTV wiki
openSUSE 10.2 ships with IVTV version 0.8.0-9 and everything is auto detected on the x86 and x86-64 bit version of the OS.
ivtv 0.8.0 (Driver Implementation for iCompression or Conexant Video Capture Cards)
supported tv cards http://en.opensuse.org/HCL/TV_Cards
To check what version is installed, issue the command:
rpm -qa | grep ivtv
Your output should look something like:
The IVTV configuration file on openSUSE 10.2 is /etc/modprobe.d/tv.
To troubleshoot IVTV, check the console output with dmesg in the following manner:
dmesg | grep ivtv
Some of the more common cards that use the ivtv driver are the Hauppauge x50/500 series.
NOTE: Before spending a lot of time trying to get your Hauppauge card to work, run this command first and your card should work. This worked perfectly on a PVR-500. This command is given again under the "Firmware" section later. Open a terminal window and type the following:
sudo rpm -Uhv http://jarpack.com/suse/noarch/ivtv-firmware-0.1-1.noarch.rpm sudo rmmod ivtv sudo modprobe ivtv
If your card is now recognized (check "dmesg | more" for errors), you can skip the following Hauppauge sections. If your card does not seem to be working, continue reading more specific information in the following sections regarding your model of card.
Hauppauge WinTV PVR-150
About the PVR-150 -> http://www.hauppauge.com/pages/products/data_pvr150.html
The PVT-150 is a reasonably priced consumer model tuner card. It comes in both a regular edition and an MCE edition--the two are identical cards, but differ only in the included software and the remote control (the original edition comes with a Hauppauge remote and blaster, while the MCE edition can come either without any remote at all or with a Windows Media Center edition remote).
General mythTV info about this card can be found at http://www.mythtv.org/wiki/index.php/Hauppauge_PVR-150
Hauppauge WinTV PVR-500
About the PVR-500 -> http://www.hauppauge.com/pages/products/data_pvr500mce.html.
The PVR-500 has two encoders on one card, and is recognized as 2 x 150 cards. openSUSE 10.2 auto detects the card.
General mythTV info about this card can be found at http://www.mythtv.org/wiki/index.php/Hauppauge_PVR-500
If you are experiencing bad quality pictures with this tuner, you may have what is referred to as a "type b" tuner. The tuners on a "type b" card are made by Samsung and have a reputation for producing a bad quality image. You really want the "type a" tuner. For more information about the differences or to find out which type of card you have, check the following website:
If you do have a "type b" card, Hauppauge may replace it. Call their support line for more information on obtaining a replacement.
The firmware for this card is software and acts as the driver. Make sure you follow the Firmware steps.
Sample Config for a PVR-500
ivtv settings are stored in /etc/modprobe.d/tv
Do not edit this file, this is all done by YaST
alias char-major-81 videodev options i2c-algo-bit bit_test=1 # YaST configured TV card # Uog3.chCB1CyIbw9:WinTV PVR 150 alias char-major-81-0 ivtv # YaST configured TV card # ZvjX.sZc4ePByvkF:WinTV PVR 150 alias char-major-81-1 ivtv alias char-major-81-2 off alias char-major-81-3 off
To check and see if ivtv started when you reboot your machine and/or kernel modules are loaded, issue this command:
dmesg | grep "video"
The output should look something like this with a PVR500:
ivtv: ==================== START INIT IVTV ==================== ivtv: version 0.8.0 (tagged release) loading ivtv: Linux version: 184.108.40.206-34-default SMP mod_unload gcc-4.1 ivtv: In case of problems please include the debug info between ivtv: the START INIT IVTV and END INIT IVTV lines, along with ivtv: any module options, when mailing the ivtv-users mailinglist. ivtv0: Autodetected Hauppauge WinTV PVR-150 card (cx23416 based) ivtv0: loaded v4l-cx2341x-enc.fw firmware (262144 bytes) ivtv0: This is the first unit of a PVR500 tuner 1-0043: chip found @ 0x86 (ivtv i2c driver #0) tuner 1-0060: chip found @ 0xc0 (ivtv i2c driver #0) tuner 1-0061: chip found @ 0xc2 (ivtv i2c driver #0) cx25840 1-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #0) wm8775 1-001b: chip found @ 0x36 (ivtv i2c driver #0) ivtv0: Encoder revision: 0x02060039 etc..
If it is different, run 'dmesg | grep ivtv' to look for error messages in initializing the card with the firmware.
Hauppauge WinTV PVR-250
About the PVR-250 -> http://www.hauppauge.com/pages/products/data_pvr250mce.html
The PVR-250 card was released before the PVR-150 card, and there is no functional or qualitative difference between the two cards. You are better off going for one of the other cards unless you find a great deal.
General mythTV info about this card can be found at http://www.mythtv.org/wiki/index.php/Hauppauge_PVR-250
Hauppauge WinTV PVR-350
About the PVR-350 -> http://www.hauppauge.com/pages/products/data_pvr350.html
The PVR-350 is functionally identical to the PVR-250, with the addition of video out jacks (i.e. it can function as a video card for directly exporting the streams it encodes). Output is either composite or S-Video.
General mythTV info about this card can be found at http://www.mythtv.org/wiki/index.php/Pvr350
Other ivtv-based cards include the AVerMedia M179, Yuan MPG160 and Yuan MPG600.
lspci can give you more info on your card and tuner:
lspci | grep -i itv
my output with my Hauppauge WinTV PVR-500 MCE
03:08.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01) 03:09.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
IVTV-based cards are hardware encoders, but the firmware does not exist in the card itself. Instead, you must point your hardware to an extracted version of the firmware. This is a manual task. You can find more info about using the correct firmware for each card here: http://ivtvdriver.org/index.php/Firmware#Firmware_filenames
It won't hurt you to install the firmware for all the cards; pieces you don't need will remain unused. On openSUSE 10.2, save the firmware in: /lib/firmware
JArpack has an architecture-independent RPM for the firmware that you can install with this command:
However, there is no guarantee this link will be valid in the future.
Some linux distributions require you to edit the modprobe.d config file by hand to get the card properly recognized by the kernel; in openSUSE 10.2, however, YaST does this all for you. For reference, the file is listed below. Do not edit it if you don't know what you're doing.
The manual process:
su - root download this driver file: http://dl.ivtvdriver.org/ivtv/firmware/firmware.tar.gz
Extract the driver file to /lib/firmware
cd /lib/firmware tar -xvf /path/to/this/file/firmware.tar.gz
Download this firmware file:
Issue these commands to extract the necessary files to the correct location:
/usr/share/doc/packages/ivtv/ivtvfwextract.pl ./pvr_220.127.116.1154_inf.zip mkdir -p /usr/lib/hotplug/firmware cp /lib/firmware/v4l-cx2341x-dec.fw /usr/lib/hotplug/firmware
Reload the ivtv module
rmmod ivtv modprobe ivtv
Check that the firmware and driver was loaded correctly
dmesg | grep ivtv
To see how the devices are named by your system, type:
ls /dev/vi* -l
Your output will be similar to: (pvr500)
lrwxrwxrwx 1 root root 6 Dec 29 06:27 /dev/video -> video0 crw-rw----+ 1 root video 81, 0 Dec 29 06:27 /dev/video0 crw-rw----+ 1 root video 81, 1 Dec 29 06:27 /dev/video1 crw-rw----+ 1 root video 81, 24 Dec 29 06:27 /dev/video24 crw-rw----+ 1 root video 81, 25 Dec 29 06:27 /dev/video25 crw-rw----+ 1 root video 81, 32 Dec 29 06:27 /dev/video32 crw-rw----+ 1 root video 81, 33 Dec 29 06:27 /dev/video33
The above is for a PVR-500. Here is what each device corresponds to in this case:
Tuner unit #1: - For your info
/dev/video0 – The encoding capture device (Read-only) /dev/video24 – The raw audio capture device (Read-only) /dev/video32 – The raw video capture device (Read-only) /dev/radio – The radio tuner device /dev/vbi0 – The "vertical blank interval" (Teletext) capture device
Tuner unit #2: - For your info
/dev/video1 – The encoding capture device (Read-only) /dev/video25 – The raw audio capture device (Read-only) /dev/video33 – The raw video capture device (Read-only) /dev/vbi1 – The "vertical blank interval" (Teletext) capture device
Your cards should now be ready to go.
DVB, the digital TV cardFor
devices supported by linux see the following pages on the linuxtv.org wiki.
openSUSE supported tv cards http://en.opensuse.org/HCL/TV_Cards
This card should be installed automatically under openSUSE 10.2. It should Just Work™, no installs or config needed.
This card need Steve Toth's one-year-in-the-making almost-finished V4L drivers installed to get it working. The method is slightly complicated for newbies but the rest of you should find it relatively easy, so long as you do things in the right order.
Start by downloading the contents of the main v4l-dvb repository on linuxtv.org (this link, if you can't find it). I forget exactly what you do then, but it involves making, unloading, loading, installing... something like that. Anyway, the card should work after a restart if it's done properly.
I did not have to do anything. Everything was auto detected by the install and audio just worked.
Configure digital sound: http://www.mythtv.org/wiki/index.php/Configuring_Digital_Sound_with_AC3_and_SPDIF
Do we need to say something about audio? Please do if you feel like it.
LIRC, the remote control
LIRC is a package that allows you to decode and send infra-red signals of many commonly used remote controls. openSUSE 10.2 ships with lirc 0.8.0-41
To use LIRC, you need a working /etc/lircd.conf file for your remote. You can get a lircd.conf for your remote on the http://lirc.org website or create your own file with irxevent and/or mode2, or search the web for a compatible one.
You also need to create a key mapping file in order to use your remote with any programs. With mythTV, this file is /home/user/.mythtv/lircrc and there should be a number of examples on line. Just remember that the key names in lircrc should correspond with the same button names in lircd.conf.
/etc/lircd.conf = Maps remote control scancodes to logic functions (like play, poweroff, pause etc.)
.lircrc = application specific mapping of the remote functions (play, poweroff etc) to the app specific functions for mythTV, mplayer and or Xine
Instead of creating an individual lircrc file for each application, you can create one master file and put symbolic links to this in the appropriate places. The text command for creating a lircrc file in your home .mythtv directory, symbolically linked to .lircrc in your home directory, follows:
ln -s ~/.mythtv/lircrc ~/.lircrc
Note that lircd does not get automatically loaded.
So, ensure that the LIRC demon is enabled from boot by using YaST's Services manager (just find lirc, select it, hit enable and save).
[ ATI remote wonder]
LCDproc, the lcd or vfd display
mythTV ( mythlcdserver ) can control an LCD (Liquid Crystal Display) or a VFD (Vacuum Fluorescent Display) panel through LCDproc API. LCDproc is not part of openSUSE 10.2. In jan 2007 they are not available on pacman so: You need to download the source and compile. Make sure you also compile the server component of LCDproc and read the INSTALL file. (more about the imon vfd here)
test your lcd device
echo Moosy rocks > /dev/lcd0
./configure --enable-drivers=all make cd shared make cd server make make install
check and configure the LCDd.conf file In the LCDd.conf there is a DriverPath pointing to server/drivers. (make this a complete path)
start the lcd server
configure mythfrontend to use the lcd [config] [screen]
MySQL, the database
create THE database
mythTV uses MySQL to store store it's settings, listings, recording schedules, and other information. So we have to make sure openSUSE starts MySQL when it boots, and we have to initialize the database with some basic information that mythTV can work with. The database is probably the most important component of mythTV because without it, absolutely none of mythTV can function.
opensuse 10.2 ships with mysql 5.0.26 (A True Multiuser, Multithreaded SQL Database Server)
As root, start mysql by typing
Watch for errors. Set up a root password by typing
mysqladmin -u root password <yourpasswordhere>
Once MySQL is setup, install the mythTV Database. This is done by running:
mysql -u root -p < /usr/share/doc/packages/mythtv/database/mc.sql
(and key-in the previously entered password) You should see no output - this is a good thing!
make the database multi user (more than 1 system, please do this)
mysql -u root -p mythconverg mysql> grant all on mythconverg.* to mythtv@"%" identified by "mythtv"; mysql> flush privileges; mysql> quit;
Once the card is initializing all tuners correctly and the database is ready, you can begin to get mythtv to recognize the card with the following command:
Select "New capture card" to setup a new card. The card type should be "MPEG-2 Encoder Card (PVR-x50 / PVR-500)." The video device should be set to /dev/video0, and the default input should be set to the tuner (will be listed as either Tuner 0 or Tuner 1).
If you are configuring a Hauppage PVR-500 card, you also need to configure the second tuner/encoder on the card. Select "New capture card" again and put /dev/video1 and Tuner 0 (or Tuner 1, depending on what it was for the other encoder...in other words, it must use the same Tuner!) in the applicable fields.
This is also where you setup which IP you want the database to run on. If you do not plan on having a separate front end machine, then no changes for this are necessary. If you do want remote frontends, then you need to change the "127.0.0.1" to the IP address of your linux box. You can find your local IP with "ifconfig". Assuming you only have one network card, look at "eth0" for your IP address.
After the cards are ready, start filling the database with programming information!
fill THE database
The most essential data in your database is the channel mapping: The mythconverg_channel table in the database links/maps the following information
channel number frequency name of the channel XMLTV number
Without this information the EPG (Electronic Program Guide) can not work.
The first thing you should do to get listings into the database is to set up your channels. In mythtv-setup, after you have set up your card, you can configure a video source based on your geographic location. The video source config page has a field for "grabber"; select your country there and mythTV will be ready to run a program called "mythfilldatabase" that will use XMLTV and tv_grab_XX, where XX is your country specific method.
Different countries and providers have different ways of configuring XMLTV. For example, http://graphics.tudelft.nl/~paul/grabber/ describes how to do it in the Netherlands. See the XMLTV wiki page for more info on how to set up tv_grab_XX for your particular country and service provider. The wiki is found at:
You can also get more info at http://www.mythtv.org/wiki/index.php/Mythfilldatabase
In North America, Zap2It labs provides an API for XMLTV that can be accessed via "Data Direct." To utilize this option, visit labs.zap2it.com and register for an account (it's free, but you have to register and re-activate your account every three months. Specific information for registering can be found here: http://mythtv.org/docs/mythtv-HOWTO-5.html#ss5.3). Once you've registered for Data Direct and chosen the listing based on your zipcode and service provider, you can then enter your login name and password back into the "video source" screen in mythtv-setup. This will configure mythfilldatabase to automatically log into zap2it and get your listings when needed.
Now that the video source is set up, you need to use the "Input Connections" screen to associate the video source (with its grabber) to the card. This screen will also let you either scan the tuner for channels or just get the channels directly from the listings source; we recommend the latter, because it will automatically fill the database not just with the channels but with their proper XMLTV-id numbers and callsigns. If you choose to have the tuner automatically scanned, you will then need to go to the "Channel Editor" to manually set that information for each channel.
Finally, you use the "storage directory" screen to set up where you want your recordings to be stored. The directory you choose must either be owned by the user who will be running mythtv or be set to be world-rwx (sudo chmod -R 777 [the name of the directory]).
Once all configurations are done, you can exit mythtv-setup and run "mythfilldatabase" from the command line to get the listings downloaded and imported. This may take a while the first time; be patient. For future listings updates, you can set mythfilldatabase to run as a cron job or you can select the "automatically run mythfilldatabase" option in the setup options of mythfrontend.
Most of the configuration information in this section is not necessarily openSUSE 10.2 specific, but is typical to most versions (and, in fact, most distributions). You can find more information here:
manage THE database
Use phpMyAdmin; php5 and phpMyAdmin are both standard part of openSUSE 10.2
openSUSE 10.2 ships with:
php5 5.2.0 (PHP5 Core Files)
phpMyAdmin 18.104.22.168 (Administration of MySQL over the web)
[b]Add commands for entering database, selecting and viewing tables, and simple deletion of channels. Will do once I'm out of Win XP... --Pepsi max2k 20:52, 8 January 2007 (UTC)[/b]
fix THE database
In the contrib directory there is a Perl script to run MYSQL utilities Repair and Optimize on each table in your MythTV database. It is recomended to run it daily from a cron job.
First make sure it is executable:
chmod 755 /usr/share/doc/packages/mythtv/contrib/optimize_mythdb.pl
run with your daily cron jobs
backup & restore THE database
$mysqldump -u mythtv -pmythtv mythconverg -c > mythtv_backup.sql
AutoMySQLBackup is a cool or let's say the ultimate backup script for your mythTV environment.
restore: (assuming that you've dropped the database)
$ mysql -u root mysql>create database mythconverg; mysql>exit $ mysql -u mythtv -pmythtv mythconverg < mythtv_backup.sql
NTP, the time protocol
NTP is a protocol designed to synchronize the clocks of computers over a network. So, to get the correct start and stop times for programming, it's important to setup NTP.
- Configure the NTP Client from YaST->Network Services->NTP Configuration
- Ignore the warning when selecting Automatically start NTP daemon->During Boot - there is no significant delay.
- Add servers per recommendation at http://www.pool.ntp.org.
Ensure NTP is enabled in System->System Services (Runlevel) and restart it.
There is more info on NTP at http://www.pool.ntp.org
TV-out, the graphics adapter
There is a section on this wiki dedicated to TV-out. http://www.mythtv.org/wiki/index.php/TV_Out.
The type of output your video card can do, and the type of inputs your display device can handle are primarily what dictates what you should use to connect them. From highest- to lowest-quality, the order of consideration is: HDMI, DVI (both of which are digital), VGA, Component, S-Video and finally Composite (all of the rest are analog). Suggest you to read this http://www.mythtv.org/wiki/index.php/Highly_Technical_Details
Composite TV out This provides an NTSC (or PAL) standard video output signal, which can be sent to a normal TV set using a normal RCA cable.
If your box has NTSC/PAL video out, you'll find an RCA video connector (usually yellow), or a 4-pin Mini-DIN S-Video connector on the back somewhere, which you can connect your monitor to, with the appropriate cable.
Component video This will require a VGA to component adapter and a video card that supports component out. Component video offers the best quality for an analog signal.
You can also use the Component-Out feature on some nVidia Cards. (I use the 6600GT and it works great) Read my how-to Here
VGA output This can be sent either to a CRT monitor, an LCD or plasma flat-panel, or a projector. If you have a satisfactorily large monitor, you might find this a better solution; most such monitors and projectors will accept the higher scan-rate signal that a composite output provides.
If you are going to use VGA then you will use an HD-15 cable up to the VGA connector which you will find on the back panel.
DVI digital connection For the best quality, especially to modern digital displays such as big-screen LCD, plasma or micro projection solutions, this is the preferred option. Note that DVI has both digital and analog or combined versions on the same connector. The analog version is compatible with VGA (using an adapter). The digital section is compatible with the latest HDMI connector found on some Hi-Def displays.
Be aware that some of the latest digital displays have hardware content protection built in.
HDMI This is a more modern version of DVI and is technically backwards compatible. It uses a smaller more manageable connector. You can get an DVI to HDMI adaptors if you need to connect your PC graphics card DVI connector to the latest HDMI displays. The latest HDMI connections will also be able to carry digital multi-channel audio down the same cable.
The ATI Proprietary Linux driver (fglrx) currently provides hardware acceleration for 3D graphics and video playback. It also includes support for dual displays and TV Output. The question is; does the driver support your hardware. The driver (fglrx) is also used for the linux 3d desktop (xgl, compiz, beryl)and it looks like ati (amd)has put more resources on the development. Still there are weird things (bugs?) with ati.
Before you install the ATI driver, the following packages have to be installed. Some are installed by default -- check to make sure they're all there by typing these names into the Software Management's search box. If they are not there, install them and all of their dependencies before you continue:
gcc, make, kernel-source, kernel-syms, compat-expat1, expat
With the release 8.33.6, release dec. 2006 there is support for openSUSE 10.2 and the new released version of X.org 7.2
current version - jan 2007 - ati driver 8.33.6 - release notes
rpm -qa | grep fglrx
-- sample of howto create a rpm for 32 platform with ati driver 8.32
sh ./ati-driver-installer-8.32.5-x86.x86_64.run --buildpkg SuSE/SUSE102-IA32
TV-OUT ISSUES: still some issues with the 8.33.6 driver and myth 0.20 - more info onby clicking here
A cheap nvidia card is enough for mythTV. Get one without a fan, cheaper and does not make noise. (The 6200LE PCI Express is about 25 euro) You're best off installing the proprietary Nvidia drivers on openSUSE 10.2. This is easiest when you use the default 10.2 install and don't upgrade the kernel. If so, follow the below to get the drivers installed:
Add the nvidia repo to SMART or YAST: http://download.nvidia.com/opensuse/10.2
mythtv:~ # rug service-add http://download.nvidia.com/opensuse/10.2/ --type=ZYPP "nvidia" Adding zypp service... 0% The following key must be trusted in order to proceed: Name: NVIDIA Corporation <email@example.com> ID: F5113243C66B6EAE Fingerprint: 9B763D49D8A5C892FC178BACF5113243C66B6EAE Would you like to trust this key? (y/N) y Adding zypp service... 100% Successfully added service 'http://download.nvidia.com/opensuse/10.2/' mythtv:~ #
Install the x11-video-nvidia and nvidia-gfx-kmp-default packages.
Change to a command shell by hitting Ctrl-F1.
Type "init 3" and then "sax2 -r -m 0=nvidia". IF you don't see an Nvidia logo at this point, something's probably gone wrong.
Unless you have reason to believe the sax2 info will be wrong, and/or know what to change it to, just hit save. Type "init 5" to get back to a GUI.
And if you have any problems with refresh rates or DPI issues, check this suseforums thread.
Hauppauge WinTV PVR-350
no openSUSE specific info available on the 350's TV-OUT, I don't have one. Please add your info here.
Here is some good info about the 350 tv-out http://www.mythtv.org/wiki/index.php/XV_on_PVR-350 and http://www.mythtv.org/wiki/index.php/Pvr350
Please, refer to the man page http://intellinuxgraphics.org/man.html.
no openSUSE specific info available, I don't have one. Please add your info here.
Wakeup, ACPI or NVRAM
Switching computers that do not need to run 24 by 7 on and off as required can cut your power consumption. There are different methods of programming a wakeup time under Linux without needing to set the time manually in the computer’s BIOS.
NVRAM wakeup uses the BIOS settings stored in non-volatile RAM (NVRAM). The nvram kernel module allows Linux to access a maximum of 128 bytes of non-volatile memory. To get this to work, you need to compile the nvram kernel module. Basically nvram is directly poking into your bios.
ACPI has a standard interface to change the value in the bios.
The kernel transfers the time directly to your computer’s RTC (real time clock), but not the date. This leads to the computer waking up at the same time every day, and not just on the given date. The problem is that there is a more-orless standardized method of transferring the time to the RTC, but no such standard for the wakeup date. Consequently, the acpi_system_write_alarm functions in drivers/acpi/system.c for the kernel 2.4, or drivers/acpi/sleep/proc.c for the kernel 2.6, only support the alarm time fields.
This is still a pain
Browser based frontend
Mythweb is the best option to access your mythTV machine over HTTP You can also think of a VNC session to your central box.
VNC ISSUES: In the initial release of 10.2 there is a bug in combination with gdm and the standard vnc. If vnc does not work with gdm (gnome) edit the following file:
look for the [xdmcp] section and change it to enable=true, and then restart gdm, things will start working
MythWeb allows you to view your current TV schedule on your Myth box remotely and allow you to schedule or modify recording schedules. With this being so easy to setup, you may as well do it. It is also something cool to show your friends.
There are just a few steps to get it working.
1. Install mythweb. You probably already have this installed it if you have been following this document. The following should show one package
rpm -qa | grep mythweb
2. Install apache2 (http server) This is part of SuSE 10.2 default installation and may already be installed. Check for it with this
rpm -qa | grep apache2
Unless you upgraded, you'll probably see this and two other packages:
3. Add "rewrite" to the APACHE_MODULES
yast --> system --> /etc/sysconfig --> network --> www --> Apache2 --> APACHE_MODULES
Add the word "rewrite in the value for the "APACHE_MODULES". You should put it in alphabetical order to maintain consistency with what is already there. Also, verify that "env" is in the list. It should be by default. 4. Execute the following two commands to set permissions on the directories for internet access
chgrp -R www /srv/www/htdocs/mythweb/data chmod g+rw /srv/www/htdocs/mythweb/data
5. Setup Apache to start at boot time in yast. This will also activate it now
yast --> System --> System Services --> apache2 --> enable --> Finish --> yes
6. Open the port in the firewall for other computers to access the webpage.
yast --> Security and Users --> Firewall --> Allowed Services --> under Service to Allow, choose "HTTP Server" --> Add --> Next --> Accept --> Quit
7. Verify it is working by opening a web browser on your local or remote desktop and put in the following URL
If you plan to open your mythweb to the internet, you should seriously consider securing it. That and more information can be found here
Linux based frontend
The frontend is basically the graphical interface that shows you the menus and displays the videos on your screen, so obviously it needs X to be on the same machine. Since it is the interface, this is also likely the best place to install any IR recievers or transcievers you have so that you can use a remote control with mythTV. You can install mythfrontend on the same machine as your mythbackend or on one or more other machines. The frontend talks over IP with the backend but for some plugins it needs access to the central mythtv servers, or at least it's filesystem. To have access to your central filesystem you can configure a NFS server for your data directory. On the Linux client; install the NFS client. Have YaST do the rest for you. (do this with the GUI version of YaST, NFS server config is only available in the X GUI of YaST)
MythVideo allows for cataloging and playback of a variety of video file formats. It can perform automatic meta data look ups on IMDB as well as retrieve poster artwork.
The default mplayer that we got from pacman did not do subtitles. Error message about subfonts.ttf or something. mplayer can search in 2 directories for it's fonts for subtitles:
1.) download the recommended subtitle fonts from
Prerendered fonts: http://www1.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2 Download MD5 sum: 1ecd31d17b51f16332b1fcc7da36b312 Download size: 234 KB Additional fonts: http://www1.mplayerhq.hu/MPlayer/releases/fonts/
2.) There are 4 diffrent size in the tar file. Select your preferred font size and save the files in: ~/.player/.font
play non iso dvd rips from disk
When I download some movies, they are not always in ISO format. If they are in VIDEO_TS VOB format I use the following trick to get them in the mythvideo (imdb) display. For this example; let's assume we downloaded a movie called Moosy the Movie part 1.
1.) create a file in your video/movies directory
2.) now create a new extension in mythfrontend
config, config, media, movies, filetypes
create a new extension
Extension .link Command: xine -pfhq `cat %s` Standard: OFF Ignore: OFF
xine and remote
It looks like the xine that I installed from pacman was not compiled with lirc support so my remote is not working in xine.
If you are using xine and have issues with your remote, check
ldd /usr/bin/xine|grep lirc
Solution: compile xine from source
I'm no gamer so have not tried this. If you do...please add your comment here.
There isn't much to say about mythMusic. Simply put your music in a directory and play with the frontend. I don't like it and don't use it
Windows based frontend
mythTV player from Mikkelrocks, as far as something on Windows can rock. It sure is a cool puppy you should give a try.
There is a mythfrontend available for Windows. It sucks big time and I don't wanna talk about it.
Good idea to turn your samba server on to have access to your mythTV data: Here is a sample samba config. Read/Write for the world:
[global] netbios name = mythtv workgroup = workgroup server string = Our home server # use client driver = yes security = share wins support = no # [myth_data] path = /data browseable = yes writable = yes public = yes
XboX based frontend
Still don't have a xbox, here you can find more info