Linux Digital Video Broadcast (DVB) subsystem
=============================================

The main development site and CVS repository for these
drivers is http://linuxtv.org/.

The developer mailing list linux-dvb is also hosted there,
see http://linuxtv.org/lists.php. Please check
the archive http://linuxtv.org/pipermail/linux-dvb/
and the Wiki http://linuxtv.org/wiki/
before asking newbie questions on the list.

API documentation, utilities and test/example programs
are available as part of the old driver package for Linux 2.4
(linuxtv-dvb-1.0.x.tar.gz), or from CVS (module DVB).
We plan to split this into separate packages, but it's not
been done yet.

http://linuxtv.org/downloads/

What's inside this directory:

"cards.txt" 
contains a list of supported hardware.

"contributors.txt"
is the who-is-who of DVB development

"faq.txt"
contains frequently asked questions and their answers.

"get_dvb_firmware"
script to download and extract firmware for those devices
that require it.

"ttusb-dec.txt"
contains detailed informations about the
TT DEC2000/DEC3000 USB DVB hardware.

"bt8xx.txt" 
contains detailed installation instructions for the
various bt8xx based "budget" DVB cards
(Nebula, Pinnacle PCTV, Twinhan DST)

"README.dibusb"
contains detailed information about adapters
based on DiBcom reference design.

"udev.txt"
how to get DVB and udev up and running.

Good luck and have fun!
