From LinuxTVWiki
Jump to navigation Jump to search

scan is one of the two command line frequency scanning utilities contained in the LinuxTV dvb-apps. The other one is dvbscan. There are also two other utilities, not included in LinuxTV dvb-apps, called w_scan and scan-s2. Comparison of the scanning utilities.

When using scan, one indirectly instructs it to search for programs streams that can be received from specified frequencies and generates a resultant channel list.


scan does not have a man page. However, if you run it with the -h parameter, the output provides a summary of its command options. For example, running scan -h produces:

usage: scan [options...] [-c | initial-tuning-data-file]
        atsc/dvbscan doesn't do frequency scans, hence it needs initial
        tuning data for at least one transponder/channel.
        -c      scan on currently tuned transponder only
        -v      verbose (repeat for more)
        -q      quiet (repeat for less)
        -a N    use DVB /dev/dvb/adapterN/
        -f N    use DVB /dev/dvb/adapter?/frontendN
        -d N    use DVB /dev/dvb/adapter?/demuxN
        -s N    use DiSEqC switch position N (DVB-S only)
        -i N    spectral inversion setting (0: off, 1: on, 2: auto [default])
        -n      evaluate NIT-other for full network scan (slow!)
        -5      multiply all filter timeouts by factor 5
                for non-DVB-compliant section repitition rates
        -o fmt  output format: 'zap' (default), 'vdr' or 'pids' (default with -c)
        -x N    Conditional Access, (default -1)
                N=0 gets only FTA channels
                N=-1 gets all channels
                N=xxx sets ca field in vdr output to :xxx:
        -t N    Service select, Combined bitfield parameter.
                1 = TV, 2 = Radio, 4 = Other, (default 7)
        -p      for vdr output format: dump provider name
        -e N    VDR version, default 3 for VDR-1.3.x and newer
                value 2 sets NIT and TID to zero
                Vdr version 1.3.x and up implies -p.
        -l lnb-type (DVB-S Only) (use -l help to print types) or
        -l low[,high[,switch]] in Mhz
        -u      UK DVB-T Freeview channel numbering for VDR

        -P do not use ATSC PSIP tables for scanning
            (but only PAT and PMT) (applies for ATSC only)
        -A N    check for ATSC 1=Terrestrial [default], 2=Cable or 3=both
        -U      Uniquely name unknown services


scan comes with a list of satellites (for dvb-s)

~$ scan /usr/share/dvb/dvb-s/ [pressing ''Tab'', reveals the list]
ABS1-75.0E             Astra-19.2E            ExpressAM22-53.0E      Insat3A_C-93.5E        Intelsat-907-27.5W     ST1_C-80.0E
Agila2_C-146.0E        Astra-23.5E            ExpressAM2-80.0E       Insat4A_C-83.0E        Intelsat-9-58.0W       Telecom2-8.0W
Amazonas-61.0W         Astra-28.2E            Galaxy10R-123w         Insat4B_C-93.5E        JCSat3A_C-128.0E       Telkom1_C-108.0E
AMC1-103w              Atlantic-Bird-1-12.5W  Galaxy11-91w           Intel4-72.0E           Measat3_C-91.5E        Telstar10_C-76.5E
AMC2-85w               Atlantic-Bird-3-5.0W   Galaxy25-97w           Intel904-60.0E         Nahuel-1-71.8W         Telstar12-15.0W
AMC3-87w               BrasilSat-B1-75.0W     Galaxy26-93w           Intelsat-1002-1.0W     Nilesat101+102-7.0W    Telstar18_C-138.0E
AMC4-101w              BrasilSat-B2-65.0W     Galaxy27-129w          Intelsat-11-43.0W      NSS-10-37.5W           Thaicom1A_C-120.0E
AMC5-79w               BrasilSat-B3-84.0W     Galaxy28-89w           Intelsat-1R-45.0W      NSS-7-22.0W            Thaicom2_C-78.5E
AMC6-72w               BrasilSat-B4-70.0W     Galaxy3C-95w           Intelsat-3R-43.0W      NSS-806-40.5W          Thaicom5_C-78.5E
AMC9-83w               Chinastar1_C-87.5E     Hispasat-30.0W         Intelsat-6B-43.0W      OptusC1-156E           Thor-1.0W
Amos-4w                Estrela-do-Sul-63.0W   Hotbird-13.0E          Intelsat-705-50.0W     PalapaC2_C-113.0E      Turksat-42.0E
Anik-F1-107.3W         Eurobird1-28.5E        IA5-97w                Intelsat-707-53.0W     PAS-43.0W              Vinasat1_C-132.0E
Apstar6_C-134.0E       Eurobird9-9.0E         IA6-93w                Intelsat-805-55.5W     Satmex-5-116.8W        Yamal201-90.0E
AsiaSat2_C-100.5E      EutelsatW2-16E         IA7-129w               Intelsat8_C-166.0E     Satmex-6-113.0W        
AsiaSat3S_C-105.5E     Express-3A-11.0W       IA8-89w                Intelsat-903-34.5W     SBS6-74w               
Asiasat4_C-122.2E      ExpressAM1-40.0E       Insat2E_C-83.0E        Intelsat-905-24.5W     Sirius-5.0E      

and terrestrial transmitters (for dvb-t)

~$ scan /usr/share/dvb/dvb-t/uk- [pressing ''Tab'', reveals the list]
uk-Aberdare              uk-Chatton               uk-HemelHempstead        uk-Oxford                uk-Sheffield
uk-Angus                 uk-Chesterfield          uk-HuntshawCross         uk-PendleForest          uk-StocklandHill
uk-BeaconHill            uk-Craigkelly            uk-Idle                  uk-Plympton              uk-Storeton
uk-Belmont               uk-CrystalPalace         uk-KeelylangHill         uk-PontopPike            uk-Sudbury
uk-Bilsdale              uk-Darvel                uk-Keighley              uk-Pontypool             uk-SuttonColdfield
uk-BlackHill             uk-Divis                 uk-KilveyHill            uk-Presely               uk-Tacolneston
uk-Blaenplwyf            uk-Dover                 uk-KnockMore             uk-Redruth               uk-TheWrekin
uk-BluebellHill          uk-Durris                uk-Lancaster             uk-Reigate               uk-Torosay
uk-Bressay               uk-Eitshal               uk-LarkStoke             uk-RidgeHill             uk-TunbridgeWells
uk-BrierleyHill          uk-EmleyMoor             uk-Limavady              uk-Rosemarkie            uk-Waltham
uk-BristolIlchesterCres  uk-Fenham                uk-Llanddona             uk-Rosneath              uk-Wenvoe
uk-BristolKingsWeston    uk-Fenton                uk-Malvern               uk-Rowridge              uk-WhitehawkHill
uk-Bromsgrove            uk-Ferryside             uk-Mendip                uk-RumsterForest         uk-WinterHill
uk-BrougherMountain      uk-Guildford             uk-Midhurst              uk-Saddleworth           
uk-Caldbeck              uk-Hannington            uk-Moel-y-Parc           uk-Salisbury             
uk-CaradonHill           uk-Hastings              uk-Nottingham            uk-SandyHeath            
uk-Carmel                uk-Heathfield            uk-OliversMount          uk-Selkirk         

to choose from, in order to scan for the channels you wish to tune in afterwards. By running the scan command, you create a .conf file, essentially a text file, that contains all the channels you can successfully receive:

~$ scan /usr/share/dvb/dvb-s/Eurobird1-28.5E >latest_channels.conf
scanning /usr/share/dvb/dvb-s/Eurobird1-28.5E
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
initial transponder 11623000 H 27500000 2
initial transponder 11224000 V 27500000 2
initial transponder 11527000 V 27500000 2
>>> tune to: 11623:h:0:27500
DVB-S IF freq is 1873000
0x0000 0xc695: pmt_pid 0x0103 BSkyB -- Wired Ocean (running, scrambled)
0x0000 0xc69f: pmt_pid 0x0117 BSkyB -- Russia Today (running)
[and so on...]
dumping lists (797 services)

The .conf file can be edited with any text editor, sorting the channel list as you like. The contents look like this, according to the example above:

Wired Ocean:11623:h:0:27500:0:0:50837
Russia Today:11623:h:0:27500:2322:2323:50847

which is translated as follows:

channel name:frequency:polarity(h for horizontal, v for vertical):number of dvb adapter (0 here):symbol rate:vpid:audio:sid

Then you may copy this .conf file to the software you are going to use to tune in and watch TV, for example Xine.

Also See