summaryrefslogtreecommitdiff
path: root/FORMATS
blob: 0f0473521f269ecb60bd0363f790a19254eeb656 (plain)
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
Video Disk Recorder File Formats
--------------------------------

* channels.conf

  This file contains the channel setup.
  It consists of two types of lines: "group delimiters" and "channel
  definitions".

  A "group delimiter" is a line starting with a ':' as the very first
  character, followed by arbitrary text.
  Example: ":First group"

  A "channel definition" is a line with channel data, where the fields
  are separated by ':' characters:
  Example: "RTL:12188:h:1:27500:163:104:105:0:12003"

  The fields in a channel definition have the following meaning (from left
  to right):

  - Name: the channel's name (if the name originally contains a ':' character
    it has to be replaced by '|')
  - Frequency in MHz (as an integer)
  - Polarization (one of 'h', 'H', 'v', 'V') **
  - Diseqc number **
  - Symbol rate
  - Video PID
  - Audio PID (either one number, or two, separated by a comma)
  - Teletext PID
  - Conditional Access (0 = Free To Air, 1 = can be decrypted by the first
    DVB card, 2 = can be decrypted by the second DVB card)
  - Program Number

  Fields marked with ** are only meaningful for DVB-S (satellite) receivers.
  DVB-C receivers simply ignore these.

* timers.conf

  This file contains the timer setup.

  The fields in a timer definition have the following meaning (from left
  to right):

  - Timer active (0 = inactive, 1 = active)
    Values larger than '1' can be used by external programs to mark active timers
    and recognize if the user has modified them. When a user modifes an active
    timer the 'active' field will be explicitly set to '1'.
  - Program number of the channel to record
  - Day of recording, either one or more of
      M------ = Monday
      -T----- = Tuesday
      --W---- = Wednesday
      ---T--- = Thrusday
      ----F-- = Friday
      -----S- = Saturday
      ------S = Sunday
    (any combination is possible, for example MTWTF--, and the days may be
    indicated by any characters except '-', so for example ABC---- would set
    a timer that records on monday, tuesday and wednesday) or the "day of month"
    (1..31)
  - Start time (first two digits for the hour, second two digits for the minutes)
  - End time (first two digits for the hour, second two digits for the minutes)
  - Priority (from 0 to 99, 0 = lowest prioity, 99 = highest priority)
  - Guaranteed lifetime of recording (in days); 0 means that this recording may
    be automatically deleted by a new recording with higher priority, 99 means
    that this recording will never be automatically deleted
  - Name of timer (will be used to name the recording); if the name contains
    any ':' characters, these have to be replaced with '|'
  - Summary (any newline characters in the summary have to be replaced with '|';
    the summary may contain ':' characters)

* setup.conf

  This file contains the basic configuration options for VDR.

  Each line contains one option in the format "Name = Value".

  See the MANUAL file for a description of the available options.

* commands.conf

  This file contains the definitions of commands that can be executed from
  the "Main" menus "Commands" option.

  Each line contains one command definition in the following format:

    title : command

  where 'title' is the string the will be displayed in the "Commands" menu,
  and 'command' is the actual command string that will be executed when this
  option is selected. The delimiting ':' may be surrounded by any number of
  white space characters.

  In order to avoid error messages to stderr, every command should have
  stderr redirected to stdout. Everything the command prints to stdout will
  be displayed in a result window, with 'title' as its title.

  Examples:

   1 Check for new mail: /usr/local/bin/checkmail 2>&1
   2 CPU status        : /usr/loval/bin/cpustatus 2>&1
   3 Disk space        : df -h | grep '/video' | awk '{ print 100 - $5 "% free"; }'

  If the first non-blank character of the 'title' is a digit in the range
  1..9, the command can be selected directly by pressing the respective numerical
  key on the remote control.

* marks.vdr

  This file (if present in a recording directory) contains the editing marks
  defined for this recording.

  Each line contains the definition of one mark in the following format:

    hh:mm:ss.ff comment

  where 'hh:mm:ss.ff' is a frame position within the recording, given as "hours,
  minutes, seconds and (optional) frame number". 'comment' can be any string
  and may be used to describe this mark. If present, 'comment' must be separated
  from the frame position by at least one blank.

  The lines in this file need not necessarily appear in the correct temporal
  sequence, they will be automatically sorted by time index.

  CURRENT RESTRICTIONS:

  - the 'comment' is currently not used by VDR
  - marks must have a frame number, and that frame MUST be an I-frame (this
    means that only marks generated by VDR itself can be used, since they
    will always be guaranteed to mark I-frames).

* 001.vdr ... 255.vdr

  These are the actual recorded MPEG data files. In order to keep the size of
  an individual file below a given limit, a recording is split into several
  files. The contents of these files is "Packetized Elementary Stream" (PES)
  and contains ES packets with ids 0xE0 for video, 0xC0 for audio 1 and 0xC1
  for audio 2 (if available).