1vdr(5)                     Video Disk Recorder Files                    vdr(5)
2
3
4

NAME

6       vdr_files - the Video Disk Recorder Files
7

DESCRIPTION

9       This  page describes the formats of the various files vdr uses to store
10       configuration data and recordings.
11

SYNTAX

13   CHANNELS
14       The file channels.conf contains the channel configuration.   Each  line
15       defines either a group delimiter or a channel.
16
17       A group delimiter is a line starting with a ':' as the very first char‐
18       acter, followed by arbitrary text. Example:
19
20       :First group
21
22       Group delimiters may also be used to specify the  number  of  the  next
23       channel.   To  do this, the character '@' and a number must immediately
24       follow the ':', as in
25
26       :@201 First group
27
28       The given number must be larger than the number of any previous channel
29       (otherwise it is silently ignored).
30
31       A  group delimiter can also be used to just set the next channel's num‐
32       ber, without an explicit delimiter text, as in
33
34       :@201
35
36       Such a delimiter will not appear in the Channels menu.
37
38       A channel definition is a line with channel data, where the fields  are
39       separated by ':' characters. Example:
40
41
42       RTL Television,RTL;RTL World:12187:hC34M2O0S0:S19.2E:27500:163=2:104=deu;106=deu:105:0:12003:1:1089:0
43
44       The line number of a channel definition (not counting group separators,
45       and based on a possible previous '@...' parameter)  defines  the  chan‐
46       nel's number in OSD menus and the timers.conf file.
47
48       The  fields  in  a  channel definition have the following meaning (from
49       left to right):
50
51       Name   The channel's name (if the name originally contains a ':'  char‐
52              acter it has to be replaced by '|').  Some TV stations provide a
53              way of deriving a "short name" from the channel name, which  can
54              be used in situations where there is not much space for display‐
55              ing a long name. If a short name is available for this  channel,
56              it follows the full name and is delimited by a comma, as in
57
58              RTL Television,RTL:...
59
60              If  the  short name itself would contain a comma, it is replaced
61              with a '.'.  Note that some long channel  names  may  contain  a
62              comma, so the delimiting comma is always the rightmost one.
63
64              If present, the name of the service provider or "bouquet" is ap‐
65              pended to the channel name, separated by a semicolon, as in
66
67              RTL Television,RTL;RTL World:...
68
69       Frequency
70              The transponder frequency (as an integer). For DVB-S this  value
71              is  in  MHz.  For DVB-C and DVB-T it can be given either in MHz,
72              kHz or Hz (the actual value given will be multiplied by 1000 un‐
73              til it is larger than 1000000).
74
75       Parameters
76              Various  parameters, depending on whether this is a DVB-S, DVB-C
77              or DVB-T channel.  Each parameter consist of  a  key  character,
78              followed by an integer number that represents the actual setting
79              of that parameter. The valid key characters, their meaning  (and
80              allowed values) are
81
82              B   Bandwidth (1712, 5, 6, 7, 8, 10, 999)
83              C   Code rate high priority (0, 12, 23, 34, 35, 45, 56, 67, 78, 89, 910, 999)
84              D   coDe rate low priority (0, 12, 23, 34, 35, 45, 56, 67, 78, 89, 910, 999)
85              G   Guard interval (4, 8, 16, 32, 128, 19128, 19256, 999)
86              H   Horizontal polarization
87              I   Inversion (0, 1, 999)
88              L   Left circular polarization
89              M   Modulation (2, 5, 6, 7, 10, 11, 12, 16, 32, 64, 128, 256, 999)
90              N   pilot mode (0, 1, 999)
91              O   rollOff (0, 20, 25, 35)
92              P   stream id (0-255)
93              Q   t2 system id (0-65535)
94              R   Right circular polarization
95              S   delivery System (0, 1)
96              T   Transmission mode (1, 2, 4, 8, 16, 32, 999)
97              V   Vertical polarization
98              X   siso/miso mode (0, 1)
99              Y   hierarchY (0, 1, 2, 4, 999)
100
101              Bandwidth:  The  bandwidth  of the channel in MHz (1712 in kHz):
102              (DVB-T/DVB-T2 only).
103
104              Code rate high priority: Forward Error Correction (FEC)  of  the
105              high  priority stream (DVB-T/DVB-T2).  For DVB-S/DVB-S2 this pa‐
106              rameter specifies the inner FEC scheme.  12 = 1/2, 23 = 2/3,  34
107              = 3/4, ...
108
109              Code  rate  low  priority: Forward Error Correction (FEC) of the
110              low priority stream (DVB-T/DVB-T2 only).   If  no  hierarchy  is
111              used, set to 0.
112
113              Guard  interval: The guard interval value (DVB-T only): 4 = 1/4,
114              8 = 1/8, 16 = 1/16, 32 = 1/32, 128  =  1/128,  19128  =  19/128,
115              19256 = 19/256.
116
117              Inversion: Specifies whether the DVB frontend needs spectral in‐
118              version (DVB-T and DVB-C only). This is frontend specific, if in
119              doubt, omit.
120
121              Modulation:  Specifies the modulation/constellation of the chan‐
122              nel as follows:
123
124              2     QPSK (DVB-S, DVB-S2, DVB-T, DVB-T2, ISDB-T)
125              5     8PSK (DVB-S, DVB-S2)
126              6     16APSK (DVB-S2)
127              7     32APSK (DVB-S2)
128              10    VSB8 (ATSC aerial)
129              11    VSB16 (ATSC aerial)
130              12    DQPSK (ISDB-T)
131              16    QAM16 (DVB-T, DVB-T2, ISDB-T)
132
133              32    QAM32
134              64    QAM64 (DVB-C, DVB-T, DVB-T2, ISDB-T)
135              128   QAM128 (DVB-C)
136              256   QAM256 (DVB-C, DVB-T2)
137
138              Pilot mode: The pilot mode (0 = "off", 1 = "on", 999  =  "auto")
139              for DVB-S2 multiplex (DVB-S2 only).
140
141              Rolloff:  The  Nyquist  filter rolloff factor for DVB-S (35) and
142              DVB-S2 (35, 25, 20), 35 = 0.35, 25 = 0.25, 20 = 0.20, DVB-S/DVB-
143              S2 default value is 0.35
144
145              Stream id: Input Stream Identifier (ISI) (0-255) for DVB-S2 mul‐
146              tiplex or Physical Layer Pipe (PLP) id (0-255) for DVB-T2 multi‐
147              plex  (DVB-S2/DVB-T2  only,  with  devices  that  support "multi
148              streaming").
149
150              T2 System id: Unique identifier (0-65535) of  T2  system  within
151              the DVB network (DVB-T2).
152
153              Transmission mode: Number of DVB-T OFDM carriers, 32 = 32k, 16 =
154              16k, 8 = 8k, 4 = 4k, 2 = 2k, 1 = 1k. If in doubt, try 8k.
155
156              SISO/MISO mode: Specifies the  Single-Input/Multiple-Input  Sin‐
157              gle-Output mode (0 = SISO, 1 = MISO) (DVB-T2).
158
159              Hierarchy:  If set to 1, this transponder uses two streams, high
160              priority and low priority.  If in  doubt,  try  0  (off).  (DVB-
161              T/DVB-T2 only).
162
163              Delivery  System:  The  delivery  system (0 = "first generation"
164              (DVB-S/DVB-T), 1 = "second generation" (DVB-S2/DVB-T2).
165
166              Polarization: Satellite antenna polarization.  H = horizontal, V
167              = vertical, R = circular right, L = circular left.
168
169              The  polarization  parameters  have no integer numbers following
170              them. This is for compatibility with files from  older  versions
171              and also to keep the DVB-S entries as simple as possible.
172
173              The  special  value 999 is used for "automatic", which means the
174              driver will automatically determine the proper value (if  possi‐
175              ble).
176
177              An  example  of a parameter field for a DVB-T channel might look
178              like this: B8C23D12G8M16T8Y0S0
179
180              An example of a parameter field for a DVB-T2 channel might  look
181              like this: B8C23D12G8M16T8Y0P0S1
182
183              An  example  of a parameter field for a DVB-C channel might look
184              like this: C0M64
185
186              An example of a parameter field for a DVB-S channel  might  look
187              like this: HC56M2O35S0
188
189              An  example of a parameter field for a DVB-S2 channel might look
190              like this: HC910M2O35S1
191
192              Plugins that implement devices that need their own set of param‐
193              eters may store those in the parameters string in arbitrary for‐
194              mat  (not  necessarily  the  "character/number"  format   listed
195              above).  The  only  condition is that the string may not contain
196              colons (':') or newline characters.
197
198       Source The signal source of  this  channel,  as  defined  in  the  file
199              sources.conf.
200
201       Srate  The symbol rate of this channel (DVB-S and DVB-C only).
202
203       VPID   The  video PID (set to '0' for radio channels).  If this channel
204              uses a separate PCR PID, it follows the  VPID,  separated  by  a
205              plus sign, as in
206
207              ...:164+17:...
208
209              If  this channel has a video mode other than 0, the mode follows
210              the pids, separated by an '=' sign, as in
211
212              ...:164+17=27:...
213
214       APID   The audio PID (either one number, or several, separated by  com‐
215              mas).   If  this  channel  also carries Dolby Digital sound, the
216              Dolby PIDs follow the audio PIDs, separated by a  semicolon,  as
217              in
218
219              ...:101,102;103,104:...
220
221              If  certain audio PIDs broadcast in specific languages, the lan‐
222              guage codes for these can be appended to the individual audio or
223              Dolby PID, separated by an '=' sign, as in
224
225              ...:101=deu,102=eng;103=deu,104=eng:...
226
227              Some  channels  broadcast  two  different  languages  in the two
228              stereo channels, which can be indicated by adding a second  lan‐
229              guage code, delimited by a '+' sign, as in
230
231              ...:101=deu,102=eng+spa;103=deu,104=eng:...
232
233              The  audio  type is appended with a separating '@' character, as
234              in
235
236              ...:101=deu@4,102=eng+spa@4,105=@4:...
237
238              Note that if there is no language code, there still is the sepa‐
239              rating '=' if there is an audio type.
240
241
242       TPID   The  teletext  PID.  If this channel also carries DVB subtitles,
243              the DVB subtitling PIDs follow the teletext PID, separated by  a
244              semicolon, as in
245
246              ...:201;2001,2002:...
247
248              If  certain subtitling PIDs broadcast in specific languages, the
249              language codes for these can be appended to the individual  sub‐
250              titling PID, separated by an '=' sign, as in
251
252              ...:201;2001=deu,2002=eng:...
253
254
255       Conditional access
256              A hexadecimal integer defining how this channel can be accessed:
257
258              0000          Free To Air
259              0001...000F   explicitly requires the device with the given number
260              0010...00FF   reserved for user defined assignments
261              0100...FFFF   specific decryption methods as broadcast in the data stream
262              Values  in  the  range  0001...00FF will not be overwritten, all
263              other values will be automatically replaced  by  the  actual  CA
264              system  identifiers  received  from the data stream. If there is
265              more than one CA system id broadcast, they will be separated  by
266              commas, as in
267
268              ...:1702,1722,1801:...
269
270              The values are in hex because that's the way they are defined in
271              the "ETR 162" document. Leading zeros may be omitted.
272
273       SID    The Service ID of this channel.
274
275       NID    The Network ID of this channel.
276
277       TID    The Transport stream ID of this channel.
278
279       RID    The Radio ID of this channel (typically 0, may be used  to  dis‐
280              tinguish channels where NID, TID and SID are all equal).
281
282       A  particular  channel  can  be  uniquely identified by its channel ID,
283       which is a string that looks like this:
284
285       S19.2E-1-1089-12003-0
286
287       The components of this string are the Source  (S19.2E),  NID  (1),  TID
288       (1089), SID (12003) and RID (0) as defined above.  The last part can be
289       omitted if it is 0, so the above  example  could  also  be  written  as
290       S19.2E-1-1089-12003).
291       The  channel ID  is used in the timers.conf and epg.data files to prop‐
292       erly identify the channels.
293
294       If a channel has both NID and TID set to 0, the channel ID will use the
295       Frequency instead of the TID. For satellite channels an additional off‐
296       set of 100000, 200000, 300000 or 400000 is added to  that  number,  de‐
297       pending  on the Polarization (H, V, L or R, respectively). This is nec‐
298       essary because on some satellites the same frequency is  used  for  two
299       different transponders, with opposite polarization.
300
301   TIMERS
302       The  file timers.conf contains the timer setup.  Each line contains one
303       timer definition, with individual fields separated by  ':'  characters.
304       Example:
305
306       1:10:-T-----:2058:2150:50:5:Quarks & Co:
307
308       The  fields in a timer definition have the following meaning (from left
309       to right):
310
311       Flags  The individual bits in this field have the following meaning:
312
313              0x0001   the timer is active (and will record if it hits)
314              0x0002   this is an instant recording timer
315              0x0004   this timer uses VPS
316              0x0008   this timer is currently recording (may only be up-to-date with SVDRP)
317              0x0010   this timer was spawned from a pattern timer
318              0x0020   this timer will store the recording's name in donerecs.data
319
320              All other bits are reserved for future use.
321
322       Channel
323              The channel to record from. This is either the channel number as
324              shown  in  the  on-screen  menus, or a complete channel ID. When
325              reading timers.conf any channel numbers will be  mapped  to  the
326              respective channel ids and when the file is written again, there
327              will only be channel ids. Channel numbers are accepted as  input
328              in  order to allow easier creation of timers when manually edit‐
329              ing timers.conf. Also, when timers are  listed  via  SVDRP  com‐
330              mands, the channels are given as numbers.
331
332       Day    The day when this timer shall record.
333
334              If this is a `single-shot' timer, this is the date on which this
335              timer shall record, given in ISO notation (YYYY-MM-DD), as in:
336
337              2005-03-19
338
339              For compatibility with earlier versions of VDR this may also  be
340              just  the day of month on which this timer shall record (must be
341              in the range 1...31).
342
343              In case of a `repeating' timer this is a  string  consisting  of
344              exactly  seven  characters, where each character position corre‐
345              sponds to one day of the week (with Monday being the first day).
346              The  character  '-'  at  a certain position means that the timer
347              shall not record on that day. Any other character will cause the
348              timer to record on that day. Example:
349
350              MTWTF--
351
352              will  define  a  timer that records on Monday through Friday and
353              does not record on weekends.  Note that only letters may be used
354              here,  no  digits.   For  compatibility with timers created with
355              earlier versions of VDR, the same result could be achieved  with
356              ABCDE--  (which was used to allow setting the days with language
357              specific characters).  Since version 1.5.3  VDR  can  use  UTF-8
358              characters to present data to the user, but the weekday encoding
359              in the timers.conf file always uses single byte characters.
360
361              The day definition of a `repeating' timer may be followed by the
362              date  when  that  timer shall hit for the first time. The format
363              for this is @YYYY-MM-DD, so a  complete  definition  could  look
364              like this:
365
366              MTWTF--@2002-02-18
367
368              which  would  implement a timer that records Monday through Fri‐
369              day, and will hit for the first time on or  after  February  18,
370              2002.  This first day feature can be used to disable a repeating
371              timer for a couple of days, or for  instance  to  define  a  new
372              Mon...Fri timer on Wednesday, which actually starts "Monday next
373              week". The first day date given need not be that of a  day  when
374              the timer would actually hit.
375
376       Start  A  four  digit  integer  defining  when  this  timer shall start
377              recording.  The format is hhmm, so 1430 would  mean  "half  past
378              two" in the afternoon.
379
380       Stop   A four digit integer defining when this timer shall stop record‐
381              ing.  The format is the same as for the start time.
382
383       Priority
384              An integer in the range 0...99, defining the  priority  of  this
385              timer and of recordings created by this timer.  0 represents the
386              lowest value, 99 the highest.  The priority is  used  to  decide
387              which  timer  shall  be  started  in  case there are two or more
388              timers with the exact same start time. The first  timer  in  the
389              list with the highest priority will be used.
390
391              This  value  is also stored with the recording and is later used
392              to decide which recording to remove from disk in order  to  free
393              space  for  a  new  recording.  If  the disk runs full and a new
394              recording needs more space, an existing recording with the  low‐
395              est  priority  (and  which has exceeded its guaranteed lifetime)
396              will be removed.
397
398              If all available DVB cards are currently occupied, a timer  with
399              a  higher priority will interrupt the timer with the lowest pri‐
400              ority in order to start recording.
401
402       Lifetime
403              The guaranteed lifetime (in days) of a recording created by this
404              timer.  0 means that this recording may be automatically deleted
405              at any time by a new recording with higher  priority.  99  means
406              that  this  recording  will  never be automatically deleted. Any
407              number in the range 1...98 means that this recording may not  be
408              automatically  deleted  in  favour of a new recording, until the
409              given number of days since the start time of the  recording  has
410              passed by.
411
412       File   The  file name this timer will give to a recording.  If the name
413              contains any ':' characters, these have to be replaced  by  '|'.
414              If  the  name shall contain subdirectories, these have to be de‐
415              limited by '~' (since the '/' character may be part of a regular
416              programme name).
417
418              The  special keywords TITLE and EPISODE, if present, will be re‐
419              placed by the title and episode information from the EPG data at
420              the  time  of  recording  (if that data is available). If at the
421              time of recording either of these cannot  be  determined,  TITLE
422              will  default to the channel name, and EPISODE will default to a
423              blank.
424
425              The file name can be prepended with a pattern, enclosed in curly
426              braces, as in
427
428              {Columbo}Movies~TITLE
429
430              which  makes this a "pattern timer". A pattern timer records ev‐
431              ery event on the given channel where the title contains the pat‐
432              tern  (case sensitive).  The following special characters can be
433              used in a pattern:
434
435              ^   anchor to the beginning of the event's title
436              $   anchor to the end of the event's title
437              *   match every event
438              @   avoid duplicate recordings
439
440              If @ is used, it must be the very first character  of  the  pat‐
441              tern.   If  both  @  and ^ are used, @ must come first.  If * is
442              used, it must be the only character in the pattern and may  only
443              be prepended with @.
444
445              In  addition  to  TITLE  and  EPISODE  you can use the following
446              macros to compose the file name (the curly braces  are  part  of
447              the macros):
448
449              {<}   everything before the matching pattern
450              {>}   everything after the matching pattern
451              {=}   the matching pattern itself (just for completeness)
452
453       Auxiliary data
454              An arbitrary string that can be used by external applications to
455              store any kind of data related to this timer.  The  string  must
456              not  contain any newline characters. If this field is not empty,
457              its contents will be written into the info file of the recording
458              with the '@' tag.
459
460   SOURCES
461       The  file sources.conf defines the codes to be used in the Source field
462       of channels in channels.conf and assigns  descriptive  texts  to  them.
463       Example:
464
465       S19.2E  Astra 1
466
467       Anything after (and including) a '#' character is comment.
468
469       The first character of the code must be one of
470
471       A   ATSC
472       C   Cable
473       S   Satellite
474       T   Terrestrial
475
476       and  is  followed by further data pertaining to that particular source.
477       In case of Satellite this is the orbital position in degrees,  followed
478       by  E  for  east or W for west.  Plugins may define additional sources,
479       using other characters in the range 'A'...'Z'.
480
481   DISEQC
482       The file diseqc.conf defines the DiSEqC control sequences to be sent to
483       the  DVB-S  card  in  order to access a given satellite position and/or
484       band.  Example:
485
486       S19.2E  11700 V  9750  t v W15 [E0 10 38 F0] W15 A W15 t
487
488       Anything after (and including) a '#' character is comment.
489
490       The first word in a parameter line must be one of the codes defined  in
491       the file sources.conf and tells which satellite this line applies to.
492
493       Following  is  the  "switch  frequency" of the LNB (slof), which is the
494       transponder frequency up to which this entry shall be used;  the  first
495       entry  with  an slof greater than the actual transponder frequency will
496       be used. Typically there is only one slof per LNB, but the  syntax  al‐
497       lows  any  number  of  frequency ranges to be defined.  Note that there
498       should be a last entry with the value 99999 for each  satellite,  which
499       covers the upper frequency range.
500
501       The  third  parameter  defines the polarization to which this entry ap‐
502       plies. It can be either H for horizontal, V for vertical, L for  circu‐
503       lar left or R for circular right.
504
505       The  fourth  parameter specifies the "local oscillator frequency" (lof)
506       of the LNB to use for the given frequency range. This  number  will  be
507       subtracted  from  the  actual  transponder frequency when tuning to the
508       channel.
509
510       The rest of the line holds the actual sequence of DiSEqC actions to  be
511       taken.  The code letters used here are
512
513       t          22kHz tone off
514       T          22kHz tone on
515       v          voltage low (13V)
516       V          voltage high (18V)
517       A          mini A
518       B          mini B
519       Pn         use positioner to move dish to satellite position n (or to the satellite's orbital position, if no position number is given)
520       Sn         Satellite channel routing code sequence for bank n follows
521       Wnn        wait nn milliseconds (nn may be any positive integer number)
522       [xx ...]   hex code sequence (max. 6)
523       There  can  be any number of actions in a line, including none at all -
524       in which case the entry would be used only to set the LOF  to  use  for
525       the given frequency range and polarization.
526
527       By default it is assumed that every DVB-S device can receive every sat‐
528       ellite.  If this is not the case in a particular setup,  lines  of  the
529       form
530
531       1 2 4:
532
533       may  be inserted in the diseqc.conf file, defining the devices that are
534       able to receive the satellites following thereafter. In this case, only
535       the  devices 1, 2 and 4 would be able to receive any satellites follow‐
536       ing this line and up to the next such line, or the end of the file. De‐
537       vices may be listed more than once.
538
539   SATELLITE CHANNEL ROUTING (SCR)
540       The file scr.conf contains the channel definitions of the SCR device in
541       use.  The format is
542
543       channel frequency [pin]
544
545       where channel is the SCR device's channel index (0-7), frequency is the
546       user  band  frequency  of the given channel, and pin is an optional pin
547       number (0-255). The actual values are device specific and can be  found
548       in the SCR device's manual.
549
550       Examples:
551
552       0 1284
553       1 1400
554       2 1516
555       3 1632
556       4 1748
557       5 1864
558       6 1980
559       7 2096
560
561       By  default  it is assumed that the SCR configurations apply to all de‐
562       vices, and each device will pick one. If you have several SCR  sat  ca‐
563       bles  connected to one VDR machine, or if you want to explicitly assign
564       the SCR channels to your devices, lines of the form
565
566       1 2 4:
567
568       may be inserted in the scr.conf file, defining the devices that are al‐
569       lowed  to  use  the SCR channels thereafter. In this case, only the de‐
570       vices 1, 2 and 4 would be allowed to use  the  SCR  channels  following
571       this  line  and  up to the next such line, or the end of the file. If a
572       device is listed more than once, only its first appearance counts.
573
574   REMOTE CONTROL KEYS
575       The file remote.conf contains the key assignments for all  remote  con‐
576       trol  units.  Each line consists of one key assignment in the following
577       format:
578
579       name.key  code
580
581       where name is the name of the remote control (for instance KBD for  the
582       PC  keyboard,  or LIRC for the "Linux Infrared Remote Control"), key is
583       the name of the key that is defined (like Up,  Down,  Menu  etc.),  and
584       code  is  a character string that this remote control delivers when the
585       given key is pressed.
586
587   KEY MACROS
588       The file keymacros.conf contains user defined macros that will be  exe‐
589       cuted whenever the given key is pressed. The format is
590
591       macrokey  [@plugin] key1 key2 key3...
592
593       where  macrokey  is the key that shall initiate execution of this macro
594       and can be one of Up, Down, Ok, Back, Left, Right, Red, Green,  Yellow,
595       Blue, 0...9 or User1...User9. The rest of the line consists of a set of
596       keys, which will be executed just as if they had been  pressed  in  the
597       given  sequence.  The optional @plugin can be used to automatically se‐
598       lect the given plugin.  plugin is the name of the  plugin,  exactly  as
599       given in the -P option when starting VDR. There can be only one @plugin
600       per key macro.  For instance
601
602       User1 @abc Down Down Ok
603
604       would call the main menu function of the "abc" plugin and  execute  two
605       "Down" key presses, followed by "Ok".
606       Note  that  the  color  keys  will only execute their macro function in
607       "normal viewing" mode (i.e. when no other menu or  player  is  active).
608       The User1...User9 keys will always execute their macro function.  There
609       may be up to 15 keys in such a key sequence.
610
611   FOLDERS
612       The file folders.conf contains the definitions of folders that  can  be
613       used  in  the  "Edit timer" menu. Each line contains one folder defini‐
614       tion. Leading whitespace and everything after and including  a  '#'  is
615       ignored.  A  line  ending  with '{' defines a sub folder (i.e. a folder
616       that contains other folders), and a line consisting of  only  '}'  ends
617       the definition of a sub folder.
618
619       Example:
620
621       Daily {
622         News
623         Soaps
624         }
625       Archive {
626         Movies
627         Sports
628         Sci-Fi {
629           Star Trek
630           U.F.O.
631           }
632         }
633       Comedy
634       Science
635
636       Note  that  these folder definitions are only used to set the file name
637       under which a timer will store its recording.  Changing  these  defini‐
638       tions in any way has no effect on existing timers or recordings.
639
640   COMMANDS
641       The file commands.conf contains the definitions of commands that can be
642       executed from the vdr main menu's "Commands" option.   Each  line  con‐
643       tains one command definition in the following format:
644
645       title : command
646
647       where  title  is  the  string  that will be displayed in the "Commands"
648       menu, and command is the actual command string that  will  be  executed
649       when  this  option is selected. The delimiting ':' may be surrounded by
650       any number of white space characters. If title ends with the  character
651       '?',  there will be a confirmation prompt before actually executing the
652       command. This can be used for commands that might have serious  results
653       (like  deleting  files etc) to make sure they are not executed inadver‐
654       tently.
655
656       Everything following (and including) a '#' character is  considered  to
657       be comment.
658
659       You  can  have nested layers of command menus by surrounding a sequence
660       of commands with '{'...'}' and giving it a title, as in
661
662       My Commands {
663         First list {
664           Do something: some command
665           Do something else: another command
666           }
667         Second list {
668           Even more: yet another command
669           So much more: and yet another one
670           }
671         }
672
673       Command lists can be nested to any depth.
674
675       By default the menu entries in the "Commands"  menu  will  be  numbered
676       '1'...'9'  to make them selectable by pressing the corresponding number
677       key. If you want to use your own numbering scheme (maybe to  skip  cer‐
678       tain numbers), just precede the titles with the numbers of your choice.
679       vdr will suppress its automatic numbering if the first  entry  in  com‐
680       mands.conf  starts  with  a digit in the range '1'...'9', followed by a
681       blank.
682
683       In order to avoid error messages to the console, every  command  should
684       have stderr redirected to stdout. Everything the command prints to std‐
685       out will be displayed in a result window, with title as its title.
686
687       Examples:
688
689       Check for new mail?: /usr/local/bin/checkmail 2>&1
690       CPU status: /usr/local/bin/cpustatus 2>&1
691       Disk space: df -h | grep '/video' | awk '{ print 100 - $5 "% free"; }'
692       Calendar: date;echo;cal
693
694       Note that the commands 'checkmail' and 'cpustatus' are  only  examples!
695       Don't send emails to the author asking where to find these ;-)
696       The  '?'  at the end of the "Check for new mail?" entry will prompt the
697       user whether this command shall really be executed.
698
699   RECORDING COMMANDS
700       The file reccmds.conf can be used to define commands that  can  be  ap‐
701       plied  to the currently highlighted recording in the "Recordings" menu.
702       The syntax is exactly the same as described for the file commands.conf.
703       When  executing  a command, the directory name of the recording will be
704       appended to the command string, separated by a blank  and  enclosed  in
705       single quotes.
706
707   SVDRP HOSTS
708       The  file svdrphosts.conf contains the IP numbers of all hosts that are
709       allowed to access the SVDRP port.  Each line contains one IP number  in
710       the format
711
712       IP-Address[/Netmask]
713
714       where IP-Address is the address of a host or a network in the usual dot
715       separated notation (as in 192.168.100.1). If the  optional  Netmask  is
716       given  only  the  given number of bits of IP-Address are taken into ac‐
717       count. This allows you to grant SVDRP access to all hosts of an  entire
718       network.  Netmask can be any integer from 1 to 32. The special value of
719       0 is only accepted if the IP-Address is 0.0.0.0, because this will give
720       access to any host (USE THIS WITH CARE!).
721
722       Everything  following  (and including) a '#' character is considered to
723       be comment.
724
725       Examples:
726
727       127.0.0.1        # always accept localhost
728       192.168.100.0/24 # any host on the local net
729       204.152.189.113  # a specific host
730       0.0.0.0/0        # any host on any net (USE WITH CARE!)
731
732   SETUP
733       The file setup.conf contains the basic configuration options  for  vdr.
734       Each  line  contains  one option in the format "Name = Value".  See the
735       MANUAL file for a description of the available options.
736
737   THEMES
738       The  files  /var/lib/vdr/data/themes/<skin>-<theme>.theme  contain  the
739       color theme definitions for the various skins. In the actual file names
740       <skin> will be replaced by the name if the skin this theme belongs  to,
741       and  <theme> will be the name of this theme.  Each line in a theme file
742       contains one option in the format "Name = Value".  Anything after  (and
743       including) a '#' character is comment.
744
745       The definitions in a theme file are either colors or a description.
746       Colors are in the form
747
748       clrTitle = FF123456
749
750       where  the  name  (clrTitle)  is one of the names defined in the source
751       code of the skin that uses this theme, through the  THEME_CLR()  macro.
752       The  value (FF123456) is an eight digit hex number that consist of four
753       bytes, representing alpha (transparency), red, green and blue component
754       of  the color.  An alpha value of 00 means the color will be completely
755       transparent, while FF means it will be opaque. An RGB value  of  000000
756       results in black, while FFFFFF is white.
757
758       A description can be given as
759
760       Description = Shades of blue
761
762       and  will  be  used in the Setup/OSD menu to select a theme for a given
763       skin.  The description should give the user an  idea  what  this  theme
764       will  be  like (for instance, in the given example it would use various
765       shades of blue), and shouldn't be too long to make sure it fits on  the
766       Setup  screen.   The default description always should be given in Eng‐
767       lish. If you want, you can provide language specific descriptions as
768
769       Description.eng = Shades of blue
770       Description.ger = Blautöne
771
772       where the language code is added to the  keyword  "Description",  sepa‐
773       rated by a dot. You can enter as many language specific descriptions as
774       you like, but only those that have a corresponding locale messages file
775       will  be actually used.  If a theme file doesn't contain a Description,
776       the name of the theme (as given in the theme's file name) will be used.
777
778   AUDIO/VIDEO DATA
779       The files 00001.ts...65535.ts are the actual recorded  data  files.  In
780       order  to  keep  the  size of an individual file below a given limit, a
781       recording may be split into several files. The contents of these  files
782       is  Transport  Stream  (TS) and contains data packets that are each 188
783       byte long and start with 0x47. Data is stored exactly as it  is  broad‐
784       cast,  with a generated PAT/PMT inserted right before every independent
785       frame.
786
787   INDEX
788       The file index (if present in a recording directory) contains the  (bi‐
789       nary)   index   data   into   each   of   the   the   recording   files
790       00001.ts...65535.ts. It is used during replay to determine the  current
791       position  within the recording, and to implement skipping and fast for‐
792       ward/back functions.  See the definition of the  cIndexFile  class  for
793       details about the actual contents of this file.
794
795   INFO
796       The file info (if present in a recording directory) contains a descrip‐
797       tion of the recording, derived from the EPG data at recording time  (if
798       such  data was available). The Aux field of the corresponding timer (if
799       given) is copied into this file, using the '@' tag.  This  is  a  plain
800       ASCII  file  and  contains tagged lines like the EPG DATA file (see the
801       description of the epg.data file). Note that the  lowercase  tags  ('c'
802       and  'e')  will  not appear in an info file.  Lines tagged with '#' are
803       ignored and can be used by external tools to store  arbitrary  informa‐
804       tion.
805
806       In  addition  to  the tags used in the epg.data file, the following tag
807       characters are defined:
808
809       F   <frame rate>
810       L   <lifetime>
811       P   <priority>
812       O   <errors>
813       @   <auxiliary data>
814
815       The 'O' tag contains the number of errors that occurred during  record‐
816       ing.  If it is zero, the recording can be safely considered error free.
817       The higher the value, the more damaged the recording is.  If this is an
818       edited  recording, the number of errors is that of the original record‐
819       ing.
820
821   RESUME
822       The file resume (if present in a recording directory) contains the  po‐
823       sition  within  the  recording  where the last replay session left off.
824       The file consists of tagged lines that describe the various  parameters
825       necessary to pick up replay where it left off.
826
827       The following tag characters are defined:
828
829       I   <offset into the file index>
830
831   MARKS
832       The file marks (if present in a recording directory) contains the edit‐
833       ing marks defined for this recording.  Each line contains  the  defini‐
834       tion of one mark in the following format:
835
836       hh:mm:ss.ff comment
837
838       where  hh:mm:ss.ff  is  a frame position within the recording, given as
839       "hours, minutes, seconds and (optional) frame number".  comment can  be
840       any  string and may be used to describe this mark.  If present, comment
841       must be separated from the frame position by at least one blank.
842
843       The lines in this file need not necessarily appear in the correct  tem‐
844       poral sequence, they will be automatically sorted by time index.
845
846       If  a  frame  position doesn't point to an I-frame of the corresponding
847       recording, it will be shifted towards the next I-frame  (either  up  or
848       down, whichever is closer).
849
850       CURRENT RESTRICTIONS:
851
852       - the comment is currently not used by VDR
853
854   SORT MODE
855       The  file  .sort (if present in a directory) contains an integer number
856       defining the mode by which this directory shall  be  sorted  when  pre‐
857       sented in a menu.
858
859       The following values are defined:
860
861       0   sort by name
862       1   sort by time
863
864   RECORDING TIMER
865       The file .timer (if present in a recording directory) contains the full
866       id of the timer that is currently recording into this directory.  Timer
867       ids are of the form
868
869       id@hostname
870
871       where id is the timer's numerical id on the VDR with the name hostname.
872       This file is created when the timer starts recording,  and  is  deleted
873       when it ends.
874
875   EPG DATA
876       The  file  epg.data contains the EPG data in an easily parsable format.
877       The first character of each line defines what kind of  data  this  line
878       contains.
879
880       The following tag characters are defined:
881
882       C   <channel id> <channel name>
883       E   <event id> <start time> <duration> <table id> <version>
884       T   <title>
885       S   <short text>
886       D   <description>
887       G   <genre> <genre>...
888       R   <parental rating>
889       X   <stream> <type> <language> <descr>
890       V   <vps time>
891       @   <auxiliary data>
892       e
893       c
894
895       Lowercase characters mark the end of a sequence that was started by the
896       corresponding uppercase character. The outer frame consists  of  a  se‐
897       quence  of one or more C...c (Channel) entries. Inside these any number
898       of E...e (Event) entries are allowed.  All other tags are optional (al‐
899       though every event should at least have a T entry).
900
901       There  may be several X tags, depending on the number of tracks (video,
902       audio etc.)  the event provides.
903
904       <channel id>        is the "channel ID", made up from the parameters defined in 'channels.conf'
905       <channel name>      is the "name" as in 'channels.conf' (for information only, may be left out)
906       <event id>          is a 32 bit unsigned int, uniquely identifying this event
907       <start time>        is the time (as a time_t integer) in UTC when this event starts
908       <duration>          is the time (in seconds) that this event will take
909       <table id>          is a hex number that indicates the table this event is contained in (if this is left empty it will be set to 0x00; and value less than 0x4E it will be treated as if it were 0x4E)
910       <version>           is a hex number that indicates the event's version number inside its table (optional, ignored when reading EPG data)
911       <title>             is the title of the event
912       <short text>        is the short text of the event (typically the name of the episode etc.)
913       <description>       is the description of the event (any '|' characters will be interpreted as newlines)
914       <genre>             is a two digit hex code, as defined in  ETSI EN 300 468, table 28 (up to 4 genre codes are supported)
915       <parental rating>   is the minimum age of the intended audience
916       <stream>            is the stream content (1 = MPEG2 video, 2 = MP2 audio, 3 = subtitles, 4 = AC3 audio, 5 = H.264 video, 6 = HEAAC audio, 0x09=H.265 video, 0x19 = AC4 audio)
917       <type>              is the stream type according to ETSI EN 300 468
918       <language>          is the three letter language code (optionally two codes, separated by '+')
919       <descr>             is the description of this stream component
920       <vps time>          is the Video Programming Service time of this event
921       <auxiliary data>    is an arbitrary string that can be used by external applications to store data; newline characters will be replaced with '|' when writing the epg.data file.
922
923       This file will be read at program startup in order to restore  the  re‐
924       sults of previous EPG scans.
925
926       Note  that the event id that comes from the DVB data stream is actually
927       just 16 bit wide. The internal representation in VDR allows for 32  bit
928       to  be used, so that external tools can generate EPG data that is guar‐
929       anteed not to collide with the ids of existing data.
930
931       The auxiliary data can be used for plugin specific purposes and has  no
932       meaning  whatsoever to VDR itself. It will not be written into the info
933       file of a recording that is made for such an event.
934
935   CAM DATA
936       The file cam.data contains information about which CAM  in  the  system
937       can  decrypt  a  particular channel.  Each line in this file contains a
938       channel id, followed by one or more (blank separated) numbers, indicat‐
939       ing the CAMs that have successfully decrypted this channel earlier.
940
941       When tuning to an encrypted channel, this information is used to select
942       the proper CAM for decrypting this channel. This channel/CAM  relation‐
943       ship  is  not  hardcoded, though. If a given channel can't be decrypted
944       with a CAM listed in this file, other CAMs will be tried just as  well.
945       The  main purpose of this file is to speed up channel switching in sys‐
946       tems with more than one CAM.
947
948       This file will be read at program startup and saved  when  the  program
949       ends.  If the file is read-only, it will not be overwritten.
950
951   CAM AUTO RESPONSE
952       If your CAM keeps popping up annoying messages or you want to make sure
953       VDR can record programmes with parental rating without having to  enter
954       the  PIN  (in case you can't turn that off in your CAM), you can set up
955       auto responses in the file camresponses.conf.
956
957       Each line in this file specifies one rule to apply  to  texts  received
958       from  the  CAM. If the CAM's menu text matches the text in one of these
959       rules, the given action is taken and sent to the CAM  as  an  automatic
960       response,  without  any  menu  appearing on the screen. The first match
961       wins.
962
963       The format of these rules is:
964
965       nr text action
966
967       where
968
969       nr          is the number of the CAM this action applies to (0 = all CAMs)
970       text        is the text in the CAM menu to react on (must be quoted with '"' if it contains blanks, escape '"' with '\')
971       action      is the action to take if the given text is encountered
972
973       Possible actions are:
974
975       DISCARD     simply discard the menu (equivalent to pressing 'Back' on the RC)
976       CONFIRM     confirm the menu (equivalent to pressing 'OK' without selecting a particular item)
977       SELECT      select the menu item containing the text (equivalent to positioning the cursor on the item and pressing 'OK')
978       <number>    the given number is sent to the CAM as if it were tyed in by the user (provided this is an input field).
979
980       Note that the text given in a rule must match  exactly,  including  any
981       leading  or  trailing  blanks.  If in doubt, you can get the exact text
982       from the log file.  Action keywords are case insensitive.
983
984       Everything following (and including) a '#' character is  considered  to
985       be comment.
986
987   COMMANDLINE OPTIONS
988       If  started without any options, vdr tries to read any files in the di‐
989       rectory /etc/vdr/conf.d with names that do not begin  with  a  '.'  and
990       that end with '.conf'.  These files are read in alphabetical order. The
991       format of these files is
992
993       # comment
994       [name]
995       -a
996       -b 123
997       --long
998       --longarg=123
999
1000       Any lines that begin with '#' as the first non-whitespace character are
1001       considered  comments  and are ignored.  A command line option file con‐
1002       sists of one or more sections, indicated by '[name]', where  'name'  is
1003       either  the  fixed word 'vdr' (if this section contains options for the
1004       main VDR program) or the name of the plugin this  section  applies  to.
1005       Each  option  must be written on a separate line, including the leading
1006       '-' (for a short option) or '--' (for a long option). If the option has
1007       additional  arguments,  they have to be written on the same line as the
1008       option itself, separated from the option with a blank (short option) or
1009       equal sign (long option).
1010

SEE ALSO

1012       vdr(1)
1013

AUTHOR

1015       Written by Klaus Schmidinger.
1016

REPORTING BUGS

1018       Report bugs to <vdr-bugs@tvdr.de>.
1019
1021       Copyright © 2021 Klaus Schmidinger.
1022
1023       This is free software; see the source for copying conditions.  There is
1024       NO warranty; not even for MERCHANTABILITY or FITNESS FOR  A  PARTICULAR
1025       PURPOSE.
1026
1027
1028
10292.6                               27 Dec 2021                           vdr(5)
Impressum