Required data not found, document opened from wrong folder or Javascript turned off. Links may be broken and menus will not work, use the site map in (Internet) or (Local) to navigate.

 Browsing the Documentation - Where are you?

Here are some README Files that you might find helpful...

These files are included in the source and binary packages.

More ZapDvb Documentation (separate Package since Version 0.50)

As the amount of documentation increases, the detailed descriptions will be distributed as a separate package.

 What are Channel Lists? top

Getting tuned to the right DVB data is more complex than with traditional TV broadcasting. You need to know more than just the frequency and polarisation of the satellite transponder (or the terrestrial transmitter): on each frequency data from multiple programs (TV stations) is multiplexed. The receiver has to filter out some of this data depending on so called PIDs (program ids). And you guess right: finding these PIDs is the important job.

Luckily the satellite operators don't want to make a secret out of the PIDs. They broadcast a special data stream that contains tables with these PIDs and other information over a so called service transponder. All you need for your favorate satellite is the description of this service. For ASTRA 19.2E it looks like this:

# ASTRA 19.2E SDT info service transponder

# frequency polarisation symbol-rate  error-correction
S 12551500  V            22000000     5/6

The programs described in this text are capable of tuning to this transponder and to start a so called channel scan, which will take 10 .. 30 minutes. After this time the programs will write the data to a file. This procedure will find all PIDs that the operator wants you to find. Technically it is possible to do a more detailed scan, but this takes much longer. You will have to edit the list, which may contain hundreds of entries, manually. Many of these channels do not really send data streams 24h a day (most time they might show a slide at a very low data rate).

The situation for DVB-C (via cable) and DVB-T (terrestrial) is slightly better. The lower bandwidth of these platforms reduces the number of available channels. But the procedure is the same as for DVB-S. The format of the channels list differs - all three platforms have to take a different approach for error correction causing need for different parameters.

ZapDvb comes only with a minimum (German) channel list for ASTRA 19.2E. Many users will have to download a channel list (see www.linuxtv.org/wiki) or have to install one from their Linux distro or have to make their own (see below)...

 Using the Setup Program for Scanning top

Before you can start scanning you will have to install some low level scanner tools and some transponder descriptions:

Eventually these packets contain already some example files that can make you happy. If not you can use the ZapDvb setup program to run the scan. This might look like:

su                  # you will need write access to zapdvb data

cd /usr/local/share/zapdvb
./setup --scan      # start the program

1) dvb-c
2) dvb-s
3) dvb-t
Please enter a number to select a hardware type: 2

1) Astra-19.2E        5) OptusC1-156E      9) Telstar12-15.0W
2) Astra-28.2E        6) PAS-43.0W        10) Thor-1.0W
3) Hispasat-30.0W     7) Sirius-5.0E      11) Turksat-42.0E
4) Hotbird-13.0E      8) Telecom2-8.0W
Please enter a number to select a configuration: 1

Using scanner '/usr/bin/scan' to scan 'Astra-19.2E'
Scanner options, type ? for help (default '-x0 -t3'):

Destination file (default '/usr/local/share/zapdvb/config/dvb-s_Astra-19.2E.conf'):
Running: /usr/bin/scan -x0 -t3 Astra-19.2E
scanning Astra-19.2E
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
initial transponder 12551500 V 22000000 5
>>> tune to: 12551:v:0:22000
Network Name 'ASTRA'
0x0000 0x2f9e: pmt_pid 0x006e BYSKY -- BYSKY TEST (running)
...
0x0000 0x2fa3: pmt_pid 0x0032 ASTRA -- EPG test (running)
>>> tune to: 12640:v:0:22000
0x0000 0x22c5: pmt_pid 0x0000 CSAT -- C CINEMA 16/9 (???, scrambled)
...
0x0000 0x2327: pmt_pid 0x0000 CSAT -- DATASYSTEM 114 (???)
Network Name 'ASTRA'
>>> tune to: 11685:v:0:22000
...
>>> tune to: 12699:v:0:22000
WARNING: >>> tuning failed!!!
>>> tune to: 12699:v:0:22000 (tuning failed)
WARNING: >>> tuning failed!!!
dumping lists (1163 services)
Done.
Results in: /usr/local/share/zapdvb/config/dvb-s_Astra-19.2E.conf (406 entries)

ZapDvb can read the output file directly. You can verify this easily (only for DVB-S and a UNIVERSAL LNB, see tips):

# list the channels ...
./zapdvb -l -c config/dvb-s_Astra-19.2E.conf
zapdvb: Info: No [zapdvb] section, please upgrade configuration file
 1      [2f58]
 2      [0f8f]
 ...
 404     Radio Bremen TV
 406     ASTRA HD

# now tune to channel 404, stop with Cntl-C ...
./zapdvb -n404 -c config/dvb-s_Astra-19.2E.conf
config file : config/dvb-s_Astra-19.2E.conf
process info: /home/jpf/.zapdvb_run
No [zapdvb] section, please upgrade configuration file
DVB-S LNB settings: type='UNIVERSAL' band=high
channel='Radio Bremen TV' sat=0-hori frequ=12265MHz srate=27500 video=1201 audio=1202
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
status 03 | signal b158 | snr 95a0 | ber 00009029 | unc 00000000
status 1f | signal b400 | snr c90c | ber 00000031 | unc 00000000 | FE_HAS_LOCK
status 1f | signal b37b | snr c92d | ber 00000000 | unc 00000000 | FE_HAS_LOCK

# If MPlayer is installed try to watch "arte" ...
./zapdvb -c config/dvb-s_Astra-19.2E.conf arte

Usually you will not directly pass a DVB-S channels file to ZapDvb as more information is needed (the LNB type or whether the source is DVB-C or DVB-T). The required information should be added to the public file zapdvb.conf. This file should also contain links to external channels lists like the one generated before. See the documentation in README_CONFIG for details.

 Create Channel Lists by Hand top

ZapDvb usually reads it's configuration from a public file which should be located in the installation folder. The default zapdvb.conf file comes with only a few preconfigured sat, terrestrial and cable channel lists. If you want more you need to put your hands on. ZapDvb does not and will not include a high-level proprietary scan tool. It seems wiser to use the dvbscan tool (for SuSE) oder scan (for Debian) instead.

On a SuSE system: you should install the dvb-1.1 (or later) RPM. You will find some example channel-files under /usr/share/doc/packages/dvb. ZapDvb can use them directly. If you have MPlayer and mpg123 installed (which are the ZapDvb default players) you can type:

 # same sample files from SuSE ...
   cd /usr/share/doc/packages/dvb
   zapdvb -c channels.conf-dvbs-astra -l   # list TV channels
   zapdvb -c channels.conf-dvbs-astra -n12 # to play channel #12
 
 # or use the scanner configuration files ...
   cd /mnt/suse/usr/share/dvb
   dvbscan -x0 -t3 dvb-s/Astra-19.2E > /tmp/tv-dvb-s.conf

On a Debian based system: you should run "apt-get install dvb-utils" to install the scan tool and then read the text in /usr/share/doc/dvb-utils/README.scan. ZapDvb can use the files generated by scan or dvbscan directly. If you have MPlayer and mpg123 installed (which are the ZapDvb default players) you can type:

 # an Example for Debian ...
   cd /usr/share/doc/dvb-utils
   scan -x0 -t1 examples/scan/dvb-s/Astra-19.2E > /tmp/tv-dvb-s.conf
   zapdvb -c /tmp/tv-dvb-s.conf -l         # list tv channels
   zapdvb -c /tmp/tv-dvb-s.conf -n12       # to play channel #12

For DVB-T and DVB-C lists you must give ZapDvb some hints and edit the output file. The bare minimum is:

   [zapdvb]
   source0=list terrest
   [list]
   ... channel info ...

for DVB-T and

   [zapdvb]
   source0=list cable
   [list]
   ... channel info ...

for DVB-C data. You did not need to add prefix info for DVB-S because that is the default. It is technically possible to include channel lists into the zapdvb.conf file, but this is no longer recommended (because it is difficult to maintain).

The character set used by the scan tools appears to be ISO8859-1. But many Linux installations will take UTF-8 as the default character set, so that the recode program should be used to convert the data (in KDE the Kate editor can be used for this instead).

After reducing the channel list(s) to your personal needs you should move your personalised data list(s) into the folder /usr/local/share/zapdvb/config and edit your zapdvb.conf file to refer to these lists (see the documentation in README_CONFIG). ZapDvb and its GUI support up to four channel lists and up to four DVB cards.

 Channel File Formats top

The format used by ZapDvb is mostly compatible with szap/czap/tzap. As a first consequence it can directly use the output of the scan programs as it was described above. Here some examples:

# The DVB-S format is (min. is 7 Fields) ...
ZDF:11954:h:0:27500:110:120:1:28006

# The DVB-T format is (no line break!)...
BBC World:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_16:
          TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:49:50:16387

# The DVB-C format is ...
Das Erste:410000000:INVERSION_OFF:6900000:FEC_NONE:QAM_64:101:102

But ZapDvb has the same problem as kaffeine (which uses a proprietary format): the original szap format is not extensible and does not include PIDs for teletext or alternate audio streams. Future versions of ZapDvb will use special video PID values to flag extensions:

# ZapDvb extensions ...

ZDF          :11954:h:0:27500:110:120:1:28006    # Video
ZDF Teletext :11954:h:0:27500: -2:998            # Teletext
ZDF AC3 Audio:11954:h:0:27500: -3:999            # AC3 audio

NDR Kultur   :12110:h:0:27500: -1:701:1:28201    # Radio channel
                                                 # (vpids of 0 are accepted too)

 Some Tips and Notes top

Scanning takes a while and does not work on all dvb-cards. If you have any problems: try to get a list of channels using KDE's kaffeine which contains a nice scan tool. Eventually somebody will mail a conversion script to info@j-pfennig.de? Consider also to cry for help on some DVB mailing list.

The majority of channels are either pay-tv channels or can only be used with a decoder card for license reasons (the Swiss for example suffer from the problem that they would have to pay a lot more money to Hollywood if they would broadcast unencrypted German-synchronised movies via satellite).

Some channels broadcast nothing, some broadcast slides (at a very low data rate). Do not get irritated by this! Unfortunately ZapDvb is usually too impatient to wait for a slide and will tell you that it does not receive data.

Check your satellite dish hardware! If you specify the wrong LNB (Low Noise Block Converter) type (see the scanner options or in zapdvb.conf) only some channels or no channels at all will work. In Europe the LNB type UNIVERSAL is common. See en.wikipedia.org.

Similar problems may happen if you do not understand what DiSEqC stands for (Digital Satellite Equipment Control; DiSEqC is a trademark of Eutelsat). Again: this piece of hardware is not too frequently used in Europe (not for low-price solutions). See en.wikipedia.org.