Instructions for building the standalone driver: ------------------------------------------------ You must have the kernel sources for the kernel you are actually using installed, and symlinked to /lib/modules/$(KERNEL_VERSION)/build. This should be the default in proper installations with installed kernel source package. If you are in doubt please get a fresh and clean kernel source tarball from http://www.kernel.org/, unpack, configure, install and boot this one before building the DVB driver. 80% of the bug reports on the linux-dvb mailing list have been related to not properly installed kernels in the past. For cards with MPEG decoder onboard make sure that CONFIG_VIDEO_DEV is enabled in the config of your running kernel. If you get unresolved symbols named video_XXXX then you missed this option. For some cards you need Input and Event Device Support enabled to get the IR receiver on the card running. Be sure to enable CONFIG_INPUT and CONFIG_INPUT_EVDEV if you get unresolved symbols named input_XXX. Now Type 'make' to build the driver. The compiled modules will be located in directory ./build-2.4/ or ./build-2.6, depening on the kernel version you are running. There you will also find scripts to load and unload the modules. For some cards you need to download additional firmware binaries. You get notified in the build process or when loading the modules, please follow the instructions there if you own one of the cards that need a firmware to run. Now execute the ./MAKEDEV-DVB.sh script to create the DVB API device nodes. When you reached this point successfully you probably want to start some test applications, download the linuxtv-dvb-apps-1.1.tar.gz package, unpack it and compile it. This package contains some tools to test and debug the driver: apps/szap/ contains three simple applications for zapping with DVB-S, DVB-C or DVB-T cards (szap/czap/tzap); read the comments in apps/szap/szap.c for instructions. Note 1: tuning succeeded if you see the FE_HAS_LOCK flag and "status 1f"; a good signal has a low bit error rate (ber) and zero uncorrectable packets (unc). Note 2: you must keep ?zap running, or the frontend will go to sleep (unless you load dvb-core.o with dvb_shutdown_timeout=0) If your card has a hardware MPEG decoder you can watch TV with xawtv (together with e.g. szap for DVB tuning); Note: xawtv cannot control the DVB tuner, you must use ?zap For cards without hardware MPEG decoder you need a software MPEG decoder, e.g. mplayer or xine (you need *very* recent versions which understand MPEG2 transport streams; xine v0.9.21 and mplayer dev-CVS-030723-16:39-3.3.1 seem to work); Note: You must run ?zap with the -r flag to enable stream output to the dvr device, and keep it running while watching tv. Examples: mplayer - < /dev/dvb/adapter0/dvr0 xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0 Note: Newest mplayer and xine versions are reported to have builtin DVB support (see FAQ for more info). For 'real' everyday use you probably don't want to use these test applications but install a program like VDR or MythTV. Read the FAQ for some links. -------------------------------------------------------------------------------- The build system has been tested down to 2.4.20, if you run an older kernel either update your kernel or just try - maybe you need to add some tweaks in the dvb_compat.[hc] files. Please report your modifications on the linux-dvb mailing list. If you want to build a not-standalone driver but want to patch your 2.6 kernel source tree with this driver please read README-2.6. More documentation is located in ./linux/Documentation/dvb/. good luck, Holger