Originally Published: Monday, 21 June 1999 Author: Michael J. Wise
Published to: featured_articles/Featured Articles Page: 1/1 - [Printable]

TV in Linux: BTTV and Video4Linux

This article addresses how to get TV in Linux working if you have a TV tuner card with the Brooktree BT848 and BT878 chipsets, also known as BTTV-based cards.

The following PCI video cards are all based upon the compatible BTTV chipsets:

  • Hauppauge cards - includes radio and stereo support if your card has it.
  • STB TV-PCI
  • Some Intel BT848 cards
  • Diamond DTV2000 cards
  • Videologic Captivator
  • Miro cards.
  • (The 3Com/USRobotics card/camera is also supported, but not addressed here)
Note: ATI TV cards are not compatible, even though they have (different) BT chipsets....

   Page 1 of 1  

This article addresses how to get TV in Linux working if you have a TV tuner card with the Brooktree BT848 and BT878 chipsets, also known as BTTV-based cards.

The following PCI video cards are all based upon the compatible BTTV chipsets:

  • Hauppauge cards - includes radio and stereo support if your card has it.
  • STB TV-PCI
  • Some Intel BT848 cards
  • Diamond DTV2000 cards
  • Videologic Captivator
  • Miro cards.
  • (The 3Com/USRobotics card/camera is also supported, but not addressed here)
Note: ATI TV cards are not compatible, even though they have (different) BT chipsets. ATI refuses to release documentation on their TV cards. If you have an ATI TV card, sorry, but all ATI TV cards are completely unsupported by Linux.

(Editor's Note: Experimental support for ATI cards has just recently been available. The ATI message at the bottom of Alan Cox's Video4Linux page has been replaced with a more positive message, as well as a link to development in progress.)

Installing It

Since I own a Hauppauge TV card, this is the one I'll address in this article. These TV cards need to be installed into a busmaster capable PCI-slot. Note that unless you have a large number of PCI slots (5+), any slot should be able to busmaster. Some BIOS configuration changes may be necessary to activate busmastering on a slot. While you have the board out, check to see if you have a BT848 chip or a BT878 chip on the card.

Configuring It

No on-card configuration is necessary. All configuration is completed in software.

A recompiled kernel will almost certainly be necessary, especially if you have newer cards based on the newer BT878 chipset. If you have a BT848 card, 2.0.x MAY be OK for you. However, to get any meaningful support for a BT878 card, kernel's 2.1.130/2.2.0 or higher work the best. Please refer to the Kernel-HOWTO for information regarding kernel downloading and compiling.

In make menuconfig/xconfig, BTTV support may be found under Character Devices --> Video For Linux --> BT848 Video For Linux (this includes BT878). If you bought a Hauppauge card with radio, this includes support for that.

In make config, say Y (or M) to Video for Linux and say Y (or M) to BT848 Video For Linux.

Compile and Reboot your kernel, and if you installed BT848 support directly into your kernel, it should be detected without any problems. If using modules, running /sbin/modprobe videodev.o and /sbin/modprobe bttv.o as root will usually do the trick. If not, read up on the kernel documentation for bttv.

Another alternative to this is to use the bttv driver packaged separately from the kernel. In fact, in my case, this was actually the best option. As far as I can tell, the tuner code is not distributed with the kernel version, so you will probably actually need the separate bttv package. You can download it at the site mentioned in the Related Links section.

Software

My software of choice for my TV card is XawTV. It is easy to compile, and includes a KDE radio application (if you have a Hauppauge card with radio). Read the documentation included with the package--it is fairly straightforward. Remember, in North America, NTSC is used while PAL is used in Europe (except for France which uses SECAM) A composite input is the small yellow round connector, while the TV connector is the larger longer connector. If you have a card with an S-Video connector, it will appear to be a keyboard/mouse connector, but with fewer pins for the connection.

Enjoy it!

Now you can use the web and watch TV on the same screen, at the same time, spending little money (I purchased my hauppauge while on sale for $50), and now it has great support in Linux thanks to the kernel developers.

Related Links





   Page 1 of 1