home   articles   archive   forum   masthead  
Published at 25.5.2000
Author: Ronny Ziegler
Translator: Andy Ziegler
Languages: de nl
Printer printer-version
Support Us!

TV with Linux

TV with Linux If you own a TV card, you will be able to enjoy it with Linux.
As always, the correct configuration of hardware and software is important.

Linux vs. M$Win

TV cards have become more popular. Instead adding Internet access to a TV, like many TV manufactures do, it makes more sense to extend the PC with a TV card.
For a longer time, a sampling of these cards has been supported by Linux, although only M$Win drivers have been provided with the product.
The bttv drivers of the Video4Linux project are Alan Cox`s area of expertise.
A lot of things have changed in the last few months with the drivers becoming more stable.
It seems that the programmers who produce the M$Win drivers for the manufacturers are not able to build a stable version of their own software; if the TV software crashed, M$Win would hang up regularly.
Linux TV software would be called stable if you compared it with the M$Win version. Of course the TV software also crashes, but very seldom a reboot is necessary; in general a restart of the TV software is sufficient.
It could happen that the use of the TV card stops the X server and a system reboot would be necessary (if you had a LAN, you could reboot your PC from an other computer via telnet and you do not need to touch the reset button. Try this with M$Win :)). Every new Kernel version continuously increases the stability.

The hardware

The list of supported cards increases regularly. The best support exists for all cards with a Bt848/Bt848a/Bt849/Bt878/Bt879 chipset and with a normal composite/S-VHS input.
In Germany, the popular card "Hauppauge WinTV PCI" is one of these.

A short cut of the list of supported cards:

  • Hauppauge Win/TV pci
  • MATRIX Vision
  • Miro/Pinnacle PCTV
  • AverMedia
  • ADS Channel Surfer
  • Maxi TV Video PCI 2 card
A bigger list can be found at http://www.multimedia4linux.de/videohardware.html

a new kernel has to be done

If you wanted to use your TV card with Linux you would need the correct support in the kernel.
It is not likely that your Linux distribution will have a pre-compiled TV card driver in the standard kernel.
Even if you find it scary to compile your kernel, there is no other way.

The drivers should be compiled as a module because they are quite big.
For testing you could directly compile the TV drivers into the kernel and look at the messages while booting so you can see if the card was detected correctly.
If it worked, you should recompile the kernel with modular drivers due to their large size.

The required settings in the part "Video for Linux" are:

  • Modular support of "Video For Linux"
    Vide4Linux as a module
  • drivers for a card with Bt848 chipset (e.g. Hauppauge card)
    Bt848 as a module
  • drivers for Teletext (e.g. Hauppauge card)
    Teletext as a module
After compiling and installing the kernel, you need a few entries in the file /etc/conf.modules to load the modules automatically:

File /etc/conf.modules
  alias char-major-81 bttv 
  pre-install bttv /sbin/insmod videodev
  pre-install bttv /sbin/insmod i2c
  pre-install bttv /sbin/insmod tuner

After adding these files into /etc/conf.modules, a few programs sometimes have problems loading the modules automatically. If the window of you TV software stayed black (not blue, then you have selected the wrong drivers for you kernel!) it is necessary to load the drivers again. The fastest way would be if you used this small script:

Load video modules
   /sbin/rmmod i2c
   /sbin/rmmod tuner
   /sbin/rmmod bttv
   /sbin/rmmod videodev
   /sbin/insmod i2c
   /sbin/insmod tuner
   /sbin/insmod videodev
   /sbin/insmod bttv

Now the TV environment is set and we focus on the software to use the card


With kWinTV you can enjoy the TV in a comfortable way.

Screenshot of kWinTV

The KDE program offers a comfortable configuration, an automatic channel search and an easy-to-use channel browser.
You can take screenshots of the actual TV picture or save a videoclip in the AVI format, but a fast and big hard disk is recommended.
The algorithm for the AVI record is not very efficient like other text-based tools (e.g. bttv-grab) are. On slow machines, many frames get lost and the video often shows stripes.
The ability of kWinTV to record AVI is satisfactory only because M$Win programs have a worse frame rate in general.

A few X servers have problems displaying the window correctly. Sometimes remaining parts of the TV picture stay on the window of other programs and won`t disappear (Screenshot). If you had this trouble, you should start your X server with the additional option "-bs".

KWinTV has had problems with Gnome and its "Save Yourself" command.

You can get KwinTV at: http://www.mathematik.uni-kl.de/%7Ewenk/kwintv/index.html


Gnomovision is the official TV program for Gnome, but it is in a deep state of development; newer versions can only be received via CVS. The program requires an X server with the XVideo extension, i.e. XFree86 version 4.0 and higher or a new 3.9 version. This means that the program will not be useful for the majority of Linux users, but this might change in the near future.

Homepage: http://www-unix.ecs.umass.edu/~mcrichto/gvision.html
FTP: ftp://ftp.jimpick.com/pub/gnome/snap/gnomovision/


Screenshot of Gnometv in the panel GnomeTV can be recommended for use because it has a higher level of development than Gnomovision. It offers a program to view TV and a program to read Teletext. At the same time, it places an applet in the Gnome-panel which can be used to zap through the channels.
It does not offer any screenshot or AVI-record option. But if you owned an infrared device and have the proper driver support in the kernel (LIRC), you would be able to use a remote control. The commands that have to be executed when a RC button is pressed can be easily set in the preferences.

Homepage: http://gnometv.sourceforge.net


The graphical surface of xawtv is as Spartan as possible; it concentrates on its inner strengthen.
It works with KDE and Gnome without any problems and offers features similar to kWinTV.
Pictures can be saved as ppm or jpeg, sequences can be saved as an AVI file.
Of course, LIRC (remote control) is supported.

Quite unique is a daemon to access Teletext via http. In addition, the program owns the program set-tv that sets the tuner of the TV card via text command to another channel (very useful in combination with a webcam).

Homepage: http://www.strusel007.de/linux/xawtv/index.html


Also, Teletext is supported with Linux if the correct options are set in the Kernel.

Screenshot of AleVT

Possibly the best Teletext program on Linux is AleTV which provides an easy-to-use interface.
You can click on links inside text and AleTV automatically recognizes that if another Teletext site is meant. It is that simple to switch between sites.
In addition all submitted sites are cached and you can jump through the sites as fast as you can click.

The lure of AleTV has a few traps, in particular for beginners. Due to errors in the old bttv drivers, the program would have to be called with the option -oldbttv if you used a 2.2.x Kernel.
Also, it can be annoying that AleTV automatically starts with its own page 900. You get the normal starting page 100 with the option -parent 100. So a call could look like:

  >> alevt -oldbttv -parent 100
AleTV does not set the channel of the tuner, so it is necessary to use a TV program changing channels, e.g. kWinTV.

The homepage of AleTV can be found at http://user.exit.de/froese/

Other pages about TV:
http://www.multimedia4linux.de/ A German site about Multimedia and Linux (use babelfish). Here you get information about TV, Teletext, Mpeg-video, DVD and Audio.
http://roadrunner.swansea.uk.linux.org/v4l.shtml This page offers good information about bttv drivers and a large collection of programs using Video4Linux.

Talkback Area

Enter Own Comment