scan
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.
Documentation
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
Usage
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) Done.
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.