forked from rtl-airband/RTLSDR-Airband
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrtl_airband.conf.example
More file actions
375 lines (367 loc) · 10.7 KB
/
Copy pathrtl_airband.conf.example
File metadata and controls
375 lines (367 loc) · 10.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
# Sample RTLSDR_Airband configuration file with a brief syntax explanation
#
# General libconfig format description can be found in libconfig manual
# (http://www.hyperrealm.com/libconfig/libconfig_manual.html)
# Each parameter is specified as:
#
# key = value;
#
# Remember about the semicolon at the end.
#
# Keys can be scalars:
#
# myinteger = 5;
# myfloat = -3.5;
# mystring = "This is a string";
#
# or lists (ordered):
#
# mylist = (5, 8, 3, "string");
#
# Parameters can be grouped, like so:
#
# mygroup = {
# param1 = 3;
# param2 = -5;
# param3 = "some text";
# };
#
# Parameter names inside the group must be unique.
# Lists and groups can contain scalars as well as groups or lists.
#
# Three types of comments are allowed within a configuration:
#
# - Script-style comments (beginning with a '#' character)
# - C-style comments, /* like so */
# - C++-style comments (beginning with // sequence)
# global parameters
# log messages via syslog? Default: 1 (yes)
# if disabled, log messages are written to stdout (but only when run in foreground)
# This option has no effect on Windows
# syslog = 1
# PID file path (default: /run/rtl_airband.pid)
# This setting has no effect on Windows.
# pidfile = "/run/rtl_airband.pid"
# De-emphasis filter time constant
# The filter suppresses high-frequency noise in NFM channels.
# Larger values cause more noise suppression.
# Set it to 0 if you don't want filtering.
# Default value: 200 (microseconds).
# You can also set this parameter per dongle and / or per channel.
# tau = 200;
# Number of USB read buffers to be used per dongle
# The default value is 10. If you use four or more dongles simultaneously
# or you get error messages like "Failed to submit transfer 12!"
# you may need to lower this value
# rtlsdr_buffers = 10;
# devices section contains all settings related to the RTLSDR receivers.
#
# It's a list of groups - each group contains settings for a single receiver,
# ie.: devices = ( {dongle1 params}, {dongle2 params}, {dongle3 params} );
devices = (
{
# Device index (as identified by librtlsdr library)
index = 0;
# A quick way to ignore this device temporarily. Default: false
disable = false;
# Gain (integer, in decibels, optional). Default is auto-gain.
# gain = 28;
# Dongle mode. Can be one of the following:
# - "multichannel" - this is the default. Dongle is set to the configured
# center frequency. Multiple channels are received simultaneously. Every
# channel is a separate Icecast stream.
# - "scan" - turns the dongle into a frequency scanner. All scanned frequencies
# are sent to a common Icecast stream.
mode = "multichannel";
# Center frequency (in hertz). Valid only in multichannel mode.
centerfreq = 120100000;
# Tuning error (in parts per million). Default is 0.
correction = 80;
# List of channels which should be received and streamed from this dongle.
# It's a list of groups - each group contains settings for a single channel.
# Maximum number of channels per dongle is 8 in multichannel mode or 1 in scan
# mode.
channels = (
{
# Channel frequency (in hertz)
# The channel must fit in the dongle bandwidth, which is approximately 2.5 MHz
# (ie. +- 1.25 MHz around center frequency)
# This setting is valid in multichannel mode only.
freq = 118925000;
# A quick way to ignore this channel temporarily. Default: false
disable = false;
# Modulation - "am" or "nfm". Default is "am".
modulation = "am";
# Squelch level (integer, greater than 0). Default is auto.
# Set this parameter only when auto squelch does not work correctly
# (this is common with channels which transmit continuously, like ATIS/AWOS,
# when auto squelch is unable to figure out the correct noise floor level)
# squelch = 100;
#Automatioc Frequency Control (AFC) level (optional value)
#0 - disabled (by default)
#value from range 1...10 - AFC enabled, larger value means more aggressive AFC.
afc = 0;
# Multiple outputs per channel are supported. For example, a single channel
# can be sent to multiple Shoutcast servers.
outputs = (
{
# A quick way to ignore this output temporarily. Default: false
disable = false;
# Output type. Supported types are: icecast and file.
type = "icecast";
# Host name or IP address of Shoutcast/Icecast server
server = "www.example.com";
# Shoutcast port number
port = 8000;
# Shoutcast mountpoint path (without leading slash)
mountpoint = "118925.mp3";
# Username and password for the mountpoint
username = "source";
password = "password";
# optional: name of the stream (default: none)
name = "Example ATC feed";
# optional: genre (default: none)
genre = "ATC";
}
);
},
# Subsequent channels
{
freq = 119100000;
# You can use both AM and NFM modulations for different channels on the same dongle.
# Probably not very useful in multichannel mode, but it's possible.
modulation = "nfm";
# This channel is streamed to two destinations
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "119100.mp3";
username = "source";
password = "password";
},
{
type = "icecast";
server = "www.otherserver.com";
port = 8010;
mountpoint = "119100.mp3";
username = "someuser";
password = "somepassword";
}
);
},
{
freq = 119500000;
modulation = "am";
# This channel is streamed to Icecast and saved to local files
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "119500.mp3";
username = "source";
password = "password";
},
{
type = "file";
# Directory where output MP3 files are written. Must be created before running rtl_airband.
directory = "/home/pi";
# File name prefix. rtl_airband automatically appends the date and UTC hour in YYYYmmdd_HH format
# and creates new file every hour.
filename_template = "119500";
# Set this to true if you want to record continuously.
# Set this to false if you want to skip silence (record only when squelch is open).
# Default is false.
continuous = true;
# Set this to true if you want to append to file if its exists with demarkation of missing fragment.
# Set this to false if you want to overwrite existing files.
# Default is true.
append = false;
}
);
},
{
freq = 120600000;
# Manual squelch setting for this channel
squelch = 250;
modulation = "am";
# This channel is not streamed to Icecast.
# It is saved to local files into two destinations - one of them records continuously, the other one
# skips silence periods.
outputs = (
{
type = "file";
directory = "/home/pi/streams";
filename_template = "TWR";
continuous = false;
},
{
type = "file";
directory = "/home/pi/streams_full";
filename_template = "TWR";
continuous = true;
}
);
},
{
# This channel will be ignored.
# This way you can quickly disable a channel without commenting out or deleting
# large sections of config file
disable = true;
freq = 121300000;
modulation = "am";
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "121300.mp3";
username = "source";
password = "password";
}
);
},
{
freq = 121600000;
modulation = "am";
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "121600.mp3";
username = "source";
password = "password";
}
);
} );
},
# Receiver 1 - multichannel mode, 4 NFM channels
{
index = 1;
gain = 28;
mode = "multichannel";
centerfreq = 123000000;
correction = 80;
# De-emphasis filter time constant
# This setting overrides the global tau setting for all channels on this dongle
tau = 0;
channels = (
{
freq = 152000000;
modulation = "nfm";
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "152000.mp3";
username = "source";
password = "password";
}
);
},
{
freq = 152100000;
modulation = "nfm";
# De-emphasis filter time constant
# Applies to this channel only
tau = 500;
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "152100.mp3";
username = "source";
password = "password";
}
);
},
{
freq = 152200000;
modulation = "nfm";
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "152200.mp3";
username = "source";
password = "password";
}
);
},
{
freq = 152300000;
modulation = "nfm";
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "152300.mp3";
username = "source";
password = "password";
},
{
# This output will be ignored.
# This way you can quickly disable an output without deleting or commenting it out
disabled = true;
type = "file";
directory = "/home/pi/streams";
filename_template = "152300";
}
);
} );
},
# Receiver 2 - scan mode, AM modulation (default)
{
index = 2;
gain = 28;
mode = "scan";
correction = 80;
channels = (
{
freqs = ( 126300000, 121500000, 128225000, 131375000 );
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "variouschannels.mp3";
username = "source";
password = "password";
name = "Example scan mode feed";
genre = "ATC";
}
);
}
);
},
{
# This device will be ignored.
# This way you can quickly disable a device without deleting or commenting it out
index = 3;
gain = 28;
mode = "scan";
correction = 80;
channels = (
{
freqs = ( 126300000, 121500000 );
outputs = (
{
type = "icecast";
server = "www.example.com";
port = 8000;
mountpoint = "test.mp3";
username = "source";
password = "password";
}
);
}
);
}
);