mirror of
https://github.com/vdr-projects/vdr.git
synced 2025-03-01 10:50:46 +00:00
- Updated channel settings for 'N24' (thanks to Andreas Gebel). - Fixed handling hierarchical recordings menu in case of directories starting with the same sequence of characters. - Fixed handling timers on the 29th, 30th or 31st of a month in case the next month has less than 31 days. - Added a description of the sort order of individual episodes in the recordings menu to the MANUAL. - Removed the EPG bugfix for "Title / Subtitle" cleanup. Apparently Pro-7 has finally stopped this nasty habit. - Added some EPG bugfix statistics (printed to the log file every time the EPG data is cleaned up and when VDR is terminated). Maybe somebody in charge of the EPG data at the listed channels will read this and take the necessary actions to fix these things... - Changed the [dei]syslog macros in tools.h to use a variable number of args, thus making it safe to use them in nested 'if/else' statements. - Fixed error handling in establishing an SVDRP connection (thanks to Davide Achilli) for pointing this out). - The new configuration file 'svdrphosts.conf' is now used to define which hosts may access the SVDRP port (by default only 'localhost' has access). See FORMATS for details. - The special keywords TITLE and EPISODE can now be used in timer file names (see MANUAL and FORMATS for details). - The new setup parameter NameInstantRecord can be used to define how an instant recording will be named (see MANUAL for details). - When looking for the EPG record of the timer that starts a recording, now that record is taken which covers the time calculated as 'start + (Setup.MarginStart * 2) + 1)' in order to have a better chance of hitting the right record in case of an instant recording. Timers that start further in the future should always be programmed via the "Schedules" menu. - The special VPIDs '0' and '1' are now used to enable recording radio channels. Actually '0' should be enough, but '1' must be used with encrypted channels (driver bug?). Note, though, that since VDR is mainly a *video recorder*, some features like, e. g., the progress display, may not work as expected with radio recordings. Thanks to Michael Paar. - Fixed a problem with the ERR macro defined by ncurses.h (thanks to Artur Skawina).
172 lines
6.9 KiB
Plaintext
172 lines
6.9 KiB
Plaintext
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 for DVB-S and DVB-C, kHz for DVB-T (as an integer)
|
|
- Polarization (one of 'h', 'H', 'v', 'V') **
|
|
- Diseqc number **
|
|
- Symbol rate ***
|
|
- Video PID (set to '0' for radio channels, '1' for encrypted radio channels)
|
|
- Audio PID (either one number, or two, separated by a comma)
|
|
If this channel also carries Dolby Digital sound, the Dolby PIDs follow
|
|
the audio PIDs, separated by a semicolon, as in "...:101,102;103,104:..."
|
|
- 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 receivers.
|
|
DVB-C and DVB-T receivers simply ignore these.
|
|
Fields marked with *** are only meaningful for DVB-S and DVB-C receivers.
|
|
DVB-T 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 '|'. If the name shall
|
|
contain subdirectories, these have to be delimited by '~' (since the '/'
|
|
character may be part of a regular programme name).
|
|
The special keywords TITLE and EPISODE, if present, will be replaced
|
|
with the title and episode information from the EPG data at the time of
|
|
recording (if that data is available). If at the time of recording either
|
|
of these cannot be determined, TITLE will default to the channel name, and
|
|
EPISODE will default to a blank.
|
|
- 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/local/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.
|
|
|
|
* svdrphosts.conf
|
|
|
|
This file contains the IP numbers of all hosts that are allowed to access the
|
|
SVDRP port.
|
|
|
|
Each line contains one IP number in the format
|
|
|
|
IP-Address[/Netmask]
|
|
|
|
where 'IP-Address' is the address of a host or a network in the usual dot
|
|
separated notation (as in 192.168.100.1). If the optional 'Netmask' is given
|
|
only the given number of bits of 'IP-Address' are taken into account. This
|
|
allows you to grant SVDRP access to all hosts of an entire network. 'Netmask'
|
|
can be any integer from 1 to 32. The special value of 0 is only accepted if
|
|
the 'IP-Address' is 0.0.0.0, because this will give access to any host (USE
|
|
THIS WITH CARE!).
|
|
|
|
Everything following (and including) a '#' character is considered to be
|
|
comment.
|
|
|
|
* 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). Dolby Digital data is stored in packets with
|
|
ids 0xBD.
|
|
|