mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
3160 lines
178 KiB
Plaintext
3160 lines
178 KiB
Plaintext
Video Disk Recorder Revision History
|
||
------------------------------------
|
||
|
||
2000-02-19: Version 0.01
|
||
|
||
- Initial revision.
|
||
|
||
2000-03-11: Version 0.02
|
||
|
||
- Fixed compilation with only DEBUG_REMOTE=1.
|
||
- Menus now use colors.
|
||
- Support for "Red", "Green", "Yellow", "Blue" buttons.
|
||
- Channels and Timers can now be added, deleted and moved.
|
||
- Basic record/play file handling support (no actual record/playback yet).
|
||
|
||
2000-04-15: Version 0.03
|
||
|
||
- Actual record/replay now works.
|
||
- Dropped the idea of different "recording qualities" (a 36GB harddisk is
|
||
able to store some 18 hours in full quality, so we don't really need that).
|
||
- Termination signals are now caught and the program cleans up before exiting.
|
||
- Support for CICAM.
|
||
|
||
2000-04-24: Version 0.04
|
||
|
||
- Changed name from 'osm' to 'vdr' to avoid mixups with the 'oms' program that
|
||
appears to be in use with DVD replay.
|
||
- Implemented a channel display in the top menu line.
|
||
- Implemented replay progress display (press "Ok" when replaying to bring it up).
|
||
- Implemented direct channel selecting by pressing the numeric keys.
|
||
- Added several 'const' keywords to please stricter compilers.
|
||
- The repeat function for the remote control no longer adapts dynamically
|
||
to the timing of the RCU (this sometimes caused the repeat function to
|
||
kick in too early).
|
||
- Channel selection is now blocked when recording or replaying.
|
||
- Improved process handling.
|
||
|
||
2000-05-27: Version 0.05
|
||
|
||
- Support for more than one DVB card.
|
||
- Simultaneous record and replay (with two DVB cards).
|
||
- Instant recordings no longer get the name "instant". They now get the name
|
||
of the channel, with a prepended '@' character.
|
||
- Timers that are not given an explicit Name now use the channel name with
|
||
a prepended '@' character.
|
||
- If an instant recording is currently active, the "Main" menu now contains
|
||
an option to stop that recording.
|
||
- Timers are now only processed when the Menu is not active. So after editing
|
||
a timer the effect will take place only after the menu has been closed.
|
||
In order to avoid missing a timer event by inadvertently leaving the menu
|
||
open, the menu will be closed automatically after about two minutes of
|
||
inactivity.
|
||
- If a recording is currently being replayed, the "Main" menu now contains an
|
||
option to stop replaying.
|
||
- Displaying the recording DVB interface status in the decimal points of the
|
||
RCU display.
|
||
- Reduced the number of remote control keys. Modified the key assignments for
|
||
the PC keyboard to better resemble the "up-down-left-right-ok" layout on
|
||
menu controlling remote control units.
|
||
|
||
2000-07-25: Version 0.6
|
||
|
||
- Added support for LIRC remote control (thanks to Carsten Koch!).
|
||
There are now three different remote control modes: KBD (PC-Keyboard), RCU
|
||
and LIRC. See the INSTALL file for information on how to enable either of
|
||
these modes. The default mode is now KBD, not RCU as before (to make it
|
||
work immediately even if there is no actual remote control).
|
||
- Fixed small bug in dvbapi.c that was causing some channels (many on hotbird)
|
||
not to be correctly tuned (thanks to Plamen Ganev!).
|
||
- Now clearing the replay buffer in search forward/back, which results in
|
||
faster reaction.
|
||
- The 'Recordings' menu is now listed alphabetically (thanks to Carsten Koch!).
|
||
- The new 'epg2timers' tool (thanks to Carsten Koch!) can be used to convert
|
||
an EPG "merkliste" page (http://www.tvtv.de) to vdr timer entries.
|
||
- The new 'xtvrc2vdr' tool (thanks to Plamen Ganev!) can be used to convert
|
||
'xtvrc' channel files into 'vdr' format.
|
||
- When more than one timer matches at the same time, the first one in the list
|
||
with the highest 'Priority' is selected.
|
||
- The MANUAL section on "Programming the Timer" has been filled in.
|
||
- The year in the "Recordings" menu as well as in the progress display during
|
||
replay has been reduced to 2 digits to allow more space for the recording's
|
||
title. In the internal file structure the year is still stored with 4 digits,
|
||
so there will be no problem at the next turn of the century ;-)
|
||
- Channel names and timer filenames can now contain blanks. To avoid problems
|
||
with file names that contain blanks, all blanks in recording file names are
|
||
converted to underscores.
|
||
- The polarization can now be given in uppercase or lowercase characters in
|
||
'channels.conf'.
|
||
- Fixed buffer initialization to work with DVB driver version 0.6.
|
||
- Implemented the "Simple Video Disk Recorder Protocol" (SVDRP) to control
|
||
the VDR over a network connection.
|
||
- Implemented command line option handling.
|
||
- The program can now run in full background mode by using the --daemon option.
|
||
- Added a "summary" field to the timers (thanks to Carsten Koch!).
|
||
This field can contain a descriptive text of the programme and will be
|
||
displayed when the "Blue" button is pressed on a recording that was created by
|
||
this timer. If the text contains the special character '|', a newline will
|
||
be inserted at that place. When pressing "Ok" on a timer that contains a
|
||
summary field, the summary will be displayed. To edit such a timer the "Red"
|
||
key must be pressed. Timers without a summary still go into Edit mode when
|
||
pressing "Ok". The summary field can only be filled in directly by editing
|
||
the 'timers.conf' file with a text editor, or by defining/modifying the timer
|
||
via the SVDRP interface.
|
||
|
||
2000-08-06: Version 0.61
|
||
|
||
- When scrolling through a list it now moves a full page up or down when the
|
||
cursor reaches the top or bottom of the menu (thanks to Heino Goldenstein!).
|
||
- Added missing '#include <sys/stat.h>' to recording.c.
|
||
- The video directory can now be defined with the command line option -v.
|
||
- There can now be more than one video directory (in case you have several
|
||
disks).
|
||
- Fixed learning key codes for PC keyboard.
|
||
- New command line option '-l' to set the log level.
|
||
- Times in timers.conf are now always printed with 4 digits (leading '0').
|
||
- Slow forward/back mode (thanks to Guido Fiala!).
|
||
- The "Up" key in replay mode no longer restarts replay at the very beginning,
|
||
but rather resumes normal replay mode after a "pause", "forward" or "backward"
|
||
operation. Use the "Skip -60s" function repeatedly to go back to the beginning
|
||
of the recording.
|
||
- Improved reaction on user input in fast/slow forward/back modes.
|
||
- No more upper limit for the value of 'Pnr'.
|
||
- Checking if the video card is really a DVB card.
|
||
- New SVDRP command UPDT to update an existing timer (or add a new one if it
|
||
doesn't yet exist).
|
||
- New version of the 'epg2timers' tool (with a modified channel list).
|
||
- Bugfix in closing window in DEBUG_OSD mode.
|
||
|
||
2000-09-03: Version 0.62
|
||
|
||
- The Makefile now defines DVBDIR to easily point to where the DVB driver
|
||
source is located.
|
||
- When switching channels the current/next information is now displayed if
|
||
available (thanks to Robert Schneider). Since there is now more information
|
||
to read when switching channels, the timeout for displaying it has been
|
||
increased from 2 to 5 seconds (remember that this info can always be recalled
|
||
by pressing the "Ok" button).
|
||
For this feature to work it is necessary that the 'Pnr' parameter in the
|
||
channel setup ('channels.conf') is set to the proper value. This has been
|
||
done for some of the channels in the default 'channels.conf'. Some other
|
||
parameters in the default 'channels.conf' have also been updated, so please
|
||
make sure your timers still use the correct channels!
|
||
|
||
2000-09-10: Version 0.63
|
||
|
||
- The new "Setup" menu allows the user to configure several parameters to his/her
|
||
personal taste (see MANUAL for details).
|
||
- Workaround for a driver timing problem in cDvbApi::Cmd(), which sometimes caused
|
||
the OSD to no longer be displayed (thanks to Niels de Carpentier).
|
||
- Added the '-m486' option to the compiler call.
|
||
- If a channel name contains a colon (':') it is now replaced with a '|' in
|
||
'channels.conf'.
|
||
- Not everybody appears to like the "page scrolling" mechanism introduced by
|
||
Heino Goldenstein in version 0.61, so this is now configurable via the "Setup"
|
||
menu.
|
||
- The new 'dvbrc2vdr' tool (thanks to Plamen Ganev!) can be used to convert
|
||
'dvbrc' channel files into 'vdr' format.
|
||
- Channels can now be "grouped" (thanks to Plamen Ganev!). See MANUAL for details.
|
||
There is currently no mechanism to define and maintain "Channel groups" via
|
||
the menu, so you'll have to insert "Channel group" control lines into your
|
||
'channels.conf' file manually (for example with a text editor).
|
||
- Started a new file named FORMATS with a description of the various file
|
||
formats used by VDR.
|
||
- The "Primary DVB interface" can now be chosen via the "Setup" menu.
|
||
- Display of the "current/next" information when switching channels can now
|
||
be disabled via the "Setup" menu.
|
||
- The "current/next" display now only shows those lines that actually contain
|
||
information.
|
||
- When directly selecting a channel by entering the channel number, the digits
|
||
entered so far together with the name of that channel are displayed on the
|
||
OSD (suggested by Martin Hammerschmid).
|
||
|
||
2000-09-20: Version 0.64
|
||
|
||
- NOTE: If you are using DVB driver version 0.7 you need to load the dvb.o
|
||
module with option outstream=0, so your insmod statement should read
|
||
'insmod dvb.o outstream=0'. This is currently necessary because 'vdr'
|
||
still works with AV_PES data.
|
||
- Video files now have the 'group read' bit set.
|
||
- Fixed handling errors in 'readstring()'.
|
||
- Handling SIGPIPE and re-establishing handler after intercepting a signal.
|
||
- The configuration files are now by default read from the video directory.
|
||
This can be changed by using the new '-c' option. Make sure you copy your
|
||
current '*.conf' files to your video directory ('/video' by default), or
|
||
use "-c ." to get the old behaviour of loading the configuration files
|
||
from the current directory.
|
||
- Waiting for input is now handled by a common function, which improves
|
||
response time on user actions. As a consequence the EIT data may sometimes
|
||
not be displayed, but this will change later when cEIT runs as a separate
|
||
thread.
|
||
- The new SVDRP command 'HITK' (thanks to Guido Fiala!) can be used to 'hit'
|
||
a remote control key. Establish an SVDRP connection and enter HITK without
|
||
a parameter for a list of all valid key names.
|
||
- The new SVDRP command 'GRAB' (thanks to Guido Fiala!) can be used to grab
|
||
the current frame and save it to a file.
|
||
- The new SVDRP commands 'OVL*' can be used to control video overlays (thanks
|
||
to Guido Fiala!). This is mainly for use in the 'kvdr' tool (see the 'kvdr'
|
||
page at http://www.s.netic.de/gfiala).
|
||
- If the name of the video directory used with the '-v' option had trailing
|
||
slashes, the recording file names have been damaged. Trailing slashes are
|
||
now silently removed.
|
||
- Fixed a buffer overflow in EIT parsing.
|
||
- Added a security warning regarding SVDRP to the INSTALL file.
|
||
- Fixed 'confirm' dialog.
|
||
- The daemon mode (option '-d') now no longer works with REMOTE=KBD (there
|
||
is no stdin in daemon mode, so KBD makes no sense - plus it sometimes
|
||
crashed).
|
||
|
||
2000-10-03: Version 0.65
|
||
|
||
- Modified LIRC interface to better handle repeat function.
|
||
- Faster OSD by first writing into a bitmap and then sending the entire bitmap
|
||
to the DVB driver at once (requires the patch 'dvb.c.071.diff' to be applied
|
||
against the version 0.71 DVB driver file 'dvb.c').
|
||
- When switching channels the channel is now immediately displayed, and the
|
||
current/next information is shown as soon as it becomes available.
|
||
- No longer displaying the year in the 'Recordings' menu to save space for the
|
||
title.
|
||
- The 'Recordings' menu now displays a '*' to indicate new recordings.
|
||
- Added the description of the timers.conf file to the FORMATS file (thanks to
|
||
Bastian Guse).
|
||
- Displaying as much as possible of the current/next info (dropping characters
|
||
that would display only partially).
|
||
- In normal viewing mode the '0' key now toggles between the current and the
|
||
previous channel.
|
||
|
||
2000-10-08: Version 0.66
|
||
|
||
- Remote control data is now received in a separate thread, which makes things
|
||
a lot smoother.
|
||
- Repeat and release of remote control keys is now explicitly distinguished.
|
||
- In replay mode the search forward/back and skip functions now have two modes:
|
||
Pressing the key shortly and releasing it starts the function, and pressing it
|
||
again stops it. Pressing and holding down the key starts the function and
|
||
releasing the key stops it.
|
||
- The '@' character that marks an "instant recording" can now be turned off
|
||
in the "Setup" menu (thanks to Matthias Schniedermeyer).
|
||
- Pressing the "Back" button while replaying now stops replaying and brings up
|
||
the "Recordings" menu (suggested by Carsten Koch). This can be used to easily
|
||
delete a recording after watching it, or to switch to a different recording.
|
||
- The "Recordings" menu now places the cursor on the last replayed recording, if
|
||
that file still exists.
|
||
- The "Blue" button in the "Main" menu can now be used to "Resume" a previously
|
||
stopped replay session (suggested by Martin Hammerschmid).
|
||
- The low and high LNB frequencies can now be changed in the "Setup" menu.
|
||
|
||
2000-11-01: Version 0.67
|
||
|
||
- The EIT information is now gathered in a separate thread.
|
||
- The sytem time can now be synchronized to the time broadcast in the DVB data
|
||
stream. This can be enabled in the "Setup" menu by setting "SetSystemTime" to
|
||
1. Note that this works only if VDR is running under a user ID that has
|
||
permisson to set the system time.
|
||
- The new item "Schedule" in the "Main" menu opens VDR's EPG (thanks to Robert
|
||
Schneider). See the MANUAL file for a detailed description.
|
||
- The new setup parameters MarginStart and MarginStop define how long (in
|
||
minutes) before the official start time of a broadcast VDR shall begin
|
||
recording, and how long after the official end time it shall stop recording.
|
||
These are used when a recording is programmed from the "Schedules" menu.
|
||
- The delay value in the dvb.c.071.diff patch to the driver has been increased
|
||
to '3', because on some systems the OSD was not displayed correctly. If you
|
||
are running an already patched version 0.71 driver and encounter problems
|
||
with the OSD, please make sure the parameter in the ddelay call is '3', not
|
||
'2'.
|
||
- Fixed initializing the RCU remote control code (didn't work after switching
|
||
on the system).
|
||
- Problematic characters in recording names (which can come from timers that
|
||
are programmed via the "Schedules" menu) are now replaced by suitable
|
||
substitutes.
|
||
|
||
2000-11-19: Version 0.68
|
||
|
||
- Date and time in the title of an event info page are now always right adjusted.
|
||
- The 'current channel' is now handled device specific (in case there is more
|
||
than one DVB card).
|
||
- The 'SetSystemTime' option in the "Setup" menu is now shown as "yes/no".
|
||
- Implemented "internationalization" (see 'i18n.c' for information on how to
|
||
add new languages). Thanks to Miha Setina for translating the OSD texts to
|
||
the Slovenian language.
|
||
- Fixed learning keys on the PC keyboard (display oscillated).
|
||
- Fixed a timing problem with OSD refresh and SVDRP.
|
||
- Avoiding multiple definitions of the same timer in the "Schedule" menu (this
|
||
could happen when pressing the "Red" button while editing the timer).
|
||
- There can now be a configuration file named 'commands.conf' that defines
|
||
commands that can be executed through the "Main" menu's "Commands" option
|
||
(see FORMATS for details on how to define these commands).
|
||
- Added a 'fixed' font for use with the output of system commands.
|
||
- The 'Priority' parameter of the timers is now also used to interrupt a low
|
||
priority timer recording if a higher priority timer wants to record.
|
||
- A timer recording on a DVB card with a CAM module will now be interrupted
|
||
by a timer that needs to use this specific DVB card to record an encrypted
|
||
channel, if the timer currently occupying this DVB card doesn't need the
|
||
CAM module (and thus can continue recording on a different DVB card).
|
||
- The "Yellow" button in the "What's on now/next?" menus now displays the
|
||
schedule of the current channel from that menu.
|
||
- All DVB cards in a multi-card system now write their EIT information into the
|
||
same data structure.
|
||
- If there is more than one DVB card in the system, the non-primary cards are
|
||
now used to periodically scan through the channels in order to keep the
|
||
EPG info up-to-date. Scanning kicks in after 60 seconds of user inactivity
|
||
(timeout in order to keep user interactions instantaneously) and each channel
|
||
that has the 'pnr' parameter defined in 'channels.conf' is switched to for
|
||
20 seconds. If there is only one DVB card in the system, that card will start
|
||
scanning after 5 hours (configurable through the "Setup" menu) of user inactivity
|
||
and will switch back to the channel it originally displayed at the first sign of
|
||
user activity. Any scanning will only occur if that particular card is not
|
||
currently recording or replaying.
|
||
- Now shifting the 'Subtitle' info into the 'ExtendedDescription' on stations
|
||
that don't send the EIT information correctly (like, e.g., 'VOX').
|
||
- Implemented a 10 seconds latency when removing files.
|
||
- Fixed unwanted reaction on the "Green" and "Yellow" button in the "Event" display.
|
||
- Implemented 'Transfer Mode' to display video data from the DVB card that actually
|
||
can receive a certain channel on the primary interface. This is currently in
|
||
an early state and may still cause some problems, but it appears to work nice
|
||
already.
|
||
|
||
2001-01-18: Version 0.70
|
||
|
||
- VDR now requires driver version 0.8.1 or higher.
|
||
- Recordings are now saved in PES mode. Note that you now need to install the
|
||
driver *WITHOUT* 'outstream=0'! This is the default when you 'make insmod' in
|
||
the DVB/driver directory.
|
||
Old recordings (in AV_PES mode) can still be replayed (as long as the driver
|
||
still supports replaying AV_PES files). The only limitation with this is that
|
||
in fast forward/back mode the picture may be slightly distorted and there may
|
||
be sound fragments.
|
||
- The EPG data is now dumped into the file /video/epg.data every ten minutes.
|
||
Use the Perl script 'epg2html.pl' to convert the raw EPG data into a simple
|
||
HTML programme listing.
|
||
- Fixed handling of channel switching with the "Blue" button in the "What's on
|
||
now/next?" menus.
|
||
- Fixed saving the MarginStop setup parameter.
|
||
- Fixed missing initialization in cConfig.
|
||
- Implemented "On Disk Editing".
|
||
- There is no more default 'timers.conf' file.
|
||
- Added Italian language texts (thanks to Alberto Carraro).
|
||
- Fixed starting a replay session when the program is currently in 'Transfer
|
||
Mode'.
|
||
- Fixed setting/modifying timers via SVDRP with empty summary fields.
|
||
- Fixed a problem with recordings that have a single quote character in their
|
||
name (this is now mapped to 0x01).
|
||
- Changed the value for Diseqc to '0' in the default 'channels.conf'.
|
||
- Fixed displaying channels and recording status in the RCU's LED display when
|
||
a recording is interrupted due to higher priority.
|
||
- Implemented safe writing of config files (first writes into a temporary file
|
||
and then renames it).
|
||
- In case the video data stream is broken the log message will come only every
|
||
5 seconds.
|
||
- The current channel is now saved in the 'setup.conf' file when VDR is cancelled,
|
||
and will be restored next time it is started (thanks to Deti Fliegl).
|
||
- The EIT scanning thread is now locked when switching channels to avoid problems.
|
||
- Encrypted channels can now be selected even without knowing the PNR (however, it
|
||
is still necessary for the EPG info).
|
||
|
||
2001-02-24: Version 0.71
|
||
|
||
- Fixed 'Transfer Mode' in cases where a non-primary interface was switched to
|
||
a channel that only the primary interface can receive (which could happen in
|
||
the EPG scanner).
|
||
- The EPG scanner now starts with the first channel (it used to start with the
|
||
second channel).
|
||
- Reactivated setting the PNR.
|
||
- Adapted the frame scanning to the new muxing of the driver.
|
||
- The new compile time option REMOTE=NONE can be used to compile VDR without
|
||
any remote control support (for applications where it shall be controlled
|
||
exclusively via SVDRP).
|
||
- The new command line option -D can be used to define which DVB interfaces
|
||
a certain instance of VDR shall use.
|
||
- The "Left" and "Right" keys are now used to page up and down in lists (thanks
|
||
to Martin Hammerschmid). Since the "Timers" menu already uses these keys to
|
||
(de)activate timers, this functionality is not available there.
|
||
- The "Main" and "Commands" menu now support "hotkeys", which means that if the
|
||
first non-blank character of a menu item is a digit in the range 1..9, that
|
||
item can be selected by pressing the respective numeric key on the remote
|
||
control.
|
||
- The channel data in 'channels.conf' now contains the teletext PID (thanks to
|
||
Dave Chapman). Existing files will be read normally (and the teletext PID set
|
||
to 0), but once they are written back (due to some channel editing) the file
|
||
will have the new format.
|
||
- The EPG scanner now scans each transponder only once per cycle.
|
||
- Deleted recordings are now automatically removed from disk after a while (not
|
||
only when disk space is being needed for a new recording).
|
||
- Fixed repeat function in LIRC remote control.
|
||
- Changed the MAXDVBAPI macro in dvbapi.c to 4 in order to directly support the
|
||
maximum possible number of DVB cards.
|
||
- The 'Ca' parameter in the default 'channels.conf' has been changed from '2'
|
||
to '3' because the VDR prototype now has 3 DVB cards (and currently the CAM
|
||
module only works if it is inserted into the last DVB card).
|
||
- The "Now", "Next" and "Schedule" menus now remember the current channel and
|
||
restore the list when switching between them.
|
||
- The "Green" button in the "Recordings" menu can now be used to rewind a
|
||
recording and play it from the very beginning.
|
||
- Fixed handling ':' in timer filenames and '\n' in timer summaries (see FORMATS).
|
||
- When removing recordings empty directories are now removed from the video
|
||
directory.
|
||
- Added the "schnitt" tools from Matthias Schniedermeyer.
|
||
- New SVDRP command MESG to display a short message on the OSD.
|
||
- The Perl script 'svdrpsend.pl' can be used to send SVDRP commands to VDR.
|
||
- SVDRP can now immediately reuse the same port if VDR is restarted.
|
||
- SVDRP now has a timeout after which the connection is automatically closed
|
||
(default is 300 seconds, can be changed in "Setup").
|
||
- The compile time switch VFAT can be used to make VDR avoid the ':' character
|
||
in file names (VFAT can't handle them). Do 'make VFAT=1' to enable this.
|
||
- Support for DVB-C (thanks to Hans-Peter Raschke and Peter Hofmann).
|
||
See the INSTALL file for more information about the use of VDR with cable.
|
||
- Fixed an occasional segfault in the EIT processor.
|
||
- A value of '0' for the EPGScanTimeout setup parameter now completely turns off
|
||
scanning for EPG data on both single and multiple card systems.
|
||
- New setup parameter "PrimaryLimit" that allows to prevent timers from using the
|
||
primary DVB interface in multi card systems. Default value is 0, which means
|
||
that every timer may use the primary interface.
|
||
- The 'active' field of a timer will now be explicitly set to '1' if the user
|
||
modifies an active timer (see FORMATS for details).
|
||
- The new command line option -w can be used to activate a watchdog that makes
|
||
VDR exit in case the main program loop does not respond for more than the
|
||
given number of seconds. This is mainly useful in combination with the new
|
||
'runvdr' script that restarts VDR in case is has exited.
|
||
|
||
2001-04-01: Version 0.72
|
||
|
||
- Fixed SVDRP commands LSTC and LSTT to make them return an error message if
|
||
no channels or timers are defined.
|
||
- Enhanced 'channels.conf.cable' (thanks to Hans-Peter Raschke).
|
||
- Fixed switching to another channel via the EPG while a recording is being
|
||
replayed.
|
||
- Fixed a memory leak in the EIT processor that happened when the system time
|
||
was set.
|
||
- Removed some redundant code from the cListBase destructor.
|
||
- Fixed internationalization of some "Main" menu texts.
|
||
- Updated 'channels.conf' after the recent changes of Premiere World (thanks
|
||
to Axel Gruber).
|
||
- Redesigned the ring buffer to make it work with two separate threads for
|
||
input and output (also prepared for using a remultiplexer).
|
||
- Fixed setting system time from transponders.
|
||
- Fixed a segfault in the Schedule menu in case there is no EPG information.
|
||
- The 'runvdr' script now kills any leftover vdr threads before restarting it.
|
||
- Fixed a problem with Daylight Saving Time when displaying the times of
|
||
recordings.
|
||
- Added Dutch language texts (thanks to Arnold Niessen).
|
||
- The new command line option -t can be used to set the controlling terminal
|
||
(thanks to J<>rgen Sauer). This is especially useful when starting VDR through
|
||
an entry in /etc/inittab (see INSTALL).
|
||
- Since the CAM module only works if it is installed in the "highest" DVB card,
|
||
recordings now search for a free DVB card from lowest to highest index (as
|
||
opposed to the previous "highest to lowest" search) in order to not use the
|
||
CAM card for FTA recordings unless necessary. This is only important for
|
||
systems with three or more DVB cards.
|
||
- Added the "statdvb2vdr" tool from Hans-Peter Raschke.
|
||
- Fixed a segfault that sometimes happened when killing VDR.
|
||
- VDR now returns an exit status of '2' in case of an error at startup, instead
|
||
of terminating with 'abort()' (which caused a core dump).
|
||
- SVDRP now also works with clients that don't do line buffering (like the
|
||
Windows 'telnet').
|
||
- Empty lines in config files no longer cause error messages.
|
||
- New SVDRP command LSTE to list the EPG data.
|
||
- The SVDRP HELP command now prints the topics in several columns.
|
||
|
||
2001-06-02: Version 0.80
|
||
|
||
- VDR now requires driver version 0.9.0 or higher.
|
||
- Switched to the "new API" (thanks to Dave Chapman for his great support in
|
||
this task).
|
||
- New setup parameter "LnbSLOF" that defines the switching frequency of the LNB.
|
||
- Fixed a bug in the EPG scanner with more than one DVB card.
|
||
- Fixed checking for free disk space, so that it works with NFS mounted drives.
|
||
- Files are now created with mode 644.
|
||
- Fixed checking the exit status in the 'runvdr' script.
|
||
- Activated loading the driver in 'runvdr'. Please read the comments in 'runvdr'
|
||
for details.
|
||
- The new "emergency exit" feature automatically triggers a restart of VDR (if
|
||
used with 'runvdr', otherwise it simply exists) if
|
||
* tuning the channel for a recording fails
|
||
* no useful data is received within the first 1MB of a recording
|
||
* no data is received within a recording for more than 5 seconds
|
||
This should make sure that a recording is successfully restarted after any
|
||
problems.
|
||
- Processing the EIT data is now disabled during replay and 'Transfer Mode' in
|
||
order to avoid video and audio glitches (there appears to be a bandwidth
|
||
problem somewhere in the driver/firmware/hardware).
|
||
- Due to the reduced amount of OSD memory provided by the driver the number of
|
||
lines in the OSD had to be reduced by 2. By rearranging some of the display
|
||
items the amount of visible information remained the same as before, though.
|
||
If your DVB card has even less memory (which would result in only the
|
||
channel switching display and the replay progress display being visible, but
|
||
no "Main" menu), try reducing the constant 'MenuLines' in dvbapi.h (currently
|
||
'13') even further.
|
||
- There are two new setup parameters to define the "Default Priority" and
|
||
"Default Lifetime" when creating a new timer event.
|
||
- The meaning of the "Lifetime" parameter has been modified: a value of '99'
|
||
now means that the recording will live "forever", and a value of '0' means
|
||
that the recording has no guaranteed lifetime and will be deleted whenever
|
||
a new recording with higher priority needs disk space.
|
||
- Updated version of Matthias Schniedermeyer's 'schnitt' tools.
|
||
- New 'master-timer' tool (thanks to Matthias Schniedermeyer).
|
||
|
||
2001-06-12: Version 0.81
|
||
|
||
- Fixed handling the case where the driver reports EAGAIN during recording,
|
||
but no data comes within 5 seconds.
|
||
- Fixed EPG scanning on single DVB card systems.
|
||
- There can now be two audio PIDs per channel, which can be toggled via the
|
||
"Green" button in the "Main" menu. The "Edit Channel" menu therefore now
|
||
has two audio PID fields (Apid1 and Apid2). By default, Apid2 is 0, which
|
||
means there is no alternate audio track.
|
||
- Fixed replaying in case the driver reports EAGAIN.
|
||
- Now 'runvdr' checks if the driver is already loaded (thanks to Henning
|
||
Holtschneider).
|
||
- Fixed removing recordings with Lifetime = 99.
|
||
- Improved channel switching.
|
||
|
||
2001-06-16: Version 0.82
|
||
|
||
- Increased timeout until reporting "broken video data stream" when recording.
|
||
- Increased amount of non-useful data received by cRemux before assuming the
|
||
recording will fail.
|
||
- If there are two audio PIDs defined for a channel, both audio tracks will
|
||
now be recorded and can be selectively replayed later. See the FORMATS file
|
||
for details on how these different audio tracks are stored in the recorded
|
||
files. In order for this to work properly you need to use a driver version
|
||
dated 2001-06-16 or later, where the default PES filter buffer size has been
|
||
reduced. This will create packets for the second audio track that are small
|
||
enough to multiplex smoothly with the video data.
|
||
- Fixed a bug in the editing mechanism (didn't work with recordings that
|
||
consist of more than one data file).
|
||
- The compile time switch VFAT has been fixed to recognize the ':' character
|
||
in recording names, too.
|
||
- Setting all PIDs to 0x1FFF before switching channel.
|
||
- New setup parameter "VideoFormat" to define the aspect ratio of the tv set
|
||
in use (4:3 or 16:9).
|
||
|
||
2001-06-26: Version 0.83
|
||
|
||
- Avoiding "Device or resource busy" error message when setting PIDs.
|
||
- Added Portugese language texts (thanks to Paulo Lopes).
|
||
- Recording and replaying Dolby Digital (AC3) sound.
|
||
- No longer getting stuck when a channel doesn't sync while switching
|
||
with the 'Up' and 'Down' keys.
|
||
|
||
2001-07-22: Version 0.84
|
||
|
||
- Fixed video packet scanning to make it recognize the whole range of
|
||
allowed video packet ids.
|
||
- Added an additional "emergency exit" in case channel switching doesn't
|
||
work several times in a row (when will the driver finally become stable
|
||
enough to allow rock solid channel switching??).
|
||
- No longer sending a Diseqc command if the Diseqc value for a given channel
|
||
is '0'. Previously this caused problems with some multi-switches (thanks to
|
||
Markus Lang and Ulrich R<>der).
|
||
- When switching channels by entering the channel number via the numeric keys
|
||
on the remote control, the channel number displayed is now followed by the
|
||
'-' character to indicate that additional digits can be entered.
|
||
- Increased the timeout for numeric channel switching from 500ms to 1s.
|
||
- Fixed handling the "Green" button in the "Schedules" menu for channels that
|
||
have a second audio PID.
|
||
- Fixed high system load when displaying a still picture in replay.
|
||
- Fixed a hanging SVDRP connection if the client dies without issuing QUIT.
|
||
- Increased the frame buffer size to 192KB.
|
||
- Removed a superfluous VIDEO_FREEZE call in the replay buffer.
|
||
- Added French language texts (thanks to Jean-Claude Repetto).
|
||
- Modified OSD to use 2bpp windows (4 colors) in order to work with less
|
||
memory, allow a larger OSD window and be faster. The group separators in the
|
||
"Channels" menu had to be given a different color.
|
||
- Moved the channel display to the bottom of the screen.
|
||
- Displaying the frame counter in the replay progress display only when editing
|
||
a mark.
|
||
- Fixed handling characters above 0xEF in SVDRP.
|
||
- Fixed a possible crash in parsing incorrect lines in 'channels.conf'.
|
||
- New channel settings for Premiere World (Dolby Digital PIDs not yet
|
||
available).
|
||
- Increased the buffer for key names received from LIRC (thanks to Andre
|
||
Valentin).
|
||
- Fixed handling a channel group separator at the very beginning of the
|
||
'channels.conf' file.
|
||
|
||
2001-07-29: Version 0.85
|
||
|
||
- Added Norwegian language texts (thanks to J<>rgen Tvedt).
|
||
- Increased the usleep value in cDvbOsd::Cmd() to 5000 in order to work on
|
||
systems with the KURT/utime-patch (thanks to Guido Fiala).
|
||
- Changed the check whether the driver is loaded in runvdr to check for the
|
||
'dvb' module (the last one loaded).
|
||
- Fixed repeat function with LIRC (thanks to Stefan Huelswitt).
|
||
- Increased the upper limit for the symbol rate to 30000 (thanks to Ulrich
|
||
R<>der).
|
||
- Made the position of the channel display configurable (thanks to Stefan
|
||
Huelswitt).
|
||
- Made the width and height of the OSD configurable (thanks to Stefan Huelswitt).
|
||
- DiSEqC support can now be generally enabled/disabled in the Setup menu. This
|
||
may be necessary if your multiswitch gets irritated by the default DiSEqC
|
||
codes '0' (thanks to Markus Lang).
|
||
- Fixed replaying in case there is no index file.
|
||
- Fixed jumping to an editing mark when replay has been paused.
|
||
- Avoiding unnecessary code execution in the replay progress display (thanks
|
||
to Guido Fiala).
|
||
- When entering time values the digits that still have to be entered are now
|
||
shown as '-' (as in "1-:--").
|
||
- When setting an editing mark while the progress display is not active, the
|
||
display will now be turned on for a short while to indicate the successful
|
||
setting of the mark.
|
||
- Updated 'channels.conf' for Premiere World (thanks to Mel Sch<63>chner).
|
||
Check your timers if you use this channels.conf file, since the sequence of
|
||
several PW channels has been changed.
|
||
- Changed the color of "Info" messages to "black on green" and that of the
|
||
confirmation messages (like "Delete...") to "black on yellow".
|
||
- Fixed display with DEBUG_OSD (it still crashes sometimes, esp. when replaying,
|
||
but I can't seem to find what causes this... any ideas anybody?).
|
||
- Avoiding audio/video distortions in 'Transfer Mode' by no longer actually
|
||
tuning the primary interface (which can't receive this channel, anyway).
|
||
Apparently the driver gets irritated when the channel is switched and a
|
||
replay session is started immediately after that.
|
||
- Increased timeout until reporting "video data stream broken" when recording.
|
||
- Explicitly switching back to the previously active channel after ending a
|
||
replay session (to have it shown correctly in case it was in 'Transfer Mode').
|
||
|
||
2001-08-06: Version 0.90
|
||
|
||
- Modified the display of the channel group separators (thanks to Markus Lang
|
||
for this suggestion).
|
||
- Added support for replaying DVDs (thanks to Andreas Schultz). See INSTALL for
|
||
instructions on how to compile VDR with DVD support.
|
||
- Fixed replay progress display in case replay is paused while watching an
|
||
ongoing recording.
|
||
- Ringbuffer uses semaphores to signal empty/full conditions.
|
||
- Fixed calculating the timeout value in cFile::FileReady() (thanks to
|
||
Wolfgang Henselmann-Weiss).
|
||
|
||
2001-08-12: Version 0.91
|
||
|
||
- Fixed displaying colored button texts that are too long.
|
||
- Suppressing replay progress display when replaying a DVD.
|
||
- Updated channels.conf.cable (thanks to Uwe Scheffler).
|
||
- Updated French OSD texts (thanks to Jean-Claude Repetto).
|
||
- Improved AC3 decoding when replaying DVDs (thanks to Matjaz Thaler).
|
||
- Fixed handling DVB card indexes when using only one card in a multi-card
|
||
system.
|
||
- Changed the 'Eject DVD' button text to a simple 'Eject' (the German text
|
||
was too long...).
|
||
- Made the font file generation more stable (thanks to Artur Skawina).
|
||
- Changed the default value for the "DiSEqC" setup parameter to "off".
|
||
- The new command line option '-E' can be used to define where the EPG data
|
||
shall be written to. This is especially useful if VDR runs in a system
|
||
that turns off the video disk when it is not used, and therefore needs
|
||
to write the EPG file to a ramdisk (or turn off writing it alltogether).
|
||
See 'vdr --help' for details.
|
||
- Making sure the disk is up and running before starting recording (this
|
||
is important for systems that turn off the video disk when it is not used).
|
||
- Added the "Jump" function in replay mode (thanks to Stefan Huelswitt).
|
||
See the description of the "Red" key in MANUAL under "Replay Control" for
|
||
details.
|
||
- Fixed displaying editing marks when toggling a mark in "pause" mode.
|
||
- If there is no free DVB device to record, the log message will now be given
|
||
only once.
|
||
- Made I/O more robust by handling EINTR (thanks to Werner Fink).
|
||
|
||
2001-08-18: Version 0.92
|
||
|
||
- The "channel not sync'ed" log message now also lists the card number.
|
||
- Now using the EIT services from 'libdtv' (thanks to Rolf Hakenes), which
|
||
provides EPG information for NVOD ("Near Video On Demand") channels.
|
||
- Doing some bug fixing on the EPG data (some tv stations apparently have
|
||
their own idea on how to fill in the data...). The level up to which EPG
|
||
bugs are fixed can be controlled with the EPGBugfixLevel parameter in the
|
||
"Setup" menu (see MANUAL for details, and cEventInfo::FixEpgBugs() in eit.c
|
||
for the actual implementation).
|
||
- Fixed broken recordings after a driver buffer overflow.
|
||
- Fixed the chirping sound after Pause/Play of a DVD (thanks to Andreas
|
||
Schultz).
|
||
|
||
2001-08-26: Version 0.93
|
||
|
||
- The menus and the channel display now show the current date and time.
|
||
- The new Setup parameter MaxVideoFileSize can be used to customize the
|
||
maximum size of the recorded video files.
|
||
- Fixed a bug in handling repeating timers that record over midnight (the
|
||
calculation of matching timers has been completely rewritten).
|
||
- Timers that are currently recording are now marked with '#' in the "Timers"
|
||
menu.
|
||
- Timers are now sorted in the "Timers" menu, showing the sequence in which
|
||
they will be recording. This can be disabled in the "Setup" menu. Note
|
||
that the "Mark" button doesn't work if timers are displayed sorted.
|
||
|
||
2001-09-02: Version 0.94
|
||
|
||
- Implemented automatic shutdown (see INSTALL and MANUAL for details).
|
||
- New SVDRP command NEXT to show the next timer event.
|
||
- The new remote control key "Power" can be used to turn the VDR machine
|
||
off (this requires the presence of the '-s' option).
|
||
- Fixed code for the default "Ok" button on the PC keyboard (was 0x162 on
|
||
the "good old" keyboards (with the F-keys at the left side), while it changed
|
||
to 0x15E on the newer keyboards).
|
||
- When a recording is edited, the summary information (if present) is now
|
||
also copied.
|
||
- When a recording is running on the primary interface, any attempt to change
|
||
the current channel will now lead to a "Channel locked" message.
|
||
- The main program loop now first checks whether any timer recordings are
|
||
finished, before starting a new timer recording. This is important in case
|
||
one timer ends at the same time another timer starts.
|
||
- New setup parameter OSDMessageTime to define how long an OSD message shall
|
||
be displayed.
|
||
- The "File" parameter of a timer can now contain the '~' character to store
|
||
the recording in a hierarchical directory structure. The '~' character has
|
||
been chosen since the file system's directory delimiter '/' may be part of
|
||
a regular programme name (showing the directory hierarchy in the "Recordings"
|
||
menu will follow later).
|
||
- Repeating timers now create recordings that contain the 'Subtitle' information
|
||
from the EPG data in their file name. Typically (on tv stations that care
|
||
about their viewers) this contains the episode title of a series. The
|
||
subtitle is appended to the timer's file name, separated by a '~' character,
|
||
so that it results in all recordings of this timer being collected in a
|
||
common subdirectory. You can disable this with the 'UseSubtitle' parameter
|
||
in the "Setup" menu.
|
||
- The summary information is now taken from the EPG data at the actual time of
|
||
recording (no longer at the time the timer is created in the "Schedule" menu).
|
||
If a timer already has summary data, that data will be used. If you have
|
||
repeating timers in your 'timers.conf', you may want to make sure they do
|
||
NOT contain any summary information (that's the last field in the timer
|
||
definitions). Use your favourite text editor to delete that information.
|
||
That way every recording will store the actual summary data at the time of
|
||
the recording.
|
||
|
||
2001-09-16: Version 0.95
|
||
|
||
- Fixed behaviour in case the shutdown didn't take place (there were many
|
||
"next timer event at..." messages in that case).
|
||
- Reduced the default value for MinEventTimeout to 30 minutes.
|
||
- Fixed detecting manual start in shutdown feature.
|
||
- An error message is now displayed in case the 'Transfer Mode' can't be
|
||
started because the necessary DVB card is currently recording (or there
|
||
is no DVB card that can access this channel).
|
||
- Fixed toggling channels with the '0' key in case the "Ok" button has been
|
||
pressed to display the current/next information.
|
||
- Pressing the "Power" key now always initiates the shutdown sequence (after
|
||
user confirmation in case of a recording timer), event if there is currently
|
||
a menu or a replay session active. Note the additional remarks in INSTALL
|
||
regarding the values of the two parameters given to the shutdown program
|
||
in case of a currently recording timer.
|
||
- Switching through channel groups with the "Left" and "Right" keys now
|
||
always starts at the group that contains the current channel.
|
||
- Implemented "Multi Speed Mode" (thanks to Stefan Huelswitt).
|
||
- Implemented backtracing to hit the right spot after fast forward/rewind
|
||
(thanks to Stefan Huelswitt).
|
||
- Implemented replay mode display (thanks to Stefan Huelswitt, with a few
|
||
rewrites by kls).
|
||
- Changed the size of all input buffers used to parse config files or receive
|
||
SVDRP commands to the same value of 10KB. This allows long strings to be
|
||
used in the 'summary' field of a timer, for instance.
|
||
- The pipe to the Dolby Digital replay command (option '-a') now closes all
|
||
unused file descriptors in the child process to avoid crashing when the
|
||
OSD is used (thanks to Andreas Vitting).
|
||
- Switched to the driver's new tuning API (VDR now requires a driver version
|
||
dated 2001-09-14 or higher).
|
||
- Changed obsolete macro VIDEO_WINDOW_CHROMAKEY to VID_TYPE_CHROMAKEY (thanks
|
||
to Guido Fiala).
|
||
- New version of the "Master-Timer" tool (thanks to Matthias Schniedermeyer).
|
||
- Better error handling when writing configuration files.
|
||
- Fixed putting the final editing mark into the edited version's marks file.
|
||
- Fixed manipulating an editing mark at the very end of a recording.
|
||
- Fixed starting a new replay immediately after stopping a previous one (had
|
||
caused a mix between live video and replay).
|
||
- Three new keys ("Volume+", Volume-" and "Mute") to control the DVB card's
|
||
audio output volume.
|
||
- New version of the 'epg2timers' tool (thanks to Carsten Koch).
|
||
|
||
2001-09-23: Version 0.96
|
||
|
||
- Made VDR compile with libdvdread-0.9.1 (thanks to Andreas Schultz).
|
||
Note that you now _need_ version 0.9.1 of libdvdread to compile VDR with
|
||
DVD support!
|
||
- Several fixes to the replay mode display (thanks to Stefan Huelswitt):
|
||
no more replay mode display when pressing the "Green" or "Yellow" button
|
||
(Skip +/-60s); fixed timeout when pressing '0' to set an editing mark while
|
||
the progress display is not shown; mode display is shown after progress
|
||
display is closed; pressing "Ok" while the mode display is on brings up
|
||
the progress display; no more unnecessary display of "normal play mode".
|
||
- Supplying the new frontend parameter 'Inversion' (currently it is always
|
||
set to INVERSION_AUTO, which should work with all channels on Astra).
|
||
- Removing unnecessary double quotes from EPG Subtitle in EPGBugfixLevel >=1.
|
||
- EPG info is now updated if the contents changes but the ID remains the same.
|
||
- Fixed handling SVDRP commands whith more than one blank between the command
|
||
word and the options.
|
||
- The current volume setting is now saved to setup.conf and restored at the
|
||
next program start.
|
||
- New command line option '-r' to define a command that gets called before and
|
||
after each recording (see INSTALL for details).
|
||
- Implemented a check to see whether the system time is running linearly.
|
||
- Writing the current time (as seen by VDR) into the log file when starting
|
||
a timer recording (this may help debugging cases where timers don't start
|
||
at the expected time).
|
||
- Made the volume, mute and power keys work when a menu is active, too (thanks
|
||
to Matthias Weingart).
|
||
|
||
2001-10-21: Version 0.97
|
||
|
||
- Implemented a lock file to prevent more than one instance of VDR from removing
|
||
files from the video directory at the same time.
|
||
- The new setup parameter SplitEditedFiles can be used to control whether or
|
||
not the result of an editing process shall be written into separate files.
|
||
- Fixed handling repeat function when using LIRC (thanks to Matthias Weingart).
|
||
- The shutdown program (defined with the '-s' option) now also gets the channel
|
||
number and recording title of the timer (see INSTALL).
|
||
- New channel data for 'Premiere One', 'Premiere X-Action', 'Fox Kids T<>rkce'
|
||
and 'N24' (thanks to Andreas Share, Ulrich R<>der, Uwe Scheffler and Simon
|
||
Bauschulte). Note that if you are using the default 'channels.conf' or
|
||
'channels.conf.cable' files you may need to check any exiting timers to see
|
||
whether they still use the correct channel number.
|
||
- Fixed the "EPG bugfix" (sometimes had duplicate information in Subtitle and
|
||
Extended Description).
|
||
- Fixed checking for valid video device when setting the video mode.
|
||
- The external command 'sort' is no longer required. VDR now sorts the list of
|
||
recordings itself, making sure that recordings that stem from repeating timers
|
||
are sorted chronologically. Sorting is done according to the setting of the
|
||
current locale, so you may want to make sure LC_COLLATE is set to the desired
|
||
value (see INSTALL).
|
||
- Fixed handling 'newline' characters in EPG texts (thanks to Rolf Hakenes for
|
||
an improved version of his 'libdtv').
|
||
Newline characters are always mapped to a single "blank" in VDR, because they
|
||
would otherwise disturb the Title and Subtitle layout in the channel display
|
||
(where these are assumed to be single line texts) and would have to be
|
||
specially handled in the 'epg.data' file and the LSTE command in SVDRP.
|
||
- Mapping ` ("backtick") characters in EPG texts to ' (single quote).
|
||
- Fixed timers starting and ending at unexpected times. 'localtime()' was not
|
||
thread safe, now using localtime_r().
|
||
- Removed the "system time seen..." message.
|
||
- Fixed a bug in the replay mode display when pressing the Green or Yellow
|
||
button while in trick mode (thanks to Stefan Huelswitt)
|
||
- Closing all open file descriptors when calling external programs.
|
||
- The menu timeout now also works when pressing the "Back" button during replay
|
||
to enter the "Recordings" menu.
|
||
- Updated 'channels.conf' for the "Bundesliga" channels of Premiere World
|
||
(thanks to Mel Sch<63>chner).
|
||
- Fixed reading timers.conf and channels.conf that contain blanks after numeric
|
||
values.
|
||
- Fixed handling trick modes near the beginning and end of a recording.
|
||
- Pressing the "Back" button while replaying a DVD now leads to the DVD menu.
|
||
|
||
2001-11-04: Version 0.98
|
||
|
||
- Completed storing the current audio volume in the setup.conf file (thanks
|
||
to Andy Grobb).
|
||
- Fixed closing the progress display with the "Back" key when in trick mode
|
||
and Setup.ShowReplayMode is enabled (thanks to Stefan Huelswitt).
|
||
- New SVDRP commands LSTR and DELR to list and delete recordings (thanks to
|
||
Thomas Heiligenmann).
|
||
- Fixed a crash when pressing the '2' button while replaying a DVD.
|
||
- Updated 'channels.conf' for the "Bundesliga" channels of Premiere World
|
||
(thanks to Mel Sch<63>chner).
|
||
- Changed the tuning code to use FrontendInfo to detect the type of DVB card.
|
||
- Removed the recursion stuff from cThread (cMutex already does this).
|
||
- Fixed handling the repeat function in the channel display.
|
||
- Avoiding multiple EPG entries for the same event (thanks to Rolf Hakenes
|
||
for some valuable information on how to do this).
|
||
- A recording on the primary interface can now be stopped to make it continue
|
||
on an other free DVB card (if one is free at the moment). See MANUAL for
|
||
details.
|
||
- Added some missing teletext PIDs (thanks to Norbert Schmidt).
|
||
- Added PTS to the converted PCM audio when replaying a DVD (thanks to Andreas
|
||
Schultz). Now the audio and video of a DVD replayed over the DVB card's A/V
|
||
out should always be in sync.
|
||
- Fixed handling the "Power" key in case Setup.MinUserInactivity is set to 0 to
|
||
disable automatic shutdown.
|
||
- Added a fifth parameter to the 'shutdown' call that indicates the reason for
|
||
this shutdown request (see INSTALL).
|
||
- Fixed releasing 'index' memory after recording or playback.
|
||
- Fixed ejecting a DVD while it is being replayed.
|
||
- Removed all video overlay stuff from cDvbApi and SVDRP. Guido Fiala's new
|
||
'kvdr' version 0.4 now does these things itself. As a consequence of this you
|
||
will now need to use kvdr 0.4 or later.
|
||
- The device /dev/video is now opened only if necessary (to GRAB an image),
|
||
allowing other programs (like 'kvdr', for instance) to use that device.
|
||
|
||
2001-11-25: Version 0.99pre1
|
||
|
||
- Fixed several channel definitions in 'channels.conf' (thanks to Thilo
|
||
Wunderlich).
|
||
- Added MPEG audio support for DVD (thanks to Andreas Schultz).
|
||
- Implemented DVB-T support (thanks to Dave Chapman).
|
||
This currently works only for UK channels.
|
||
- Removed the range limits for the Frequency and Srate parameters of channel
|
||
definitions.
|
||
- Changed the maximum value for PIDs in channels.conf from 0xFFFE to 0x1FFF.
|
||
- Fixed DVD audio sync problems (thanks to Andreas Schultz).
|
||
- Fixed external AC3 replay for DVDs (thanks to Andreas Schultz).
|
||
|
||
2002-01-27: Version 0.99pre2
|
||
|
||
- Fixed setting the OSD size in the 'Confirm' interface call (thanks to
|
||
Deti Fliegl).
|
||
- Removed the 'read incomplete section...' error message in the EIT processor.
|
||
- Fixed channel data for "DW TV" (thanks to Axel Gruber).
|
||
- Added DPID to "PREMIERE MOVIE 1" in channels.conf.cable (thanks to Stephan
|
||
Schreiber).
|
||
- Prepared the OSD functions for multiple overlapping windows.
|
||
- Removed the check to see whether the system time is running linearly.
|
||
- Improved performance of SVDRP command entry.
|
||
- Removed EPGBugfixLevel '3' - after more than a year Pro-7 finally managed to
|
||
broadcast the correct timestamps for EPG events between 0:00 and 6:00!
|
||
- Fixed failing watchdog timer if program hangs in OSD activities (thanks to
|
||
Carsten Koch).
|
||
- No longer requiring 'libncurses' if compiling without DEBUG_OSD=1 and
|
||
REMOTE=KBD (thanks to Lauri Pesonen).
|
||
- The "Recordings" menu now displays a hierarchical structure if there are
|
||
subdirectories for the recordings. This can be controlled through the
|
||
"RecordingDirs" parameter in the "Setup" menu.
|
||
See "MANUAL/Replaying a Recording" for details.
|
||
- Improved speed of setting the Help button texts.
|
||
- Fixed handling file names that contain single quotes (') or dollar signs ($)
|
||
in the call to the shutdown command (option '-s') and the recording command
|
||
(option '-r').
|
||
- Improved error handling in the editing process; the resulting file will be
|
||
deleted if an error occured.
|
||
- A message is now prompted at the end of the editing process, indicating
|
||
whether the process succeeded or failed.
|
||
- Fixed setting the LastActivity timestamp after a shutdown prompt (thanks to
|
||
Sergei Haller).
|
||
- A message is now prompted if free disk space becomes low during recording.
|
||
- The editing process now calls AssertFreeDiskSpace() to remove deleted
|
||
recordings if the disk becomes full.
|
||
- The "Main" menu now displays in its title the used disk space (in percent)
|
||
and the estimated free disk space (in hh:mm), assuming a data rate of 30 MB
|
||
per minute.
|
||
- Activating the "Recordings" menu now displays "scanning recordings..." to
|
||
give the user some feedback in case this takes longer.
|
||
- Status messages are now displayed centered.
|
||
- Removed the 'Tools' subdirectory from the VDR archive. All contributed tools
|
||
can now be found at ftp://ftp.cadsoft.de/pub/people/kls/vdr/Tools.
|
||
|
||
2002-01-29: Version 0.99pre3
|
||
|
||
- Fixed handling improper buffer lengths in the EIT parser (thanks to Deti
|
||
Fliegl).
|
||
|
||
2002-01-30: Version 0.99pre4
|
||
|
||
- Fixed handling improperly formatted EIT data (thanks to Rolf Hakenes).
|
||
|
||
2002-02-03: Version 0.99pre5
|
||
|
||
- 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 out this one).
|
||
- 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).
|
||
|
||
2002-02-10: Version 0.99
|
||
|
||
- Fixed a bug in moving timers or channels to the last position in the list
|
||
(thanks to Matthias Schniedermeyer for helping to debug this one).
|
||
- Changed the estimated data rate for calculating the remaining disk capacity
|
||
to 25.75 MB/min.
|
||
- Only reporting the 'EPG bugfix statistics' if there really were any fixes.
|
||
- Added Finnish language texts (thanks to Hannu Savolainen).
|
||
- Reverted to the previous way of searching for the EPG record of the current
|
||
recording in case of a repeating timer (i.e. taking the one that is in the
|
||
middle between start and end time).
|
||
- Added a typedef for 'in_addr_t' to make it work with glibc < 2.2 (thanks to
|
||
J<>rgen Schmidt).
|
||
- When the last entry in a "Recordings" menu page is deleted, that page is now
|
||
automatically closed (suggested by Uwe Freese).
|
||
- Changed the default name for instant recordings to "TITLE EPISODE" (avoiding
|
||
the '-').
|
||
- If Setup.ShowInfoOnChSwitch is set to "no", the box for the EPG display is no
|
||
longer shown (thanks to Andy Grobb).
|
||
- If compiled with VFAT=1, characters that can't be handled by a VFAT system are
|
||
now encoded to '#XX'.
|
||
- When the user presses the "Power" button and there is a timer about to start
|
||
recording within Setup.MinEventTimeout minutes, there is now a confirmation
|
||
prompt telling the user that there is an upcoming timer event.
|
||
- If a recording has no episode title, the trailing '~' is no longer shown in
|
||
the progress display.
|
||
|
||
2002-02-24: Version 1.0.0pre1
|
||
|
||
- Added scanning for EPG data for another 4 days on channels that support this
|
||
(thanks to Oleg Assovski).
|
||
- Removed '#define VFAT 1' from recording.c (was a leftover from testing).
|
||
- Fixed the "Low disk space!" message (thanks to Sergei Haller).
|
||
- Added the TPID to Hessen-3 in 'channels.conf' (thanks to Sergei Haller).
|
||
- Fixed a crash when replaying with DEBUG_OSD=1 (thanks to Stefan Huelswitt).
|
||
- Implemented the "First day" parameter for repeating timers. See FORMATS for
|
||
information about the enhanced 'timers.conf' file format, and MANUAL for
|
||
a description of the new item in the "Edit Timer" menu and the enhanced
|
||
functionality of the "Blue" button in the "Timers" menu.
|
||
- When deleting a recording that is currently still being recorded, the related
|
||
timer will now automatically be terminated. If this is a repeating timer, it
|
||
will receive a "First day" setting that skips the timer for this day.
|
||
- Fixed closing all unused file descriptors when opening a pipe (thanks to
|
||
Werner Fink).
|
||
- Instant recordings now take the EPG data from the point in time at 5 minutes
|
||
from the start time of the recording. In order for this to work the 'active'
|
||
parameter of a timer now uses the second bit to indicate that this is an
|
||
"instant" recording (see FORMATS for details).
|
||
- Fixed the SVDRP GRAB command in case the video device can't be opened (thanks
|
||
to Adrian Stabiszewski).
|
||
- At startup the data written into 'epg.data' is now read into the EPG data
|
||
structures. In order for this to work, the 'E' record has been extended to
|
||
(optionally) contain the 'table ID' (see FORMATS for details).
|
||
- The new SVDRP command PUTE can be used to put EPG data into the EPG list.
|
||
See FORMATS for details about the required data format.
|
||
- Taking the German umlauts 'as is' when compiled with VFAT.
|
||
- The new Setup parameter RecordDolbyDigital can be used to generally turn off
|
||
recording the Dolby Digital audio channels in case you want to save disk space
|
||
or don't have the equipment to replay Dolby Digital audio.
|
||
- Reading the 'setup.conf' file no longer terminates in case of an error, but
|
||
rather attempts to read the rest of the file.
|
||
- Removed DVD support from the core VDR source, since the current version from
|
||
Andreas Schultz is already much further developed (DVD menu navigation) and
|
||
the concept of "additional players" in VDR is going to change in version 1.1.0,
|
||
where a new "plugin" interface shall allow the easy implementation of new
|
||
players without having to patch the core VDR source. Until then, Andreas has
|
||
agreed to provide his DVD support as a completely external patch.
|
||
- The contents of the distribution archive now contains the directory name with
|
||
the current version number, as in 'vdr-1.0.0pre1/...' in order to avoid
|
||
inadvertently overwriting an existing VDR directory with a new version.
|
||
- Added a missing error message in SVDRP command LSTC in case the given channel
|
||
can't be found.
|
||
|
||
2002-02-25: Version 1.0.0pre2
|
||
|
||
- Fixed a crash in case there is no 'epg.data' at program start (thanks to
|
||
Andreas Schultz).
|
||
|
||
2002-03-03: Version 1.0.0pre3
|
||
|
||
- Fixed parsing 'E' records in epg2html.pl.
|
||
- Fixed a deadlock when switching channels via Schedule/Now|Next/Switch (reported
|
||
by Martin Hammerschmid).
|
||
- Changed the meaning of the 'Ca' parameter in 'channels.conf'. Each channel can
|
||
now define which decryption method it needs in order to be accessed. The new
|
||
configuration file 'ca.conf' contains the defined values, and the default
|
||
'channels.conf' has been modifed to contain the new values for 'Premiere World'
|
||
and 'ORF'. If you use the default 'channels.conf' and have the conditional
|
||
access hardware to receive encrypted channels, please make sure you copy the
|
||
file 'ca.conf' into your /video directory (or wherever your configuration files
|
||
are located) and go into the "Setup" menu and set the CICAM values according
|
||
to your hardware setup. Currently there are two possible CICAM entries per
|
||
DVB card, so any card can implement up to two different conditional access
|
||
modes (besides the default "Free To Air" mode, which is always assumed to be
|
||
available on any DVB card).
|
||
- Updated French language texts (thanks to Jean-Claude Repetto).
|
||
|
||
2002-03-17: Version 1.0.0pre4
|
||
|
||
- Added 'Ca' code 201 for 'Cryptoworks, GOD-DIGITAL' to 'ca.conf' (thanks to
|
||
Bernd Schweikert).
|
||
- Fixed avoiding the primary DVB interface in case Setup.PrimaryLimit is 0.
|
||
- Fixed handling CICAM settings if the first one of a DVB card was FTA.
|
||
- Fixed reacting on changes in CICAM settings (needed to restart VDR before).
|
||
- The "Blue" button in the "Main" menu now works as "Stop" button if a recording
|
||
is currently being replayed.
|
||
- New command line option '-m' to mute audio of the primary DVB device at
|
||
startup (suggested by Mirko G<>nther).
|
||
- The new SVDRP command VOLU can be used to control the audio volume (suggested
|
||
by Mirko G<>nther).
|
||
- Fixed resetting 'mute' state when setting the volume to a non-zero value.
|
||
- Added log messages when deleting recordings in case the disk runs full while
|
||
recording.
|
||
- Fixed closing a pipe (used for replaying Dolby Digital audio), which
|
||
sometimes left 'zombie' processes behind (thanks to Werner Fink for helping
|
||
to debug this one).
|
||
- Now starting the Dolby Digital output thread only if the recording actually
|
||
contains Dolby Digital audio data (thanks to Werner Fink).
|
||
- Implemented OSD for Volume and Mute (works only if there is no other OSD
|
||
activity, but this should be no problem for normal use).
|
||
- Changed the MANUAL description of the "Conditional Access" setup parameters
|
||
to reflect the actual "CICAM DVBn m" notation in the "Setup" menu.
|
||
- The new Setup parameter "Use time from transponder" can be used to define which
|
||
transponder shall be used to set the system time (see MANUAL for details).
|
||
If you have been using the SetSystemTime option previously, you now MUST
|
||
select a channel that you trust to have a reliable time base.
|
||
- Grouped the Setup parameters into several sub-menus, so that each group of
|
||
parameters fits on a single screen - unless the height of the OSD has been
|
||
set to a small value (based on code from Markus Lang).
|
||
- Changed the title of the "Main" menu to "VDR".
|
||
- Fixed displaying a system message while the replay mode is being shown.
|
||
- Physically removing a deleted recording if one with the same name shall be
|
||
deleted again.
|
||
- The "Left" and "Right" keys are now used to page up and down in text displays
|
||
(like the EPG descriptions or the results of commands executed from the
|
||
"Commands" menu).
|
||
- Fixed high CPU usage in 'Transfer Mode'.
|
||
- Replaced 'killproc' with 'killall' in 'runvdr', since apparently 'killproc'
|
||
is not available by default on some Linux distributions, whereas 'killall' is.
|
||
Please check if your system provides 'killall' - if it doesn't, please change
|
||
this back in 'runvdr' and report this (thanks to Achim Lange).
|
||
- The "Commands" menu now automatically assigns number keys as hotkeys to the
|
||
commands. If you have preceeded your commands with digits you may want to
|
||
remove these from your 'commands.conf' file.
|
||
- The new Setup item "Restart" can be used to force a complete restart of VDR,
|
||
including reloading the driver. Note that this can only work if VDR and the
|
||
driver are wrapped into a mechanism that actually performs this action if VDR
|
||
exits. The 'runvdr' script can be used for this purpose.
|
||
- Refined texts of the "Setup" menu.
|
||
|
||
2002-04-01: Version 1.0.0pre5
|
||
|
||
- Fixed restoring CICAM setup values for a fourth DVB card (thanks to Klaus Wolf).
|
||
- Completed internationalization of OSD texts (thanks to Hannu Savolainen,
|
||
Arnold Niessen, Paulo Lopes, Jean-Claude Repetto, Alberto Carraro, Matjaz
|
||
Thaler and Truls Slevigen).
|
||
- Improved file I/O in case of EINTR, which may occur e.g. with heavy system
|
||
load (thanks to Werner Fink).
|
||
- Now writing the title of a recording into the 'summary.vdr' file.
|
||
- Workaround for displaying still frames with the unpatched LinuxDVB driver
|
||
(if anybody ever finds out why the unpatched driver doesn't display VDR's
|
||
still frames, please let me know).
|
||
- When executing a command from the "Commands" menu, the title of that command
|
||
is now immediately shown in the status line (followed by "...") to give the
|
||
user some feedback that the command is being executed, which is especially
|
||
important if this takes some time.
|
||
- Fixed scrolling the "Channels" menu in case the cursor ends up on a group
|
||
delimiter (thanks to Bernd Zierath for helping to debug this one).
|
||
- Added manual pages vdr(1) and vdr(5) (which made the FORMATS file obsolete).
|
||
- New command command line option '-V' to display the VDR version.
|
||
- Adjusting column width for channel numbers in case there are more than 999
|
||
channels.
|
||
- Checking the return value of '...FileReady...' calls in dvbapi.c for better
|
||
performance under heavy system load.
|
||
- New 'make' target 'install', which copies the manual pages and executables
|
||
to their appropriate system locations and creates the /video directory if
|
||
it doesn't exist yet.
|
||
- Automatic hotkey assignment is now suppressed if the first entry in
|
||
'commands.conf' starts with a digit in the range '1'...'9', followed by a blank.
|
||
- Fixed a bug in switching back the replay mode display in time shift mode
|
||
(thanks to Achim Lange for reporting this one).
|
||
- Fixed a bug in the "First day" timer parameter for timers that record over
|
||
midnight.
|
||
- Added units to Setup parameters.
|
||
- Changed time entry in the 'Jump' command during replay, so that it is filled
|
||
up from right to left.
|
||
- Now using statfs() to determine the amount of free disk space, which avoids
|
||
the use of an external 'df' command (thanks to Ruben Nunez Francisco).
|
||
- Fixed skipping the next hit of a repeating timer (thanks to Rainer Zocholl
|
||
for reporting this one).
|
||
- Fixed a bug when a timer records over midnight of a day that had a change in
|
||
Daylight Saving Time (thanks to Mirko D<>lle for reporting this one).
|
||
- Added Polish language texts (thanks to Michael Rakowski).
|
||
- Fixed a bug in parsing group separators in channels.conf (thanks to Henning
|
||
Holtschneider for reporting this one).
|
||
- Changed the default 'Ok' key when using the PC keyboard from '5' (in the
|
||
numeric block) to 'Enter', because the '5' key didn't work on keyboards with
|
||
the F-keys on top.
|
||
- Fixed a bug in the EPG bugfix mechanism if the extended description is shorter
|
||
than 3 characters (thanks to Andreas Schultz).
|
||
|
||
2002-04-07: Version 1.0.0
|
||
|
||
- Fixed a problem with wrong EPG data in the Schedules menu (thanks to Tobias
|
||
Kerner, problem was initially reported by Michel Moster, but somehow I had
|
||
misplaced his message...).
|
||
- Added Spanish language texts (thanks to Ruben Nunez Francisco).
|
||
- Fixed resetting the "First day" timer parameter once the timer actually starts
|
||
recording.
|
||
- Fixed the still picture workaround in case the progress display is active
|
||
(thanks to Gerald Raaf).
|
||
- Fixed a problem with accessing the epg.data file before it is fully written
|
||
(thanks to Thilo Wunderlich for reporting this one).
|
||
- Now the EPG scan skips channels that have their 'Ca' parameter explicitly set
|
||
to an other DVB card (suggested by Sergei Haller).
|
||
- Fixed a possible hangup when reading a broken epg.data file (thanks to Henning
|
||
Holtschneider for pointing out this one).
|
||
- Fixed a bug in the editing process in case a previously edited file with the
|
||
same name was manually deleted on a system with more than one video directory
|
||
(thanks to Dirk Wiebel for reporting this one).
|
||
|
||
2002-04-21: Version 1.0.1
|
||
|
||
- Added some DVB-T channels for Berlin (Germany) to channels.conf.terr (thanks to
|
||
Andreas Roedl).
|
||
- Implemented enhanced string editing with upper-/lowercase, insert/overwrite
|
||
and delete (thanks to Sergei Haller).
|
||
- Fixed color palette handling on "big endian" systems (thanks to Jean Martin
|
||
for pointing out this one).
|
||
- Updated the "Blue Movie" channels to the new "Premiere Erotik" (thanks to
|
||
Thilo Wunderlich). NOTE: this adds a new channel to 'channels.conf', so that
|
||
any timers referencing a channel with a number higher than 102 should be
|
||
checked and adapted if necessary (this only applies if you are using the default
|
||
'channels.conf').
|
||
- Improved thread locking in the ring buffer to avoid possible race conditions
|
||
under heavy load (thanks to Werner Fink).
|
||
- Fixed a crash when selecting the "Jump" function directly after setting an
|
||
editing mark (thanks to Steffen Koch for reporting and Stefan Huelswitt for
|
||
fixing this one).
|
||
- Fixed some missing ',' in i18n.c (thanks to Matthias Hilbig).
|
||
- Fixed a possible endless loop in shifting recordings between DVB cards (thanks
|
||
to Stefan Huelswitt for reporting this one).
|
||
- Updated the Premiere World Formula 1 channels in 'channels.conf' (thanks to Mel
|
||
Sch<63>chner).
|
||
- No longer setting PIDs 0x1FFF, which apparently fixes problems with CAMs and
|
||
AC3 sound only working the first time (thanks to Stefan Huelswitt).
|
||
- Now encoding '.' at the end of a directory name in case of VFAT=1, since Windows
|
||
can't handle these (thanks to Simon Dean for reporting this one).
|
||
|
||
2002-05-05: Version 1.0.2
|
||
|
||
- Now taking an active video cutting process into account when doing shutdown or
|
||
housekeeping (thanks to Stefan Huelswitt).
|
||
- The default duration of an instant recording has been increased to 3 hours and
|
||
is now configurable in the "Setup/Recording" menu.
|
||
- Added Greek language texts (thanks to Dimitrios Dimitrakos).
|
||
- Fixed the unit of the "SVDRP timeout" setup parameter (thanks to Marcus Kuba
|
||
for reporting this one).
|
||
- Fixed a crash on systems with disks that have a block size larger than 1MB
|
||
(thanks to Ulrich Petri for helping to debug this one).
|
||
- Updated 'channels.conf' for the new PW settings (thanks to Andreas Share,
|
||
Carsten Koch, Gerald Raaf and Mel Sch<63>chner). Note that all channels with numbers
|
||
over 50 may have moved, so you should carefully check any timers you have set!
|
||
- Updated 'channels.conf.cable' for the new PW settings (thanks to Oliver Lorei
|
||
Stephan Schreiber and Uwe Scheffler). Note that all channels may have moved, so
|
||
you should carefully check any timers you have set!
|
||
For future updates of this file somebody with digital cable should take the role
|
||
of the "maintainer" and send me updated versions based on the file that comes
|
||
with the most recent version of VDR. I will then simply replace the entire file
|
||
'channels.conf.cable' whenever a new version is sent to me.
|
||
- Fixed skipping forward in time shift mode near the end of the recording (thanks
|
||
to Andreas B<>ttger for reporting this one).
|
||
|
||
2002-05-09: Version 1.1.0
|
||
|
||
- Begin of the 1.1 development branch. THIS IS NOT A STABLE VERSION!
|
||
The current stable version for every day use is still the 1.0 branch.
|
||
- First step towards a universal plugin interface. See the file PLUGINS.html
|
||
for a detailed description. The man page vdr(1) describes the new options '-L'
|
||
and '-P' used to load plugins. This first step implements the complete "outer"
|
||
shell for plugins. The "inner" access to VDR data structures will follow.
|
||
- The VDR version number is now displayed in the title line of the "Setup" menu.
|
||
|
||
2002-05-11: Version 1.1.1
|
||
|
||
- Separated the actual DVB hardware OSD implementation from the abstract OSD
|
||
interface. 'osdbase.c/.h' now implements the abstract OSD, while 'dvbosd.c/.h'
|
||
is the actual implementation for the DVB hardware. This is in preparation for
|
||
allowing additional kinds of OSD hardware implementations.
|
||
- Fixed leftover references to the file FORMATS in MANUAL and svdrp.c (thanks to
|
||
Onno Kreuzinger for reporting this one).
|
||
- Avoiding ambiguities in the cList template class in case one defines a "list of
|
||
lists" (thanks to Stefan Huelswitt).
|
||
- Simplified the basic cMenuSetupPage class for easier use in plugins.
|
||
- Added setup parameters and a Setup menu to the 'hello' plugin example.
|
||
- Fixed logging error message for unknown config parameters in plugins.
|
||
- Rearranged cleanup sequence at the end of the main program.
|
||
- Adapted PLUGINS.html to use the actual code examples from the 'hello' plugin.
|
||
|
||
2002-05-13: Version 1.1.2
|
||
|
||
- Changed the cPlugin::Start() function to return a boolean value that indicates
|
||
if the plugin will not be able to perform its task (suggested by Stefan Huelswitt).
|
||
- Added the cPlugin::Housekeeping() function (suggested by Stefan Huelswitt).
|
||
- Updated channels.conf.cable (thanks to Uwe Scheffler).
|
||
- Added 'insert' capabilities to cList (suggested by Stefan Huelswitt).
|
||
- Changed the 'package' target in the plugin's Makefile to produce a package that
|
||
expands to a directory with just the plugin name and version number (suggested
|
||
by Stefan Huelswitt).
|
||
- Made the config directory available to plugins (suggested by Stefan Huelswitt).
|
||
See PLUGINS.html, section "Configuration files" for details.
|
||
- Improved the [eid]syslog() macros, so that the LOG_... macros don't need to be
|
||
given any more.
|
||
|
||
2002-05-26: Version 1.0.3
|
||
|
||
- Updated 'Premiere Sport 2' in channels.conf (thanks to Rudi Hofer).
|
||
- Fixed some function headers to make them compile with gcc 3.x (thanks to
|
||
Gregoire Favre).
|
||
- Fixed the cutting mechanism to make it re-sync in case a frame is larger than the
|
||
buffer (thanks to Sven Grothklags).
|
||
- Added Swedish language texts (thanks to Tomas Prybil).
|
||
|
||
2002-06-10: Version 1.0.4
|
||
|
||
- Added Romanian language texts (thanks to Paul Lacatus).
|
||
- Removed compiler option '-m486' to make it work on non-Intel platforms (thanks
|
||
to Alastair McKinstry for pointing this out).
|
||
|
||
2002-06-16: Version 1.1.3
|
||
|
||
- Improved the VDR Makefile to avoid a warning if the '.dependencies' file does
|
||
not exist, and also using $(MAKE) to call recursive makes.
|
||
- Changed the name of the 'package' target in the plugin Makefiles to 'dist'
|
||
(following the suggestions in the "GNU Make" manual). If you already have started
|
||
a plugin project, you may want to change this in your Makefile accordingly.
|
||
- Improved the plugin Makefile to avoid a warning if the '.dependencies' file does
|
||
not exist, and also using $(shell...) to get the version numbers. If you already have
|
||
started a plugin project, you may want to change this in your Makefile accordingly.
|
||
- Fixed some function headers to make them compile with gcc 3.x (thanks to
|
||
Gregoire Favre).
|
||
- Fixed the cutting mechanism to make it re-sync in case a frame is larger than the
|
||
buffer (thanks to Sven Grothklags).
|
||
- Added an error message if the directory specified in the '-L' option can't be
|
||
accessed (suggested by Stefan Huelswitt).
|
||
- Rearranged OSD class names to make 'cOsd' available for the main OSD interface.
|
||
- Completely moved OSD handling out of the cDvbApi class, into the new cOsd.
|
||
- Implemented cStatus to allow plugins to set up a status monitor.
|
||
See PLUGINS.html for details.
|
||
- Moved the cEITScanner out of dvbapi.h/.c, into the new eitscan.h/.c.
|
||
- Added Swedish language texts (thanks to Tomas Prybil).
|
||
- Fixed parsing 'E' records in epg2html.pl (thanks to Matthias Fechner for pointing
|
||
out this one).
|
||
- Removed compiler option '-m486' to make it work on non-Intel platforms. If you
|
||
have already started a plugin project, you may want to make sure you remove this
|
||
option from your existing Makefile.
|
||
- Completely rearranged the recording and replay functions to make them available
|
||
to plugins.
|
||
- Replay is now done in a single thread (no more syncing between input and output
|
||
thread necessary).
|
||
- It is now possible to record several channels on the same transponder with "budget
|
||
cards". VDR automatically attaches a recording timer to a card that already
|
||
records on the appropriate transponder. How many parallel recordings can actually
|
||
be done depends on the computer's performance. Currently any number of recordings
|
||
gets attached to a card, so you should carefully plan your timers to not exceed
|
||
the limit. On a K6-II/450 it was possible to record three channels from transponder
|
||
12480 with a single WinTV NOVA-S.
|
||
- Timers that record two successive shows on the same channel may now overlap and
|
||
will use the same DVB card. During the time where both timers record the data
|
||
is simply saved to both files.
|
||
- The following limitations apply to this version:
|
||
+ 'Transfer Mode' doesn't work yet.
|
||
+ The '-a' option (for Dolby Digital audio) doesn't work yet.
|
||
+ Switching between different language tracks doesn't work yet.
|
||
+ Cutting doesn't work yet.
|
||
|
||
2002-06-23: Version 1.1.4
|
||
|
||
- Added Hungarian language texts (thanks to Istvan Koenigsberger and Guido Josten).
|
||
- Activated cutting.
|
||
- Activated 'Transfer Mode'.
|
||
- Moved handling of the Menu key entirely into vdr.c.
|
||
- Switched VDR's own player to the new cPlayer/cControl structures.
|
||
- Switched handling 'Transfer Mode' to the new cPlayer/cControl structures.
|
||
- The following limitations apply to this version:
|
||
+ The '-a' option (for Dolby Digital audio) doesn't work yet.
|
||
+ Switching between different language tracks doesn't work yet.
|
||
|
||
2002-07-21: Version 1.1.5
|
||
|
||
- Added direct access to the index data of cPalette (needed for displaying SPUs,
|
||
thanks to Andreas Schultz).
|
||
- The status monitor function cStatus::Replaying() now gets a 'cControl *' argument instead
|
||
of a 'cDvbPlayerControl *' in order to allow additional players to call this function.
|
||
cPlayer and cControl have been given the functions GetIndex() and GetReplayMode() to
|
||
allow access to the player's status.
|
||
- Added cOsd::OpenRaw() to create a raw OSD (needed for displaying SPUs).
|
||
- Changed the symantics of the Name parameter in cStatus::Recording() and
|
||
cStatus::Replaying(). It is no longer the full directory name of the recording,
|
||
but rather just the basic name. This has been changed to allow players that can't
|
||
provide a name to simply use a string that describes the player type (like, e.g.,
|
||
"DVD").
|
||
- Fixed a hangup when switching to the next file during replay.
|
||
- Fixed a possible race condition in the cDvbPlayer (thanks to Andreas Schultz
|
||
for pointing out this one).
|
||
- Disabled channels on Transponder 12070 in 'channels.conf', which apparently no longer transmits.
|
||
|
||
2002-08-04: Version 1.1.6
|
||
|
||
- Re-visited the race condition fix in the cDvbPlayer (thanks again to Andreas
|
||
Schultz).
|
||
- Changed the VFAT handling to allow users who normally use it but have forgotten
|
||
to set it when compiling a new version of VDR to at least see their recordings
|
||
made with VFAT enabled (thanks to Christian Rienecker).
|
||
- Added some missing teletext PIDs (thanks to Joerg Riechardt).
|
||
- Fixed PID handling for cReceiver.
|
||
- Added a missing #include to ringbuffer.c (thanks to Martin Hammerschmid).
|
||
- Now using CC, CFLAGS, CXX and CXXFLAGS in Makefile.
|
||
- Changed the cDevice class to allow plugins to implement their own devices (see
|
||
PLUGINS.html for details).
|
||
|
||
2002-08-16: Version 1.1.7
|
||
|
||
- Adapted VDR to the NEWSTRUCT driver. To use the new driver, compile VDR with
|
||
'make NEWSTRUCT=1' (thanks to Holger W<>chtler for some valuable advice).
|
||
By default it currently still uses the old driver.
|
||
- Added some missing #includes (thanks to Martin Hammerschmid).
|
||
- Changed the log error message "can't record MPEG1!" to "error in data stream!",
|
||
since the mentioning of MPEG1 has irritated many people.
|
||
- Consistently using malloc/free and new/delete (thanks to Andreas Schultz).
|
||
- Temporarily made cDevice::ProvidesCa() virtual (Andreas Schultz needs this
|
||
in his DXR3 plugin).
|
||
- cDevice no longer exposes a file handle to cPlayer. A derived cPlayer class
|
||
can now call DevicePoll() to see whether the replay device is ready for
|
||
further data. A derived cDevice class must implement Poll() and shall
|
||
check if any of its file handles is ready for data.
|
||
- Implemented several replay modes to allow players that play only audio (thanks
|
||
to Stefan Huelswitt).
|
||
- Improved cCondVar::Wait() and implemented cCondVar::TimedWait() (thanks to
|
||
Stefan Huelswitt).
|
||
- VDR no longer gives up if there is no DVB device. It continues to work if
|
||
there is at least one device, either a DVB device found by the core VDR code
|
||
itself, or a device implemented by a plugin.
|
||
|
||
2002-08-25: Version 1.1.8
|
||
|
||
- Fixed replaying the last few seconds of a recording.
|
||
- Added some missing #includes to files in libdtv for gcc 3.2 (thanks to J<>rgen
|
||
Zimmermann).
|
||
- Added cDevice::NewOsd() to allow a derived cDevice class to implement its own
|
||
OSD capabilities (thanks to Andreas Schultz).
|
||
- Added cPalette::AllColors() for plugins that need to get the color entries of
|
||
a cPalette (see osdbase.h).
|
||
- The new SVDRP command CLRE can be used to clear the entire EPG data (suggested
|
||
by Matthias Schniedermeyer).
|
||
- Fixed handling one-shot timers that were already recording and had their start
|
||
time changed into the future (thanks to Matthias Schniedermeyer for reporting
|
||
this one).
|
||
|
||
2002-09-08: Version 1.1.9
|
||
|
||
- Fixed the 'newplugin' script to make it name the target for creating the
|
||
distribution package 'dist', as stated in the PLUGINS.html documentation.
|
||
If you have already created a plugin source directory and Makefile you may
|
||
want to check it and replace the 'package' target with 'dist' if necessary.
|
||
- Changed device handling for being able to do simultaneous recording and
|
||
replay on the same device (Time Shifting). In order for this to work you need
|
||
to use a driver with a firmware version that has this feature implemented.
|
||
- cDevice::ProvidesCa() is no longer virtual. The new function
|
||
cDevice::ProvidesChannel() is now used to determine whether a device can
|
||
receive a given channel, and by default this function returns false. So a
|
||
device that is a pure replaying device doesn't need to do anything here.
|
||
- Increased the recorder buffer size to 5MB in order to be able to better handle
|
||
multiple recordings.
|
||
- Implemented cTSBuffer for better handling TS packet buffering in derived
|
||
cDevice classes.
|
||
- Changed the interface if cDevice::GetTSPacket() to avoid unnecessary copying
|
||
of data.
|
||
- Removed cDevice::Channel(), since this makes no more sense with devices
|
||
receiving multiple channels.
|
||
- Switching through channels with the 'Up' and 'Down' keys now skips channels
|
||
that are currently not available (for instance because all devices are
|
||
recording and these channels are on different transponders).
|
||
- Implemented an SPU decoder (thanks to Andreas Schultz).
|
||
- Fixed a crash when entering an integer value outside the limits (thanks to
|
||
Stefan Huelswitt for reporting this one).
|
||
- Added play mode pmAudioOnlyBlack (thanks to Stefan Huelswitt).
|
||
|
||
2002-09-15: Version 1.1.10
|
||
|
||
- Removed a superfluous error message from cLockFile::Unlock() (reported by
|
||
Helmut Auer).
|
||
- Fixed starting a recording of the current channel with only one DVB card
|
||
(thanks to Stefan Huelswitt for his help).
|
||
- A previous 'Transfer Mode' is now automatically re-started after a replay
|
||
stops.
|
||
- Only calling cStatus::MsgChannelSwitch() if a channel is actually going to
|
||
be switched or has actually been switched successfully (thanks to Stefan
|
||
Huelswitt).
|
||
- The EPG now drops events from "other" streams that have a duration of 86400
|
||
seconds or more (this avoids bogus entries like "PROGRAMMES ALLEMANDS").
|
||
- Fixed opening /dev/video in cDvbDevice::GrabImage() in case of NEWSTRUCT
|
||
driver (thanks to Andreas Schultz).
|
||
- Added a missing StripAudioPackets() to cDvbPlayer::Action() (thanks to
|
||
Stefan Huelswitt).
|
||
- Added an EPG bugfix for the latest VOX EPG data format.
|
||
|
||
2002-09-29: Version 1.1.11
|
||
|
||
- Fixed an incomplete initialization of the filter parameters in eit.c (thanks
|
||
to Jeremy Hall).
|
||
- Fixed the 'newplugin' script for use with the NEWSTRUCT driver (thanks to
|
||
Andreas Schultz for reporting this one). If you have already created a plugin
|
||
directory and Makefile with 'newplugin', please apply the following patch to it:
|
||
|
||
-------------------------------------------------------
|
||
--- Makefile 2002/06/10 16:24:06 1.4
|
||
+++ Makefile 2002/09/17 15:36:36 1.5
|
||
@@ -15,7 +15,12 @@
|
||
|
||
### The directory environment:
|
||
|
||
+ifdef NEWSTRUCT
|
||
+DVBDIR = ../../../../DVB/include
|
||
+DEFINES += -DNEWSTRUCT
|
||
+else
|
||
DVBDIR = ../../../../DVB/ost/include
|
||
+endif
|
||
VDRDIR = ../../..
|
||
VDRINC = $(VDRDIR)/include
|
||
LIBDIR = ../../lib
|
||
@@ -34,7 +39,7 @@
|
||
|
||
INCLUDES = -I$(VDRINC) -I$(DVBDIR)
|
||
|
||
-DEFINES = -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
||
+DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
||
|
||
### The object files (add further files here):
|
||
-------------------------------------------------------
|
||
|
||
This is the diff for the 'setup' example that comes with VDR, so your line
|
||
numbers may be different.
|
||
- Added a missing 'public' keyword in device.h (thanks to Martin Hammerschmid).
|
||
- Fixed a race condition when starting 'Transfer Mode'.
|
||
- Rearranged the remote control key handling to allow plugins to implement
|
||
additional types of remote controls (see PLUGINS.html, section "Remote Control").
|
||
The previously used files 'keys.conf' and 'keys-pc.conf' have been replaced
|
||
by the file 'remote.conf', which holds the key definitions of all remote controls.
|
||
- The LIRC remote control keys are now handled just like the keyboard and RCU keys.
|
||
This means that you can use the lircd.conf file as is for your remote control,
|
||
without the need of editing it to make the key names the same as used in VDR.
|
||
When first starting VDR it will go into the "Learning keys" mode and ask you
|
||
to press the various keys. The resulting key assignment will be stored in
|
||
the file 'remote.conf'.
|
||
Since I have no way of testing the LIRC support, I hope I didn't break it in
|
||
the process...
|
||
- While learning the remote control keys it is now possible to press the 'Menu'
|
||
key to skip the definition of keys that are not available on your particular
|
||
RC unit.
|
||
- Fixed handling DVD subtitles in the SPU decoder (thanks to Andreas Schultz).
|
||
- Avoiding restarts due to 'panic level' when switching channels on the primary
|
||
device during EPG scan.
|
||
|
||
2002-10-06: Version 1.1.12
|
||
|
||
- Fixed a missing Flush() call in the remote control learning procedure (thanks
|
||
to Oliver Endriss).
|
||
- Modified channel handling to cover all parameters necessary for DVB-C and DVB-T
|
||
(see man vdr(5) for the meaning of the additional parameters stored in the field
|
||
previously named 'polarisation'). Thanks to Uwe Scheffler and Andy Carter for testing.
|
||
If you have a system with different kinds of DVB cards, like DVB-T and DVB-C,
|
||
for instance, there is no more need to distinguish the channels through the
|
||
'Ca' parameter in order to assign them to the various DVB cards. This is now
|
||
taken care of by the "source" parameter. So a channel marked as "terrestrial",
|
||
for example, will only be received on DVB-T cards.
|
||
Note that the cChannel class has been moved into a separate file (channels.[ch]),
|
||
and that all data members have been made private and are now only accessible
|
||
through member functions. You may have to change any plugin code that accesses
|
||
cChannel data accordingly.
|
||
- The new configuration file 'sources.conf' contains the various signal sources
|
||
(satellites, cable and terrestrial) which are used in 'channels.conf' and
|
||
'diseqc.conf' (thanks to Reinhard Walter Buchner for adding some satellites to
|
||
'sources.conf' and Oliver Endriss and Lauri Tischler for testing and debugging).
|
||
- The 'diseqc' parameter in the channel definitions has been redefined to hold the
|
||
"source" of the given channel (which can be either a satellite, cable or terrestrial).
|
||
For compatibility with channels.conf files from older versions, numeric values in
|
||
this parameter will be tolerated, but they have no meaning. If you want to use
|
||
DiSEqC you will need to replace these old values with the proper source identifiers
|
||
defined in the new configuration file 'sources.conf'. See how this is done in the
|
||
'channels.conf' file that comes with the VDR package.
|
||
- The new configuration file 'diseqc.conf' can be used to set up the individual
|
||
diseqc configuration (see man vdr(5) for a description of the file format).
|
||
- The "Edit channel" menu has a new entry "Source:" in which the source of this
|
||
channel can be selected (either a satellite, cable or terrestrial). The set of
|
||
parameters at the end of this menu will change according to the type of source.
|
||
- The "Use DiSEqC" parameter in the "Setup/LNB" menu has been moved to the beginning
|
||
of the list and disables the rest of the parameters when set to "yes", since these
|
||
are now only meaningful if DiSEqC is _not_ used.
|
||
- Removed some unnecessary #includes from eit.c and changed cMenuRecordings::Del()
|
||
to cMenuRecordings::Delete() to avoid warnings in gcc-3.2 (thanks to Andreas
|
||
Schultz for pointing this out).
|
||
- Improved skipping channels that are (currently) not available (thanks to Stefan
|
||
Huelswitt).
|
||
- Updated channels.conf.terr and channels.conf.cable (thanks to Uwe Scheffler).
|
||
- Fixed a bug when pressing the "Blue" button in the main menu without having
|
||
displayed it (thanks to Oliver Endriss for reporting this one).
|
||
|
||
2002-10-13: Version 1.1.13
|
||
|
||
- Added cDevice::DeviceNumber() to get the number of a device, not counting any
|
||
gaps that might be in the index count.
|
||
- Fixed fetching the current/next information to handle cases where the duration
|
||
of an event is set wrongly and would last beyond the start time of the next
|
||
event.
|
||
- Adapted type names to the new HEAD version of the driver (which the previous
|
||
NEWSTRUCT branch has been merged into). Note that to use this driver version
|
||
you still need to add NEWSTRUCT=1 to the make call when building VDR. You
|
||
need a HEAD version of the LinuxDVB driver dated 2002-10-11 or later to compile
|
||
VDR with NEWSTRUCT=1.
|
||
- Fixed radio channels in channels.conf.cable (thanks to Robert Schiele and Uwe
|
||
Scheffler).
|
||
- Fixed switching the video format in the Setup/DVB menu (thanks to Uwe Scheffler
|
||
for reporting this one).
|
||
- Reactivated full handling of second audio PID (even in 'Transfer Mode').
|
||
- Fixed a crash when closing down with remote control plugins (thanks to Oliver
|
||
Endriss helping to debug this one).
|
||
- Commands in the file 'commands.conf' can now have a '?' at the end of their
|
||
title, which will result in a confirmation prompt before executing the
|
||
command.
|
||
- Changed a few leftover 'new char[...]' to MALLOC(char, ...).
|
||
- If a command executed from the "Commands" menu doesn't return any output, the
|
||
OSD will now be closed automatically.
|
||
- The SVDRP command PUTE now triggers an immediate write of the 'epg.data' file
|
||
(suggested by Gerhard Steiner).
|
||
- The new configuration file 'reccmds.conf' can be used to define commands that
|
||
shall be executed from the "Recordings" menu; see MANUAL and 'man vdr(5)' for
|
||
details (suggested by Gerhard Steiner).
|
||
|
||
2002-10-27: Version 1.1.14
|
||
|
||
- Fixed some faulty default parameter initializations (thanks to Robert Schiele).
|
||
- Added further satellites to 'sources.conf' (thanks to Reinhard Walter Buchner
|
||
and Oliver Endriss).
|
||
- Updated Finnish OSD texts (thanks to Jaakko Hyv<79>tti).
|
||
- Fixed a small glitch when switching channels (thanks to Dennis Noordsij for
|
||
reporting this one).
|
||
- Fixed handling multiple 'CaCaps' entries in 'setup.conf'.
|
||
- Group separators in 'channels.conf' may now be given like ':@201 My Channels',
|
||
where '@201' indicates the number to be given to the next channel. This can be
|
||
used to create 'gaps' in the channel numbering (see 'man 5 vdr'). BE CAREFUL
|
||
TO UPDATE YOUR 'timers.conf' ACCORDINGLY IF INSERTING THIS NEW FEATURE INTO YOUR
|
||
'channels.conf' FILE!
|
||
- Timers now internally have a pointer to their channel (this is necessary to
|
||
handle gaps in channel numbers, and in preparation for unique channel ids).
|
||
- Fixed slow reaction on SVDRP input (thanks to Guido Fiala for reporting this one).
|
||
- Added KI.KA to channels.conf.cable (thanks to Robert Schiele).
|
||
- Frequency values for cable and terrestrial channels in 'channels.conf' can
|
||
now be given either in MHz, kHz or Hz. The actual value given will be multiplied
|
||
by 1000 until it is larger than 1000000.
|
||
- Fixed skipping unavailable channels when zapping downwards.
|
||
- Fixed checking the Ca() status of a cDevice (thanks to Stefan Huelswitt).
|
||
- Fixed switching audio tracks in 'Transfer Mode' on the primary DVB device
|
||
(thanks to Steffen Barszus and Stefan Huelswitt for reporting this one and
|
||
helping to fix it).
|
||
- Fixed channel switching in case of an active 'Transfer Mode' on the primary
|
||
device ('Transfer Mode' is now launched with priority '-1').
|
||
- Fixed a ternary expression in dvbspu.c.
|
||
- Fixed handling 'Transfer Mode' on single device systems when recording an
|
||
encrypted channel (thanks to Stefan Huelswitt).
|
||
- Fixed blocking replaying in case an encrypted channel is being recorded on
|
||
the primary device.
|
||
- Now the name of the remote control is displayed when learning the keys.
|
||
- Fixed learning remote control keys in case there is more than one remote
|
||
control (thanks to Oliver Endriss for reporting this one).
|
||
- Implemented additional dedicated keys for "Play", "Pause", "Stop", "Record",
|
||
"FastFwd", "FastRew", "Channel+" and "Channel-". If your remote control supports
|
||
any of these keys you can delete your 'remote.conf' file and restart VDR to
|
||
go through the key learning procedure again in order to assign these new keys.
|
||
See MANUAL for more information.
|
||
Authors of player plugins should update their ProcessKey() functions so that
|
||
the new player keys have the same functionality as the "Up", "Down", "Left",
|
||
"Right" and "Blue" keys, respectively. Note that the existing functionality
|
||
of these keys should by all means be retained, since VDR (and any plugins)
|
||
shall be fully usable with just the basic set of keys. These new keys are only
|
||
for additional comfort in case the remote control in use supports them.
|
||
- Implemented new keys to directly access the VDR main menu functions "Schedule",
|
||
"Channels", "Timers", "Recordings", "Setup" and "Commands". If your remote
|
||
control provides keys you want to assign these functions to, you can delete
|
||
your 'remote.cof' file and restart VDR to go through the key learning procedure
|
||
again in order to assign these new keys. See MANUAL for more information.
|
||
- The new configuration file 'keymacros.conf' can be used to assign macros to
|
||
the color buttons in normal viewing mode, as well as to up to 9 user defined
|
||
keys. See MANUAL and man vdr(5) for more information. The default 'keymacros.conf'
|
||
implements the functionality of the "color button patch".
|
||
- Fixed a crash when learning the keys of several remote controls and pressing
|
||
buttons of those that have already been learned (thanks to Oliver Endriss for
|
||
reporting this one).
|
||
|
||
2002-11-03: Version 1.1.15
|
||
|
||
- Completely switched to the new CVS HEAD version of the linux-dvb driver.
|
||
The NEWSTRUCT compile time switch is now obsolete. The required driver is now
|
||
the CVS HEAD version dated 2002-11-01 or later.
|
||
- Adjusted the INSTALL file to the 1.1.x version.
|
||
- Only accepting key presses from the current remote control when learning (thanks to
|
||
Oliver Endriss).
|
||
- Fixed the EPG scanner, which broke 'Transfer Mode' as soon as it kicked in
|
||
(thanks to Oliver Endriss for reporting this one).
|
||
- Fixed handling audio tracks in cDvbDevice.
|
||
- Updated channels.conf.terr (thanks to Uwe Scheffler).
|
||
- Fixed displaying the group separators in the channel display (thanks to Martin
|
||
Hammerschmid for pointing out this one).
|
||
- The Makefile now includes the file Make.config (if present in the VDR source
|
||
directory), which allows the user to overwrite several settings with individual
|
||
values (suggested by Andreas Schultz). The VDR distribution archive does not
|
||
contain this file in order to not overwrite a user defined file. There is a
|
||
Make.config.template which contains the default values of the macros the user
|
||
can overwrite.
|
||
- Since there have been changes to the 'newplugin' script authors of plugins
|
||
may want to newly create their plugins' Makefiles with the new version of this
|
||
script, and adapt them to their individual needs (make sure you don't overwrite
|
||
your existing plugin directory - make a backup copy first!).
|
||
- Fixed reading EPG data via the SVDRP command PUTE (it changed the current
|
||
service ID).
|
||
- Fixed closing all dup'ed file descriptors in cPipe.
|
||
- Implemented a plugin interface for additional audio processing (see PLUGINS.html
|
||
under "Dolby Digital").
|
||
The functionality of the '-a' command line option has been reactivated.
|
||
Since the author doesn't have any Dolby Digital equipment this may or may not
|
||
work as expected. There may still be some places where a call to cAudios::Clear()
|
||
or cAudios::Mute() is necessary. Those with Dolby Digital equipment should please
|
||
take a look at this and maybe send patches.
|
||
Replaying Dolby Digital in ways other than through VDR's '-a' option will have to
|
||
be implemented as plugins. Those who have written patches for VDR version 1.0.x
|
||
should convert their work into the proper plugins for version 1.1.x.
|
||
Note to authors of cPlayer derived plugins: please read the modified comments
|
||
in device.h regarding the member functions cDevice::Clear(), cDevice::Mute() and
|
||
cDevice::PlayAudio(). Derived classes must call these base class member functions
|
||
to make sure all registered cAudio objects are properly handled. Also note that
|
||
the return type of cDevice::PlayAudio() has been changed to 'void', since this
|
||
function always has to accept the entire data block immediately and there is
|
||
nothing that could be reasonably done in case an error occurs in one of the
|
||
cAudio objects.
|
||
- Now checking the driver's DVB_API_VERSION in dvbdevice.h. Since VDR now requires
|
||
a driver dated 2002-11-01 or later the MIN_DVB_DRIVER_VERSION_FOR_TIMESHIFT and
|
||
DVB_DRIVER_VERSION stuff has been replaced with DO_REC_AND_PLAY_ON_PRIMARY_DEVICE,
|
||
which can be used to disable simultaneous recording and replaying on the primary
|
||
DVB device in case there are problems with this.
|
||
|
||
2002-11-10: Version 1.1.16
|
||
|
||
- Fixed saving the polarization parameter of channels that have a number in the
|
||
'source' parameter (thanks to Peter Seyringer for reporting this one).
|
||
- Updated 'channels.conf.terr' (thanks to Andy Carter).
|
||
- Updated 'channels.conf.cable' (thanks to Achim Lange).
|
||
- First step towards a "unique channel ID". The channel ID is a human readable
|
||
string, made up from several parameters of the channel's definition in the file
|
||
'channels.conf' (see man vdr(5) for details).
|
||
In order for the "unique channel ID" to work, all channel definitions now must
|
||
be unique with respect to the combination of their Source, Frequency and SID
|
||
parameters. You may have to fix your 'channels.conf' manually if there are error
|
||
messages in the log file when loading it. BE SURE TO MAKE A BACKUP COPY OF YOUR
|
||
'channels.conf' AND 'timers.conf' FILE BEFORE SWITCHING TO THIS VERSION, AND CHECK
|
||
VERY CAREFULLY WHETHER YOUR TIMERS ARE STILL SET TO THE RIGHT CHANNELS!
|
||
When reading an existing 'timers.conf', the channels will be identified as before
|
||
by their numbers. As soon as this file is written back, the channel numbers will
|
||
be replaced by the channel IDs. After that it is possible to manually edit the
|
||
'channels.conf' file and rearrange the channels without breaking the timers.
|
||
Note that you can still define new timers manually by using the channel number.
|
||
VDR will correctly identify the 'channel' parameter in a timer definition and
|
||
use it as a channel number or a channel ID, respectively. Also, the SVDRP commands
|
||
that return timer definitions will list them with channel numbers in order to
|
||
stay compatible with existing applications.
|
||
The channel ID is also used in the 'epg.data' file to allow EPG information from
|
||
different sources to be stored, which would previously have been mixed up in case
|
||
they were using the same 'service ID'. Note that the contents of an existing
|
||
'epg.data' file from a previous version will be silently ignored, since it doesn't
|
||
contain the new channel IDs. When inserting EPG data into VDR via SVDRP you now also
|
||
need to use the channel IDs.
|
||
Currently the EPG data received from the DVB data stream only uses the 'Source'
|
||
and 'Service ID' part of the channel ID. This makes it work for channels with
|
||
the same service IDs on different sources (like satellites, cable or terrestrial).
|
||
However, it doesn't work yet if the service IDs are not unique within a specific
|
||
source. This will be fixed later.
|
||
- Added missing SID parameters to 'channels.conf'. Some channels have been removed
|
||
since they are apparently no longer broadcasted.
|
||
- Removed dropping EPG events from "other" streams that have a duration of 86400
|
||
seconds or more (was introduced in version 1.1.10). This has become obsolete by
|
||
the modification in version 1.1.13, which fixed fetching the current/next information
|
||
to handle cases where the duration of an event is set wrongly and would last beyond
|
||
the start time of the next event. Besides, the change in 1.1.10 broke handling EPG
|
||
data for NVOD channels.
|
||
- Fixed a compiler warning regarding cMenuChannels::Del() and MenuTimers::Del() hiding
|
||
the base class virtual functions.
|
||
|
||
2002-11-24: Version 1.1.17
|
||
|
||
- Added new entries to 'ca.conf'.
|
||
- Fixed closing unused PID handles (thanks to Stefan Schluenss for reporting this
|
||
one).
|
||
- Added more examples to 'diseqc.conf' (thanks to Oliver Endriss).
|
||
- Fixed disabling multiple recordings on a single DVB card (comment out the definition
|
||
of the macros DO_REC_AND_PLAY_ON_PRIMARY_DEVICE and DO_MULTIPLE_RECORDINGS in
|
||
dvbdevice.c).
|
||
- Plugins can now have their very own OSD setup in the object they return from
|
||
a call to cPlugin::MainMenuAction(). In order to implement this, the return type
|
||
of cPlugin::MainMenuAction() had to be changed from (cOsdMenu *) to (cOsdObject *).
|
||
So in case you are compiling an existing plugin with this version of VDR and you
|
||
get an error message, simply change cOsdMenu to cOsdObject in the plugin's source
|
||
for the MainMenuAction() function.
|
||
Plugin authors who have so far (ab)used the cControl mechanism to implement their
|
||
own raw OSD should take a look at the new demo plugin 'osddemo'. It implements
|
||
a very primitive game that shows how a plugin can have its own raw OSD. Especially
|
||
look into cLineGame and see how it implements the Show() function. See also
|
||
the chapter on "User interaction" in PLUGINS.html.
|
||
- Added three new fields to the lines in 'channels.conf': NID, TID and RID. NID and
|
||
TID are the Network and Transport Stream IDs, respectively. RID is an additional ID
|
||
that can be used to tell apart channels that would otherwise be indistinguishable.
|
||
This is typically the case with radio channels, which may have the same NID, TID
|
||
and SID, but different "radio IDs". This new field is therefore called RID ("radio
|
||
ID"). Currently NID and TID are not yet used by VDR and should always be 0. The
|
||
RID is actually used when building the "unique channel ID", so if you have channels
|
||
in your 'channels.conf' file that cause error messages when loading, you can set
|
||
the RIDs of these channels to different values.
|
||
When reading an old 'channels.conf' these new fields will be automatically
|
||
initialized to 0 and once the file is written back to disk they will be appended
|
||
to the channel definitions.
|
||
Thanks to R<>gis Bossut for pointing out that with some providers the channels can
|
||
only be distinguished through the RID.
|
||
- The "unique channel ID" now contains an optional 5th part (the RID). See man vdr(5).
|
||
- Updated 'channels.conf.cable' and made some channels unique using the new RID
|
||
(thanks to Andreas Kool for pointing out the problems).
|
||
- Made some channels unique in 'channels.conf.terr' using the new RID.
|
||
- Extended the '-l' option to allow logging to LOG_LOCALn (n=0..7) by writing, for
|
||
instance, '-l 3.7' (suggested by J<>rgen Schmidt).
|
||
- Now deleting stale lock files if they have a time stamp that is outside the window
|
||
'now +/- LOCKFILESTALETIME'. This improves things in cases where the system time
|
||
makes far jumps, so that a lock file might end up with a time stamp that lies
|
||
in the distant future (thanks to Oliver Endriss).
|
||
|
||
2002-12-01: Version 1.1.18
|
||
|
||
- Fixed missing initialization of 'number' in cChannel (thanks to Martin Hammerschmid
|
||
for reporting this one).
|
||
- Fixed a misplaced ')' in the fix about the stale lock files (thanks again to
|
||
Oliver Endriss for pointing this out - it was my fault).
|
||
- Group delimiters in the 'channels.conf' file that have no text (like a simple ":"
|
||
or ":@201") no longer show up in the Channels menu (suggested by Guy Roussin).
|
||
- Added "Tele 5" to 'channels.conf' (thanks to Georg Hitsch).
|
||
- Changed the source directory name for plugins from 'SRC' to 'src' (suggested by
|
||
Clemens Kirchgatterer).
|
||
- Removed transponders 10788, 11739 and 12266 from 'channels.conf' (apparently they
|
||
are no longer active).
|
||
- Deactivated some templates in tools.h in case some plugin needs to use the STL
|
||
(suggested by Gerald Berwolf).
|
||
- Timers now accept channel IDs even if the 'source' is 0 (thanks to Stefan Huelswitt
|
||
for reporting this one).
|
||
- Now taking an active SVDRP connection into account when doing shutdown or
|
||
housekeeping (suggested by Emil Naepflein).
|
||
- Macros in 'keymacros.conf' can now use "@plugin" to directly access the main menu
|
||
function of a given plugin (see man vdr(5) for details).
|
||
- The new plugin 'sky' can be used to integrate a Sky Digibox into the VDR system,
|
||
using a Kfir MPEG2 encoder card (see PLUGINS/src/sky/README for details).
|
||
|
||
2002-12-08: Version 1.1.19
|
||
|
||
- The character '|' in description texts of EPG records is now interpreted as a
|
||
newline character (suggested by Gerhard Steiner).
|
||
- Updated 'channels.conf.cable' (thanks to Andreas Kool).
|
||
- Improved handling of repeated remote keys.
|
||
- The RCU now only sets the channel number display when there are no incoming remote
|
||
control keys, which improves reaction on repeated keys.
|
||
- The actual tuning is now done in a separate thread, which makes zapping through the
|
||
channels a lot faster and no longer gets stuck on channels that don't broadcast.
|
||
This also makes "Motor-DiSEqC" work (thanks to Reinhard Walter Buchner for his help
|
||
in testing this). Since switching channels now no longer explicitly waits for a
|
||
channel lock in the foreground thread, the "panic level" mechanism is no longer
|
||
used (maybe we don't need it any more, anyway).
|
||
- The keyboard is now by default always active to control VDR. The 'make' option
|
||
REMOTE=KBD is therefore obsolete. When compiling VDR with REMOTE=RCU or REMOTE=LIRC,
|
||
the keyboard can thus now be active together with the remote control. If you want
|
||
to build VDR _without_ keyboard support you can set NO_KBD=1 in the 'make' call.
|
||
Since the keyboard codes are now different from the ones used previously (which
|
||
were mapped by the 'ncurses' library) you will need to go through the "Learning
|
||
keys" procedure again. To do so, either delete the file /video/remote.conf or
|
||
remove the KBD.* entries from it before starting this version of VDR.
|
||
(Thanks to Thomas Sailer for pointing out how to set the terminal parameters to
|
||
read from the keyboard).
|
||
- The 'ncurses' library is now only necessary when compiling VDR with DEBUG_OSD=1.
|
||
|
||
2002-12-15: Version 1.1.20
|
||
|
||
- Now checking if there is a connection to the keyboard (thanks to Jaakko Hyv<79>tti)
|
||
and only creating the KBD remote control if VDR is running in the foreground.
|
||
- Fixed taking an active SVDRP connection into account when doing shutdown (thanks
|
||
to Gregoire Favre for reporting this one).
|
||
- Changed setting of CXX and CXXFLAGS variables in Makefile, so that an externally
|
||
defined value will be taken if present (suggested by Robert Schiele).
|
||
Plugin authors should please change the lines
|
||
|
||
CXX = g++
|
||
CXXFLAGS = -O2 -Wall -Woverloaded-virtual
|
||
|
||
in their Makefile to
|
||
|
||
CXX ?= g++
|
||
CXXFLAGS ?= -O2 -Wall -Woverloaded-virtual
|
||
|
||
- Fixed recording overlapping timers on the same channel in case
|
||
DO_REC_AND_PLAY_ON_PRIMARY_DEVICE and/or DO_MULTIPLE_RECORDINGS is not defined
|
||
(thanks to Jaakko Hyv<79>tti).
|
||
- No longer stopping/restarting the DMX when switching audio channels (thanks to
|
||
Sven Goethel).
|
||
- Fixed high CPU load in 'Transfer Mode' (thanks to Oliver Endriss).
|
||
- If a PC keyboard is used as remote control, the string entry fields in the
|
||
menus now accept character input directly (however, this works only for keys that
|
||
are not otherwise defined as remote control keys). Also, plugins can switch the
|
||
cKbdRemote class into "raw mode", where all keyboard input will be made available
|
||
through the new 'kKbd' key code and none of it will be processed as normal remote
|
||
control functions (thanks to Jan Rieger for suggestions and testing).
|
||
- Fixed deleting characters in string entry fields in 'insert' mode.
|
||
- Now using "Doxygen" to generate source documentation (thanks to Walter Stroebel
|
||
for providing an initial 'Doxyfile' configuration and adjusting some comments).
|
||
See INSTALL for information how to do this. Some function descriptions have
|
||
already been adapted to Doxygen, more will follow.
|
||
|
||
2003-01-10: Version 1.1.21
|
||
|
||
- Fixed the 'channels.conf' entries for "Studio Universal" and "Disney Channel".
|
||
- Fixed handling channels in the "Channels" menu in case there are ':@nnn' group
|
||
separators without names (thanks to Guy Roussin for reporting this one).
|
||
- The SVDRP command CHAN now also accepts channel IDs.
|
||
- Increased the timeout until an index file is considerd no longer to be written
|
||
(sometimes in time shift with heavy system load the index file was closed too
|
||
early by the replay thread).
|
||
- Implemented "Link Layer" based CAM support, which hopefully will solve the
|
||
problems with CAMs we had in the past. To use this you need the driver version
|
||
2002-01-08 or higher (with the new firmware supporting the "Link Layer" protocol).
|
||
- Added an EPG bugfix that moves the Subtitle data to the Extended Description in
|
||
case the latter is empty and the Subtitle exceeds some useful length.
|
||
- Since several channels put very long strings into the Subtitle part of their
|
||
EPG data, that string is now limited in length when used in a recording's
|
||
file name.
|
||
|
||
2003-01-26: Version 1.1.22
|
||
|
||
- Added 'Hrvatska radiotelevizija' and 'RTV Slovenija' to ca.conf (thanks to
|
||
Paul Gohn).
|
||
- Implemented actual user input for CAM enquiry menus.
|
||
- Since disk file systems apparently don't honor the O_NONBLOCK flag to read from
|
||
a file in non-blocking mode the cDvbPlayer now uses a non blocking file reader
|
||
class to make sure replay remains smooth even under heavy system load.
|
||
- Increased the maximum possible packet size in remux.c to avoid corrupted streams
|
||
with broadcasters that send extremely large PES packets (thanks to Teemu Rantanen).
|
||
- Added TS error checking to remux.c (thanks to Teemu Rantanen).
|
||
- Modified cRingBufferLinear to avoid excessive memmove() calls in 'Transfer Mode'
|
||
and during recordings, which dramatically reduces CPU load. Thanks to Teemu
|
||
Rantanen for pinpointing the problem with the excessive memmove() calls.
|
||
- Updated 'channels.conf' (thanks to Achim Lange).
|
||
- Added/improved Swedish language texts (thanks to Jan Ekholm).
|
||
- Fixed the description of the "Scroll pages" OSD setup parameter ('yes' and 'no'
|
||
were mixed up).
|
||
- Fixed handling the LOG_LOCALn parameters in the -l option (thanks to Dimitrios
|
||
Dimitrakos).
|
||
- Changed EIT processing to always read a full section.
|
||
- Fixed handling user defined CFLAGS in libdtv/libvdr/Makefile (thanks to Clemens
|
||
Kirchgatterer and Robert Schiele).
|
||
- Fixed skipping unavailable channels in the EPG scanner.
|
||
|
||
2003-02-02: Version 1.1.23
|
||
|
||
- Fixed a new/delete malloc/free mismatch in ringbuffer.c (thanks to Stefan
|
||
Huelswitt for reporting this one).
|
||
- Improved CAM handling.
|
||
|
||
2003-02-09: Version 1.1.24
|
||
|
||
- Improved CAM handling (thanks to Reinhard Walter Buchner for a great deal of help
|
||
in debugging this). It is now possible to insert the CAM in any of the two slots,
|
||
to insert and remove it while VDR is running and even to have two CAMs inserted.
|
||
- Turning SI filtering off and on when switching channels.
|
||
- Timers are now processed even if an OSD menu is open (except for menus that
|
||
explicitly handle timers).
|
||
|
||
2003-02-16: Version 1.1.25
|
||
|
||
- Fixed high CPU load during replay (thanks to Marcel Wiesweg for pointing out this
|
||
one).
|
||
- Fixed margin handling in cRingBufferLinear.
|
||
- Now polling the output device in 'Transfer Mode' and retrying to put packets
|
||
into the ring buffer.
|
||
- Resetting the CAM slot in case communication breaks down.
|
||
- Improved keyboard detection (thanks to Werner Fink).
|
||
- Updated 'channels.conf.terr' (thanks to Andy Carter).
|
||
- Fixed broken support for raw OSDs of plugins (thanks to Marcel Wiesweg for
|
||
reporting this one).
|
||
- Broken CAM connections are now restored automatically.
|
||
|
||
2003-03-19: Version 1.1.26
|
||
|
||
- Removed signal handling and usleep(5000) from cDvbOsd::Cmd() (apparently this
|
||
is no longer necessary with DVB driver 1.0.0pre2 or later).
|
||
- If the primary device (as defined in setup.conf) doesn't have an MPEG decoder
|
||
(and thus can't be used as a primary device) VDR now scans all devices at
|
||
startup and uses the first one (if any) that actually has an MPEG decoder.
|
||
That way this will also work automatically if the primary device is implemented
|
||
by a plugin.
|
||
- Fixed a possible deadlock when using the "Blue" button in the "Schedules" menu
|
||
to switch to an other channel (thanks to Torsten Herz).
|
||
- Fixed the EPG bugfix code number for the MAX_USEFUL_SUBTITLE_LENGTH fix (thanks to
|
||
Torsten Herz for reporting this one).
|
||
- Modified the EPG scanner to avoid CPU load peaks (thanks to Steffen Becker for
|
||
reporting this one).
|
||
- Fixed support for Viaccess CAMs (thanks to Axel Gruber for helping to debug this).
|
||
|
||
2003-04-13: Version 1.1.27
|
||
|
||
- The CAM is now accessed only if the current channel actually has a non-zero Ca
|
||
value, and CAM access is completely suppressed during replay, which avoids
|
||
problems in case the CAM is attached to the primary DVB device.
|
||
- The "Left" and "Right" buttons now set the cursor to the first or last list item
|
||
even if the list consist only of a single page, like, for instance, the Main menu
|
||
(thanks to Oliver Endriss).
|
||
- Made the log message "OSD window width must be a multiple of 4..." a debug message
|
||
instead of an error message, so it can be avoided by using a log level less than 3.
|
||
- Updated Greek language texts (thanks to Dimitrios Dimitrakos).
|
||
- Fixed faulty behaviour of the "Mute" key in case the channel display is visible
|
||
(thanks to Florian Bartels for reporting this one and Sascha Volkenandt for
|
||
helping to fix it).
|
||
- Modified LOF handling to allow for C-band reception (thanks to Malcolm Caldwell).
|
||
- Added some missing cAudio handling calls (thanks to Werner Fink).
|
||
- Replaced the 'for' loops in StripAudioPackets() with memset() calls (thanks to
|
||
Werner Fink).
|
||
- Further increased the timeout until an index file is considerd no longer to be
|
||
written.
|
||
- Fixed a crash in case the index file can't be accessed any more during replay
|
||
(thanks to Stefan Huelswitt for reporting this one).
|
||
- Fixed displaying messages in the status line in case they exceed the OSD width
|
||
(thanks to Gerhard Steiner for reporting this one).
|
||
- Avoiding high CPU load in case the connection to LIRC gets lost (thanks to
|
||
Ludwig Nussel).
|
||
- Fixed handling repeat function with LIRC (thanks to Ludwig Nussel).
|
||
- Fixed handling min/max borders when entering integer values (thanks to Andy
|
||
Grobb for reporting this one).
|
||
- Implemented a "resume ID" which allows several users to each have their own
|
||
resume.vdr files (thanks to Martin Hammerschmid). This parameter can be set in
|
||
the "Setup/Replay" menu (see MANUAL for details).
|
||
- Now using 'libdtv' version 0.0.5 (thanks to Rolf Hakenes for the new version
|
||
and Stefan Huelswitt for adapting VDR to it).
|
||
- If no device with an MPEG decoder can be found at startup, the first device
|
||
is now used as primary device (just to have some device).
|
||
- Adjusted some Premiere channels in 'channels.conf' (thanks to Thomas Koch).
|
||
- Updated 'channels.conf.cable' (thanks to Stefan Hu<48>feldt).
|
||
- The 'epg.data' file is now read after all plugins have been started (thanks
|
||
to Sascha Volkenandt).
|
||
- The LIRC remote control no longer tries to learn keys if it can't connect to
|
||
the LIRC daemon (thanks to Ludwig Nussel for reporting this one). The same
|
||
applies to the RCU remote control in case of errors during startup.
|
||
- Fixed handling of Ca parameters with values <= MAXDEVICES, which don't indicate
|
||
an actual encrypted channel (thanks to Stefan Huelswitt for reporting this one).
|
||
|
||
2003-04-21: Version 1.1.28
|
||
|
||
- Using masks in EIT filtering to reduce the number of filters (thanks to Andreas
|
||
Schultz).
|
||
- Fixed handling Ca descriptors (thanks to Stefan Huelswitt).
|
||
- Now only those Ca descriptors are sent to a CAM that are actually understood
|
||
by that CAM.
|
||
- Re-enabled CAM communication during replay and on non-Ca channels. This requires
|
||
a DVB driver with firmware version 2613 or later.
|
||
- It is now possible to do simultaneous recording and replay with a single DVB
|
||
card, even with encrypted channels. This requires the use of the Link Layer
|
||
firmware, version 2613 or higher; the -icam firmware is still limited to live
|
||
encrypted channels only. Finally we have time shift for encrypted channels on
|
||
single card systems!
|
||
- Enhanced detection of pending user I/O from CAMs to avoid sluggish reaction
|
||
to remote control keypresses.
|
||
- Implemented "pause live video". You can now press "Menu/Yellow" or "Pause" on
|
||
your remote control while watching live video to start an instant recording
|
||
of the current programme and immediately start replaying that recording.
|
||
|
||
2003-04-27: Version 1.1.29
|
||
|
||
- Fixed detecting broken connection to the LIRC daemon (thanks to Ludwig Nussel).
|
||
- Now sending CA descriptors to the CAM in the same sequence as they were originally
|
||
received (thanks to Stefan Huelswitt).
|
||
- The PCR PID can now be set separately from the video PID. The syntax in the
|
||
'channels.conf' file is, for example, ...:164+17:..., where 164 is the video PID
|
||
and 17 is the PCR PID. The separator is a '+' sign, not a comma or semicolon as
|
||
with the audio PIDs, because this is not an alternate PID, but rather an
|
||
additional, necessary PID. In order to use this feature you need a driver version
|
||
dated 2003-04-27 or higher (setting the PCR PID didn't work in earlier versions).
|
||
- Fixed deleting the last recording in the "Recordings" menu, which started pausing
|
||
live video (thanks to Christoph Friederich for reporting this one).
|
||
- Now setting the "broken link" flag for GOPs at the beginning of a new video
|
||
sequence, which avoids artefacts when cutting (thanks to Stefan Huelswitt).
|
||
- Removed the Mute() call from cDvbDevice::StillPicture() (suggested by Andreas
|
||
Schultz).
|
||
- Updated 'channels.conf.terr' for Berlin (thanks to Andreas Brachold).
|
||
- Extended logging info when starting/stopping timers to show the channel number,
|
||
start/stop time and the file name (suggested by Manuel Hartl).
|
||
- Added a note regarding non-VDR files in the /videoX directories to INSTALL
|
||
(suggested by Benjamin Harling).
|
||
- Skipping keys that come in too fast from LIRC (thanks to Christian Jacobsen).
|
||
- Avoiding short display of the main menu if a plugin displays its own OSD and
|
||
is started through a user defined key macro (thanks to Andreas Mair for reporting
|
||
this one).
|
||
- Reduced the time to wait for EPG data when starting a recording to 3 seconds.
|
||
- The new SVDRP command STAT can be used to request information about the disk
|
||
usage (thanks to Thomas Koch).
|
||
- Fixed faulty calculation of section length in eit.c (thanks to Teemu Rantanen).
|
||
|
||
2003-05-04: Version 1.1.30
|
||
|
||
- Fixed minimum lifespan of deleted recordings (thanks to Jaakko Hyv<79>tti).
|
||
- Updated French OSD texts (thanks to Olivier Jacques).
|
||
- Fixed paging through lists with repeated Left/Right keys.
|
||
- Fixed setting the PCR-PID in case it is equal to one of the other PIDs (thanks
|
||
to Oliver Endriss for reporting this one).
|
||
- Fixed double call to MainMenuAction() of a plugin if invoked via a hotkey (thanks
|
||
to Kai Moeller for reporting this one).
|
||
- Fixed handling dedicated keys.
|
||
- Now turning off live PIDs when replaying. This avoids short spikes from other
|
||
channels when switching between Transfer Mode channels, and also lets an ongoing
|
||
replay continue even if a recording is started on the primary device.
|
||
- The RCU channel display no longer changes when a recording on a different
|
||
channel starts on the primary device.
|
||
- Restoring the current channel in case a recording has switched the transponder.
|
||
If all devices are busy and none of them can provide the current channel, the
|
||
message "Channel not available!" will be displayed.
|
||
- Removed the (no longer necessary) 'panic' stuff from cThread.
|
||
- Added cStatus::OsdItem() to provide the entire list of menu items to a plugin
|
||
(thanks to Carsten Siebholz).
|
||
- The red ("Record") and yellow ("Pause") button in the "Main" menu are no longer
|
||
available when replaying.
|
||
|
||
2003-05-11: Version 1.1.31
|
||
|
||
- Introduced the new function cPlugin::Initialize(), in order to be able to separate
|
||
the startup of a plugin into an "early" (Initialize()) and "late" (Start()) phase
|
||
(suggested by Andreas Schultz). Plugin authors should please read the section
|
||
about "Getting started" in PLUGINS.html and adapt their code if applicable.
|
||
- Implemented the CableDeliverySystemDescriptor and TerrestrialDeliverySystemDescriptor
|
||
in libdtv (thanks to Sven Grothklags and Andreas Schultz).
|
||
- Fixed keeping live video active in case the primary device doesn't have an MPEG
|
||
decoder (thanks to Wolfgang Goeller for reporting this one).
|
||
- Implemented cDevice::ActualDevice(), which returns the actual receiving device in
|
||
case of 'Transfer Mode', or the primary device otherwise. This may be useful for
|
||
plugins that want to attach a cReceiver to the device where the current live video
|
||
is actually coming from.
|
||
- Added VDRVERSNUM to config.h, which can be used by the preprocessor to check the
|
||
actual VDR version (suggested by Stefan Huelswitt).
|
||
- Removed the WaitForPut/WaitForGet stuff from cRingBuffer, since it appears to
|
||
no longer be necessary due to the implementation of cNonBlockingFileReader in
|
||
dvbplayer.c. Also, the long timeout in WaitForPut caused problems with cReceivers
|
||
that use a ring buffer and didn't immediately return from their Receive() function
|
||
if the buffer runs full (thanks to Sascha Volkenandt for reporting this one).
|
||
- Fixed handling EPG data where the "extended event descriptor" comes before the
|
||
"short event" or a "time shifted event" (thanks to Jonan Santiago).
|
||
- Disabled the "Received stuffing section in EIT" log message.
|
||
- Updated 'channels.conf.terr' for Berlin (thanks to Juri Haberland).
|
||
- Avoiding short display of the "Main" menu when pressing the "Recordings" button
|
||
or the "Back" button during replay.
|
||
- Further increased the timeout until an index file is considerd no longer to be
|
||
written.
|
||
- Implemented separate PausePriority and PauseLifetime parameters for the recordings
|
||
created when pausing live video (suggested by Alfred Zastrow).
|
||
- Changed C++ style comments in libdtv into C style to avoid warnings in gcc 3.x
|
||
(thanks to Andreas Schultz).
|
||
|
||
2003-05-18: Version 1.1.32
|
||
|
||
- Removed a faulty parameter initialization in menu.c (thanks to Lauri Tischler for
|
||
reporting this one).
|
||
- Re-implemented the WaitForPut/WaitForGet stuff in cRingBuffer, since some plugins
|
||
actually need this. By default the buffer does not wait; if a plugin needs the
|
||
waiting functionality it can call the new SetTimeouts() function.
|
||
- Moved the call to cPlugin::Start() further up in vdr.c, to make sure it gets
|
||
called before trying to learn the keys (problem reported by Oliver Endriss).
|
||
- No longer starting the editing process if no marks have been set (thanks to
|
||
Matthias Raus for reporting this one).
|
||
- Added Catalanian language texts (thanks to Marc Rovira Vall and Ramon Roca).
|
||
Plugin authors may want to add the new entries to their I18N texts and contact
|
||
the translators to have their texts translated. Note that there are now 16
|
||
different OSD languages, so please make sure you have 16 versions for each of
|
||
your texts.
|
||
- Moved the detection of a broken video data stream from the cDevice into the
|
||
cRecorder to avoid problems with cReceivers that want to receive from PIDs
|
||
that are currently not transmitting (thanks to Marcel Wiesweg for reporting
|
||
this one).
|
||
- Fixed setting the locking pid after a timed wait (thanks to Andreas Schultz).
|
||
- Avoiding spurious section filter settings after a channel switch.
|
||
- Updated 'channels.conf.cable' (thanks to Stefan Hu<48>feldt).
|
||
- Fixed reading 'epg.data' for channels with non-zero RID (thanks to Oliver
|
||
Endriss for reporting this one).
|
||
- Fixed EPG bugfix statistics to avoid log entires for undefined channels (thanks
|
||
to Lars Bl<42>ser for reporting this one).
|
||
- No longer waiting inside cIndexFile::CatchUp() to avoid shortly blocking replay
|
||
at the end of a recording.
|
||
|
||
2003-05-25: Version 1.1.33
|
||
|
||
- Modified handling of audio packets in cDvbPlayer for better sync with external
|
||
AC3 replay (thanks to Werner Fink).
|
||
- Fixed a memory leak in cNonBlockingFileReader (thanks to Stefan Huelswitt).
|
||
- Completed the French OSD texts (thanks to Gregoire Favre).
|
||
- Completed the Finnish OSD texts (thanks to Niko Tarnanen and Rolf Ahrenberg).
|
||
- Fixed I/O handling in case an explicit controlling terminal is given (thanks
|
||
to Oliver Endriss).
|
||
- Fixed resume file handling in case the resume.vdr file can't be written
|
||
(thanks to Gerhard Steiner).
|
||
- Fixed cutting a recording if there is only a single editing mark (thanks to
|
||
Ralf Klueber for reporting this one).
|
||
- Fixed volume display in case a plugin has its own OSD open (thanks to Marcel
|
||
Wiesweg).
|
||
- Fixed channel switching in the EPG scanner on single device systems.
|
||
- Completed the Swedish OSD texts (thanks to Tomas Prybil).
|
||
- Now switching to the channel used by the most recently started timer in case
|
||
the original current channel becomes unavailable due to a recording on a
|
||
different transponder. If this fails, a channel up/down switch is attempted as
|
||
a fallback solution (thanks to Lauri Tischler for reporting this one, and to
|
||
Hermann Gausterer for suggesting to switch to the recording channel).
|
||
- Fixed cReplayControl::Show() to avoid a compiler warning in g++ 3.2.3 (thanks
|
||
to Jan Ekholm for reporting this one).
|
||
- Completed the Slovenian OSD texts (thanks to Matjaz Thaler).
|
||
- Changed the DEFAULTPRIORITY in device.c to -1, so that the primary device
|
||
will be used for FTA recordings in case the CAM is connected to a non-primary
|
||
device (thanks to Reinhard Walter Buchner for reporting this one).
|
||
- The cCiHandler now closes its file handle when it gets destroyed.
|
||
- Checking for duplicate recordings with the same file name and disabling the
|
||
second timer (thanks to Peter Bieringer for reporting this one).
|
||
- Fixed handling newly created timers in case they are not confirmed with "Ok"
|
||
(thanks to Gerhard Steiner for reporting this one).
|
||
- It is now possible to directly delete a timer that is currently recording
|
||
(thanks to Alexander Damhuis for reporting this one).
|
||
|
||
2003-05-30: Version 1.2.0pre1
|
||
|
||
- Some corrections to the French OSD texts (thanks to Olivier Jacques).
|
||
- Fixed some missing commas in i18n.c (thanks to Dimitrios Dimitrakos for
|
||
reporting this problem).
|
||
- Some corrections to the Finnish OSD texts (thanks to Niko Tarnanen and Rolf
|
||
Ahrenberg).
|
||
- Completed the Italian OSD texts (thanks to Antonio Ospite).
|
||
- Fixed breaking off replay in case the user hits "Play" or "Pause" too soon after
|
||
going into "Pause live video" mode (thanks to Karim Afifi for reporting ths one).
|
||
- Some corrections to the Catalanian OSD texts (thanks to Jordi Vil<69>).
|
||
- Single event timers are now deleted if the recording they are doing is
|
||
deleted before the timer ends.
|
||
- Fixed an uninitialized variable in cDisplayChannel (thanks to Stefan Huelswitt).
|
||
- Fixed a possible access of invalid file handles in cSIProcessor::Action()
|
||
(thanks to Stefan Huelswitt).
|
||
|
||
2003-06-01: Version 1.2.0
|
||
|
||
- Completed Greek language texts (thanks to Dimitrios Dimitrakos).
|
||
- Completed Polish language texts (thanks to Michael Rakowski).
|
||
- Added a note about NPTL ("Native Posix Thread Library") to the INSTALL file
|
||
(thanks to Jon Burgess for pointing this out).
|
||
- Some corrections to the Finnish OSD texts (thanks to Jaakko Hyv<79>tti).
|
||
- Officially released as version 1.2.0.
|
||
|
||
2003-06-09: Version 1.2.1
|
||
|
||
- Fixed OSD access in case none of the devices provides one (thanks to Axel
|
||
Gruber for reporting this one).
|
||
- Fixed editing channels ('timers.conf' was not written after a channel has
|
||
been modified, which could result in errors upon the next start of VDR).
|
||
- Fixed a crash when cancelling a newly created timer (thanks to Thomas Schmidt
|
||
for reporting this one).
|
||
- Completed Hungarian language texts (thanks to Istvan Koenigsberger and Guido
|
||
Josten).
|
||
- Fixed device handling in the CICAM menu in case a VDR instance was started
|
||
with a specific device using the -D option (thanks to Gerald Raaf for reporting
|
||
ths one).
|
||
- Initializing the current channel to '1' to avoid a crash in creating a new
|
||
timer in case there is no device in the system that can actually receive any
|
||
channel (thanks to Malcolm Caldwell for reporting this one).
|
||
- Some corrections to the Finnish OSD texts (thanks to Niko Tarnanen and Rolf
|
||
Ahrenberg).
|
||
|
||
2003-08-03: Version 1.2.2
|
||
|
||
- Fixed a bug in channel switching after Left/Right has been pressed (thanks to
|
||
Michael Walle for reporting this one).
|
||
- Improved channel switching in case of numerical input by switching as soon as
|
||
the channel is unique (suggested by Jaakko Hyv<79>tti).
|
||
- Fixed creating a new channel in the "Channels" menu in case the 'channels.conf'
|
||
contains ':@nnn' lines with no text (thanks to Guy Roussin for reporting this
|
||
one).
|
||
- Changed the behaviour of the '0' key in normal viewing mode so that a channel
|
||
only qualifies as "previous" if it has been selected for at least 3 seconds
|
||
(suggested by Thomas Keil).
|
||
- Now clearing the channel info display when entering numeric keys to switch
|
||
channels (suggested by Guy Roussin).
|
||
- Added missing I18N entry for "Ppid" (thanks to Rolf Ahrenberg).
|
||
- Fixed handling the color buttons in the "Edit channel" menu (thanks to Thomas
|
||
Keil for reporting this one).
|
||
- Fixed an occasional "Broken pipe" error in SVDRP connections (thanks to Gerhard
|
||
Steiner for reporting this one).
|
||
- Fixed checking CA capabilities with the dvb-kernel driver (thanks to Kenneth
|
||
Aafl<66>y).
|
||
- Fixed selecting the device, because sometimes an FTA recording terminated a
|
||
CA recording (thanks to Emil Naepflein).
|
||
- Fixed a possible crash in case a VFAT file system is used without compiling VDR
|
||
with VFAT=1 (thanks to Ernst F<>rst for reporting this one).
|
||
- Now the program uses the values of VIDEODIR and PLUGINDIR defined in Makefile
|
||
or Make.config as defaults (thanks to Steffen Barszus).
|
||
- Added the usual menu timeout to the CAM menus.
|
||
|
||
2003-08-17: Version 1.2.3 (not officially released)
|
||
|
||
- Fixed the TS to PES repacker so that it works with MPEG1 streams (thanks to
|
||
Andreas Kool).
|
||
- Fixed keeping track of the current channel number when moving channels in
|
||
the "Channels" menu (thanks to Mirko G<>nther for reporting this one).
|
||
- Made the plugin library directory configurable via Make.config (thanks to
|
||
Ludwig Nussel).
|
||
- Fixed scaling SPU bitmaps in Letterbox mode when playing NTSC material.
|
||
In order to do this, the cDevice was given a new member function GetVideoSystem().
|
||
- Fixed two warnings when compiling with gcc 3.3.1 (thanks to Alfred Zastrow for
|
||
reporting this).
|
||
- Made crc32() a static function in libdtv/libsi/si_parser.c to avoid a name clash
|
||
when using other libraries that also implement a function by that name (thanks
|
||
to Reinhard Nissl for reporting this one).
|
||
- Fixed staying off the end of an ongoing recording while replaying in time shift
|
||
mode (thanks to Rainer Zocholl for reporting this one).
|
||
- VDR now stops with exit status 2 if one of the configuration files can't be
|
||
read correctly at program startup (suggested by Rainer Zocholl).
|
||
- Fixed a crash when starting "Pause live video" twice within the same minute on
|
||
the same channel.
|
||
- Fixed freezing replay if a timer starts while in Transfer Mode from the device
|
||
used by the timer, and the timer needs a different transponder (thanks to
|
||
Richard Robson for reporting this one).
|
||
- Fixed toggling channels with the '0' key (thanks to Mirko G<>nther for reporting
|
||
this one).
|
||
- Made the "Zap timeout" (the time until a channel counts as "previous" for
|
||
switching with '0') a setup variable, available in "Setup/Miscellaneous"
|
||
(suggested by Helmut Auer).
|
||
- Removing deleted recordings faster than normal when cutting, to avoid running
|
||
out of disk space (thanks to Manfred Schmidt-Voigt for reporting this one).
|
||
|
||
2003-08-26: Version 1.2.4 (not officially released)
|
||
|
||
- Fixed 'runvdr' to stay in the loop only if VDR returns an exit status of '1'.
|
||
- Completed the Finnish OSD texts (thanks to Rolf Ahrenberg).
|
||
- Empty values in setup.conf are no longer treated as an error (thanks to Andreas
|
||
Kool for reporting this one).
|
||
- Added a note about the config files of plugins to INSTALL (thanks to Thomas
|
||
Keil).
|
||
- VDR now continues to start up, even if there is an error in setup.conf.
|
||
- Fixed a bug in resetting OSD color palettes (thanks to Torsten Herz).
|
||
- Fixed starting a recording on the primary device if there is a replay session
|
||
active (thanks to Javier Marcet for reporting this one).
|
||
- Avoiding an unnecessary stop of an ongoing Transfer Mode when starting a
|
||
recording on the primary device.
|
||
|
||
2003-08-31: Version 1.2.5pre1
|
||
|
||
- Now explicitly handling exit value 0 and 2 in 'runvdr'.
|
||
- Added a missing 'w' to the allowed characters for Finnish and Swedish (thanks
|
||
to Lauri Tischler and Ragnar Sundblad).
|
||
- Added channels for DVB-T Hannover (Germany) to channels.cont.terr (thanks to
|
||
Peter Waechtler).
|
||
- Fixed a hangup in SVDRP when the client disappears without sending QUIT (thanks
|
||
to Robert Bartl for reporting this one). The problem was introduced in version
|
||
1.2.2 through the fix for an occasional "Broken pipe" error in SVDRP connections.
|
||
- Updated 'channels.conf.terr' for Berlin.
|
||
- Fixed displaying still pictures, now using the driver's VIDEO_STILLPICTURE call
|
||
directly (thanks to Oliver Endriss). This also improves navigating through DVD
|
||
menus with the DVD plugin. If this causes problems with your particular system
|
||
(maybe because you are using the 'analogtv' plugin) you can reactivate the
|
||
previous behaviour by commenting out the line
|
||
#define VIDEO_STILLPICTURE_WORKS_WITH_VDR_FRAMES
|
||
in VDR/dvbdevice.c.
|
||
Note that you need driver version 2003-08-23 or later for this to work!
|
||
- Fixed handling extra blanks in plugin command lines.
|
||
- Actually implemented the SVDRP command DELC.
|
||
- Now clearing the player device if there are too many poll timeouts in 'Transfer
|
||
Mode', which avoids buffer overflows and black screens in such cases.
|
||
|
||
2003-09-07: Version 1.2.5pre2
|
||
|
||
- Updated VIVA, VIVA Plus, MTV Central and MTV 2 in channels.conf (thanks to
|
||
Sebastian Frei).
|
||
- Changed "Studio Universal" to "Sci-Fi" in channels.conf.
|
||
- Fixed a crash when using the --terminal option without having access to the
|
||
given terminal (thanks to Steffen Barszus for helping to debug this one).
|
||
- Added a note about the driver version needed for the still picture fix from
|
||
version 1.2.5pre1 to work properly (thanks to Oliver Endriss for pointing
|
||
this out).
|
||
- Fixed setting the primary device in case none of the devices provides an MPEG
|
||
decoder (thanks to Rene Bartsch for reporting this one).
|
||
- Fixed handling the "Red" button in the "Schedules" menu in case there are no
|
||
events listed for a particular channel (thanks to Christoph Hermanns for
|
||
reporting this one).
|
||
- When setting an editing mark while in "Pause" mode, replay now immediately
|
||
jumps to the marked frame (thanks to Oskar Signell for pointing out this
|
||
problem).
|
||
- The DVB devices no longer send CA descriptors to the CAM while the EPG scanner
|
||
is active (sometimes the CAMs got irritated when the device tuned to channels
|
||
they couldn't handle).
|
||
|
||
2003-09-14: Version 1.2.5pre3
|
||
|
||
- Fixed dropping out of replay mode while viewing a recording that is still
|
||
going on (thanks to Oliver Endriss for reporting and helping to debug this
|
||
one).
|
||
- Fixed handling ':' characters in channel names when reading channels.conf
|
||
(thanks to Reinhard Nissl for reporting this one).
|
||
- Fixed the URL to the 'Doxygen' tool in INSTALL (thanks to Dirk Essl).
|
||
- Removed the obsolete chapter "Stopping a recording on the primary DVB interface"
|
||
from MANUAL.
|
||
- Completed Dutch language texts (thanks to Hans Dingemans).
|
||
- Made 'diseqc.conf' a required file only if Setup.DiSEqC is activated (thanks to
|
||
Thomas Schmidt).
|
||
- VDR now starts up even if 'keymacros.conf' references a plugin that is currently
|
||
not loaded (suggested by Alexander Wetzel).
|
||
- Fixed checking for VIDEO_STREAM_S in cRemux::SetBrokenLink() (thanks to Oliver
|
||
Endriss).
|
||
- Added 'repeat' function to keys '7' and '9' ("jump to mark") in replay mode
|
||
(suggested by Oliver Endriss).
|
||
- Made cOsdMenu::Display() virtual, which allows plugins to do some additional
|
||
processing after calling the base class function (suggested by Jan Rieger).
|
||
- Updated 'ca.conf' (thanks to Marco Franceschetti).
|
||
|
||
2003-09-17: Version 1.2.5
|
||
|
||
- Updated 'channels.conf.cable' (thanks to Stefan Hu<48>feldt).
|
||
|
||
2003-10-17: Version 1.2.6pre1
|
||
|
||
- Updated the required driver version in INSTALL (thanks to Jens Groth for
|
||
reporting this one).
|
||
- Fixed missing channel info after an incomplete channel group switch (thanks
|
||
to Andreas Trauer).
|
||
- Fixed handling a channels.conf that contains a ":@nnn" line as its last entry
|
||
(thanks to Ralf Klueber).
|
||
- Fixed detecting the /dev/videoN devices for GRAB in case there are others
|
||
before the DVB devices (thanks to Andreas Kool).
|
||
- Updated 'channels.conf.terr' for Berlin (thanks to Markus Hardt).
|
||
- Fixed handling rc key learning in case cRemote::Initialize() returns 'false'
|
||
(thanks to Oliver Endriss).
|
||
- Fixed initializing the highlight area in cDvbSpuDecoder (thanks to Sven Goethel).
|
||
- Now trying to get a timer's channel without RID when loading 'timers.conf'
|
||
(thanks to Thomas Rausch).
|
||
- Removed the unused 0x73 (TOT) filter in eit.c (thanks to Andreas Trauer).
|
||
- Fixed extracting the ES data in cDvbDevice::StillPicture() (thanks to Stefan
|
||
Huelswitt).
|
||
- Added MPEG1 handling to cDvbDevice::StillPicture() (thanks to Thomas
|
||
Heiligenmann).
|
||
- Changed the default "Lifetime" to 99, which means that recordings will
|
||
never be deleted automatically in case the disk runs full (suggested by
|
||
Oliver Endriss). Note that in an existing VDR installation the current
|
||
value as set in 'setup.conf' will still be used - this change only affects
|
||
new VDR installations.
|
||
- Edited recordings will now never be deleted automatically if the disk runs
|
||
full (suggested by Emil Naepflein).
|
||
- Channel IDs are now checked when reading 'channels.conf' to avoid later
|
||
problems with timers.
|
||
|
||
2003-10-19: Version 1.2.6pre2
|
||
|
||
- Improved cDvbDevice::StillPicture() (thanks to Thomas Heiligenmann).
|
||
|
||
2003-10-24: Version 1.2.6pre3
|
||
|
||
- Improved cDvbDevice::StillPicture() (thanks to Oliver Endriss).
|
||
- Continuing learning remote control keys in case one rc fails (thanks to
|
||
Oliver Endriss).
|
||
- Fixed handling comments in editing marks.
|
||
|
||
2003-10-26: Version 1.2.6pre4
|
||
|
||
- Fixed handling CAM menus in case the CAM connection fails while the menu
|
||
is being presented (thanks to Thomas v. Keller for reportign this one).
|
||
- Added missing 'const' to some cChannel member functions (thanks to Torsten
|
||
Herz).
|
||
|
||
2003-11-08: Version 1.2.6pre5
|
||
|
||
- Added cDevice::GetSTC() (suggested by Sven Goethel).
|
||
- Added Asia-Pacific satellites to 'sources.conf' (thanks to Richard Scobie).
|
||
- Added North American satellites to 'sources.conf' (thanks to Luke Jenkins).
|
||
- Fixed getting the list of recordings in case VDR is started from a directory
|
||
where it doesn't have access to (thanks to Dirk Mueller).
|
||
|
||
2003-11-09: Version 1.2.6pre6
|
||
|
||
- Fixed handling Priority -1 in cDvbDevice::ProvidesChannel() (thanks to
|
||
Torsten Herz).
|
||
- Fixed processing EPG data in case there is no title (thanks to Torsten Herz).
|
||
|
||
2003-11-14: Version 1.2.6
|
||
|
||
- Final release of version 1.2.6.
|
||
|
||
2004-01-04: Version 1.3.0
|
||
|
||
- Changed thread handling to make it work with NPTL ("Native Posix Thread Library").
|
||
Thanks to Jon Burgess, Andreas Schultz, Werner Fink and Stefan Huelswitt.
|
||
- The cThread class now accepts a 'Description' parameter, which is used to log
|
||
the beginning and end of the thread, together with its process and thread id.
|
||
For descriptions that need additional parameters you can use the function
|
||
cThread::SetDescription(), which accepts 'printf()' like arguments.
|
||
Existing plugins that use threads should be changed to use this functionality
|
||
instead of explicit 'dsyslog()' calls inside their Action() function in order
|
||
to support logging the thread ids.
|
||
- Added "Slovak Link" and "Czech Link" to 'ca.conf' (thanks to Emil Petersky).
|
||
However, 'ca.conf' is now pretty much obsolete due to the automatic CA handling.
|
||
- Mutexes are now created with PTHREAD_MUTEX_ERRORCHECK_NP, which makes the
|
||
'lockingTid' stuff obsolete (thanks to Stefan Huelswitt).
|
||
- Changed font handling to allow language specific character sets.
|
||
- Adopted the small font character set from the "Elchi" patch (originally
|
||
provided by Alessio Sangalli).
|
||
- Greek language texts now use iso8859-7 character set (thanks to Dimitrios
|
||
Dimitrakos).
|
||
- Rearranged section data handling, so that the actual data handling can be done
|
||
separately, even from within plugins.
|
||
- The EPG data structures have been moved from eit.[hc] to epg.[hc] and have been
|
||
adapted to the general VDR coding style. Plugins that use these data structures
|
||
may need to change some function names (which should be obvious).
|
||
The name 'subtitle' has been changed to 'shortText' to avoid clashes with actual
|
||
subtitles that are part of a movie. The name 'extendedDescription' has been
|
||
shortened to 'description'.
|
||
- Replaced 'libdtv' with 'libsi' (thanks to Marcel Wiesweg), which is thread
|
||
safe and can be used by multiple section filters simultaneously.
|
||
- Added 'cRwLock' to 'thread.[hc]'. Note that all plugin Makefiles need to
|
||
define _GNU_SOURCE for this to work (see the example plugin Makefiles and
|
||
'newplugin').
|
||
- Fixed a problem with crc32 in SI handling on 64bit systems (thanks to Pedro
|
||
Miguel Sequeira de Justo Teixeira for reporting this one).
|
||
- Fixed an alignment problem in CAM access on 64bit systems (thanks to Pedro
|
||
Miguel Sequeira de Justo Teixeira for reporting this one).
|
||
- Added 'StreamType' setting to CAM communication, which is important for
|
||
Aston/SECA CAMs (thanks to Antonino Sergi).
|
||
- Now the CA descriptors are sent to the CAM in the 'program' or 'ES level'
|
||
sections, depending on where they are found in the PMT (thanks to Hans-Peter
|
||
Raschke for reporting this one). This should make SkyCrypt CAMs work.
|
||
- Now using the 'version number' of EPG events to avoid unnecessary work.
|
||
- Channel data is now automatically derived from the DVB data stream (inspired
|
||
by the 'autopid' patch from Andreas Schultz).
|
||
- The current channel is now automatically re-tuned if the PIDs or other settings
|
||
change. If a recording is going on on a channel that has a change in its
|
||
settings, the recording will be stopped and immediately restarted to use the
|
||
new channel settings.
|
||
- EPG events now use the complete channel ID with NID, TID and SID.
|
||
- Channel names in 'channels.conf' can now have a short form, as provided
|
||
by some tv stations (see man vdr(5)). Currently channels that provide short
|
||
names in addition to long ones are listed in the OSD as "short,long name",
|
||
as in "RTL,RTL Television". The short names will be used explicitly later.
|
||
- The Ca parameter in 'channels.conf' has been extended and now contains all the
|
||
CA system ids for the given channel. When switching to a channel VDR now tests
|
||
for a device that provides one of these CA system ids. The devices automatically
|
||
get their supported ids from the CI handler.
|
||
- The values in 'ca.conf' are currently without any real meaning. Whether or not
|
||
a channel with conditional access can be received is now determined automatically
|
||
by evaluating its CA descriptors and comparing them to the CA system ids
|
||
provided by the installed CAM. Only the special values 1-16 are used to assign
|
||
a channel to a particular device.
|
||
- Increased the maximum number of possible OSD colors to 256.
|
||
- Limited the line length in the EPG bugfix report, which appears to fix a buffer
|
||
overflow that caused a crash when cleaning up the EPG data (at 05:00 in the
|
||
morning).
|
||
|
||
2004-01-11: Version 1.3.1
|
||
|
||
- Fixed a lockup in the EPG scanner when no non-primary device was available
|
||
(thanks to Martin Holst for reporting this one).
|
||
- Fixed a compiler warning about virtual cConfig::Load() functions (thanks to
|
||
Lauri Tischler for reporting this one).
|
||
- Fixed a warning about character comparison in libsi/si.c (thanks to Lauri
|
||
Tischler for reporting this one).
|
||
- The new parameter "Update channels" in the "Setup/DVB" menu can be used to
|
||
control if and how channels will be automatically updated (see MANUAL).
|
||
This has already been part of the 'autopid' patch by Andreas Schultz and has
|
||
now been adopted.
|
||
- Fixed a crash in case there is no DVB hardware present (thanks to Sascha
|
||
Volkenandt for reporting this one).
|
||
- Changed calculation of channel ids to make it work for tv stations that use
|
||
the undefined NID value 0 (thanks to Teemu Rantanen for reporting this one).
|
||
- Enhanced the SDT filter to handle multi part sections.
|
||
- Added support for selecting preferred EPG languages (based upon a patch by
|
||
Teemu Rantanen).
|
||
- Fixed a 'const' in libsi/si.h (thanks to Marcel Wiesweg).
|
||
- Fixed the 'su' call in 'runvdr' to make it work on systems that require the
|
||
user name to appear before the command option (thanks to Robert Huitl).
|
||
- Fixed testing for matching section filters in case they are turned off (thanks
|
||
to Marcel Wiesweg).
|
||
- In case of incomplete sections an error message is now logged only every 10
|
||
seconds.
|
||
- Fixed a possible NULL pointer access in cEITScanner::Process() (thanks to
|
||
Andreas Kool).
|
||
- The actual transponder data is now taken from the NIT and existing channels
|
||
are adjusted if necessary. If the NIT contains new transponders, they are
|
||
scanned for channels during the next EPG scan. Note that only the satellite
|
||
branches are tested, cable and terrestrial need to be tested by somebody who
|
||
actually has such equipment.
|
||
|
||
2004-01-18: Version 1.3.2
|
||
|
||
- Fixed resetting the EPG data versions after changing the preferred languages
|
||
(thanks to Teemu Rantanen for reporting this one and helping to debug it).
|
||
- Added LinkageDescriptor handling to 'libsi' (thanks to Marcel Wiesweg).
|
||
- Added Russian language texts (thanks to Vyacheslav Dikonov).
|
||
Plugin authors may want to add the new entries to their I18N texts and contact
|
||
the translators to have their texts translated. Note that there are now 17
|
||
different OSD languages, so please make sure you have 17 versions for each of
|
||
your texts.
|
||
- Some corrections and additions to the Finnish OSD texts (thanks to Rolf
|
||
Ahrenberg and Niko Tarnanen).
|
||
- Fixed a wrong 'delta' value in the call to the shutdown script (thanks to
|
||
Stephan Epstein for reporting this one).
|
||
- Activated detection of radio channels (to avoid reports about "channels not
|
||
being detected that used to be detected with the 'scan' utility or the
|
||
original 'autopid' patch ;-).
|
||
- Channels with a zero VPID no longer write a PPID into channels.conf.
|
||
- Short channel names are now only stored if they actually differ from the
|
||
full name.
|
||
- The EPG scan now scans newly found transponders together with already existing
|
||
ones.
|
||
- The "Red" button in the "Setup/EPG" menu can now be used to force an EPG
|
||
scan on a single DVB card system (see MANUAL for details).
|
||
- The new SVDRP command 'SCAN' can be used to force an EPG scan on a single
|
||
DVB card system (see MANUAL under Setup/EPG for details).
|
||
- Fixed handling PID changes in 'Transfer Mode'.
|
||
- Excess blanks in channel names read from the SDT are now removed.
|
||
- Fixed wrong parameter settings when scanning NITs for terrestrial transponders
|
||
(thanks to Christian Tramnitz for pointing out this one).
|
||
- Fixed some out of bounds parameter settings when scanning NITs for cable
|
||
and satellite transponders.
|
||
- Added 'libsi' include files to the 'include' directory, so that plugins can
|
||
use them (thanks to Marcel Wiesweg).
|
||
- Now only processing NITs that contain the transponder they are actually
|
||
broadcast on.
|
||
- Fixed setting the source type for newly detected terrestrial transponders
|
||
(thanks to Christian Tramnitz for his support in debugging this).
|
||
|
||
2004-01-25: Version 1.3.3
|
||
|
||
- Completed the Finnish OSD texts (thanks to Rolf Ahrenberg).
|
||
- Added ISO639LanguageDescriptor to 'libsi'.
|
||
- Changed the 'languageCode' members in the descriptor classes of 'libsi' to
|
||
'char[4]' and setting the 4th byte to 0 for easier handling.
|
||
- Fixed frequency handling when setting the CA descriptors in cDvbTuner::Action()
|
||
(thanks to Jan Ekholm for reporting and helping to debug this one).
|
||
- Now setting CA descriptors even if "Setup/DVB/Update channels" is less than 2.
|
||
- There can now be up to 32 audio and Dolby PIDs (however, currently still only
|
||
the first two are used throughout the rest of the program).
|
||
- The audio and Dolby PIDs in 'channels.conf' now can have an optional language
|
||
code (see man vdr(5)). Currently this is only stored and not yet used otherwise.
|
||
- Added a call to cStatus::MsgOsdCurrentItem() to cMenuEditItem::SetValue()
|
||
(thanks to Martin Hammerschmid).
|
||
|
||
2004-02-08: Version 1.3.4
|
||
|
||
- Fixed handling language codes in case there is no audio or Dolby PID.
|
||
- Fixed handling CA ids (was broken in 1.3.3).
|
||
- Fixed the SVDRP command 'STAT DISK' to avoid a 'division by 0' in case the
|
||
disk is full (thanks to Jens Rosenboom).
|
||
- Fixed handling bitmap indexes for 256 color mode (thanks to Andreas Regel).
|
||
- Now handling "linked services" (based on the 'autopid' patch from Andreas
|
||
Schultz). Linked channels are detected and added to 'channels.conf', but
|
||
currently they are not yet presented to the user other than being in the
|
||
normal channel list (this will come later).
|
||
- Preliminary fix for the "Unknown picture type error" (thanks to Sascha
|
||
Volkenandt for his support in debugging this one). This may slow down switching
|
||
between channels on different transponders for now, but a better solution will
|
||
come later.
|
||
- Fixed the validity check for channel IDs, because some providers use TIDs with
|
||
value 0 (thanks to Thomas Bergwinkl).
|
||
- Enabled switching to a channel even if it has no Vpid or Apid set, because these
|
||
might be automatically set when tuned to that transponder.
|
||
- No longer closing the Channels menu after trying to switch to a channel that
|
||
is currently not available.
|
||
- Removed the now obsolete CaCaps stuff. The Setup/CICAM menu now displays the
|
||
actual CAM type as reported by the CAM. The 'ca.conf' file has been stripped
|
||
down to the values 0..4.
|
||
|
||
2004-02-29: Version 1.3.5
|
||
|
||
- Fixed reading the EPG preferred language parameter from 'setup.conf'.
|
||
- Fixed switching to a visible programme in case the current channel has neither
|
||
a video nor an audio PID.
|
||
- Fixed editing channels (SID now range checked) and creating new channels (NID,
|
||
TID and RID are now set to 0).
|
||
- Fixed transponder handling to make it work with satellites that provide two
|
||
transponders on the same frequency, with different polarization, like Hispasat
|
||
at S30.0W (thanks to Thomas Bergwinkl for pointing this out). See man vdr(5)
|
||
for details about the enhanced channel ID format.
|
||
- Since there appears to be no general solution for the UPT error yet, a recording
|
||
now initiates an "emergency exit" if the number of UPT errors during one
|
||
recording exceeds 10 (suggested by Gregoire Favre). Since the UPT error doesn't
|
||
happen on my system, this has not been explicitly tested.
|
||
The "preliminary fix" for the UPT error in VDR/dvbdevice.c has been disabled
|
||
by default, since it makes channel switching unpleasently slow. If you want
|
||
to have that workaround back, you can uncomment the line
|
||
//#define WAIT_FOR_LOCK_AFTER_TUNING 1
|
||
in VDR/dvbdevice.c.
|
||
- Adapted the 'sky' plugin to use the actual channel IDs, and to fetch EPG data
|
||
from www.bleb.org.
|
||
- Limited automatic retuning to devices that actually provide the transponder
|
||
(necessary for the 'sky' plugin).
|
||
- Fixed handling receivers in the 'sky' plugin, so that a recording on the same
|
||
channel won't interrupt an ongoing Transfer Mode.
|
||
- Added subtable ID and TSDT handling to 'libsi' (thanks to Marcel Wiesweg).
|
||
- Fixed some Russian OSD texts (thanks to Vyacheslav Dikonov).
|
||
- Added the 'running status' to the EPG events. This is necessary for implementing
|
||
the VPS function for recording.
|
||
- Removed the obsolete 'present' and 'following' handling from the EPG data.
|
||
- The EPG data is now always kept sorted chronologically in the internal data
|
||
structures. This also means that any EPG data retrieved through the SVRDP
|
||
command LSTE is guaranteed to be sorted by start time.
|
||
- Now using the 'running status' in the channel display, so that a programme
|
||
that has an end time that is before the current time, but is still running,
|
||
will still be shown in the display (provided the broadcasters handle the
|
||
'running status' flag correctly). This also applies to programmes that have
|
||
a start time that is in the future, but are already running.
|
||
- Implemented an "EPG linger time", which can be set to have older EPG information
|
||
still displayed in the "Schedule" menu (thanks to Jaakko Hyv<79>tti).
|
||
- Added PDCDescriptor handling to 'libsi'.
|
||
- Implemented handling the VPS timestamps (aka "Programme Identification Label")
|
||
for full VPS support for timers (provided the tv stations actually broadcast
|
||
this information). The VPS time is displayed in the event info page if it exists
|
||
and is different than the event's start time.
|
||
- Extended the SVDRP command LSTE to allow limiting the listed data to a given
|
||
channel, the present or following events, or events at a given time (thanks to
|
||
Thomas Heiligenmann).
|
||
- Fixed a typo in libsi/si.h (thanks to St<53>phane Est<73>-Gracias).
|
||
- Timers can now be set to use the VPS information to control recording a programme.
|
||
The new setup options "Recording/Use VPS" and "Recording/VPS margin", as well as
|
||
the "VPS" option in the individual timers, can be used to control this feature
|
||
(see MANUAL for details).
|
||
Note that this feature will certainly need a lot of testing before it can be
|
||
called "safe"!
|
||
- The "Schedule" and "What's on now/next?" menus now have an additional column
|
||
which displays information on whether there is a timer defined for an event,
|
||
whether an event has a VPS time that's different than its start time, and
|
||
whether an event is currently running (see MANUAL under "The "Schedule" Menu"
|
||
for details).
|
||
|
||
2004-03-14: Version 1.3.6
|
||
|
||
- Completed the Finnish OSD texts (thanks to Rolf Ahrenberg).
|
||
- Fixed some descriptor handling in 'libsi' (thanks to St<53>phane Est<73>-Gracias).
|
||
- Fixed handling the current menu item (thanks to Marc Hoppe).
|
||
- Fixed assigning events to timers (they no longer get "stuck").
|
||
- Added log entries whenever the running status of an event changes (currently
|
||
only logging the first 30 channels).
|
||
- Fixed handling timers in VPS margin if the EPG scan is turned on (the EPG scan
|
||
switched the device away from the channel, so it wouldn't see the change of
|
||
the running status).
|
||
- Fixed handling "itemized" texts in EPG data (thanks to St<53>phane Est<73>-Gracias
|
||
for pointing out this problem, and Marcel Wiesweg for improving 'libsi').
|
||
- Fixed handling VPS times at year boundaries.
|
||
- Avoiding too many consecutive "ring buffer overflow" messages (which only
|
||
slowed down performance even more).
|
||
- Taking the Sid into account when detecting version changes in processing the
|
||
PMT (thanks to St<53>phane Est<73>-Gracias for pointing out this problem).
|
||
- Completed the Russian OSD texts (thanks to Vyacheslav Dikonov).
|
||
- Any newline characters in the 'description' of EPG events are now preserved
|
||
to allow texts to be displayed the way the tv stations have formatted them.
|
||
This was also necessary to better display itemized texts.
|
||
- Fixed detecting the running status in case an empty EPG event is broadcast (thanks
|
||
to Michael Pennewi<77> for pointing this out).
|
||
- Improved performance when paging through very long menu lists.
|
||
- Removed cSchedule::GetEventNumber() and cSchedule::NumEvents(). There is now
|
||
cSchedule::Events() that returns the list of events directly.
|
||
- Avoiding occasional bad responsiveness to user interaction caused by assigning
|
||
events to timers.
|
||
- Now explicitly turning on the LNB power at startup, because newer drivers don't
|
||
do this any more (thanks to Oliver Endriss for pointing this out).
|
||
|
||
2004-05-16: Version 1.3.7
|
||
|
||
- Fixed a memory leak in thread handling when using NPTL (thanks to Jon Burgess).
|
||
- Fixed handling Setup.RecordDolbyDigital, which was broken since version 1.1.6.
|
||
- Fixed handling text lengths for itemized EPG texts (thanks to Marcel Wiesweg).
|
||
- Fixed the help for LSTE and LSTR (was broken in 1.3.6).
|
||
- Improved iso8859-7 fonts (thanks to Dimitrios Dimitrakos).
|
||
- Added some 3-letter language codes (thanks to Marcus M<>nnig).
|
||
- Added language code handling to the subtitling descriptor in 'libsi' (thanks to
|
||
Pekka Virtanen).
|
||
- Moved several menu item classes from menu.c to menuitems.[hc] to make them
|
||
available for plugins.
|
||
- The epg2html.pl script now handles '|' in description texts.
|
||
- The new setup option "OSD/Use small font" can be used to control the use of
|
||
the small font (see MANUAL for details).
|
||
- Swapped osd.[hc] and osdbase.[hc] to have the virtual OSD base class named cOsd.
|
||
Plugins may need to adjust their #include statements.
|
||
- Colors are now given as AARRGGBB instead of AABBGGRR. The values are mapped to
|
||
the driver's (wrong) sequence in dvbosd.c (this should really be fixed in the
|
||
driver, together with the endian problem).
|
||
- The new OSD setup parameters "Left" and "Top" can be used to define the top left
|
||
corner of the OSD.
|
||
- The OSD size prameters are now in pixel (as opposed to formerly characters).
|
||
When reading a 'setup.conf' file from an older version of VDR, the OSDwidth
|
||
and OSDheight values will be converted to pixel automatically.
|
||
- The OSD is now fully device independent. See the comments in VDR/osd.h and the
|
||
description in PLUGINS.html for information on how a plugin can implement an OSD
|
||
display on arbitrary hardware.
|
||
- The OSD (actually its cBitmap class) can now handle XPM files. There are several
|
||
XPM files in the VDR/symbols directory which can be used by skins (some of these
|
||
have been taken from the "elchi" patch). See VDR/skinsttng.c for examples on how
|
||
to use these.
|
||
- Due to the changes in the OSD handling the DEBUG_OSD option for a textual OSD
|
||
has been dropped. There will be a plugin that implements a skin with this
|
||
functionality later.
|
||
- The entire OSD display can now be implemented via "skins". See VDR/skins.[hc],
|
||
VDR/skinclassic.[hc], VDR/skinsttng.[hc] and PLUGINS.html for information on how
|
||
a plugin can implement its own skin. By default VDR comes with a "Classic" skin
|
||
that implements the OSD display known from previous versions, and the new skin
|
||
named "ST:TNG Panels", which is also the default skin now. The actual skin can
|
||
be selected through "Setup/OSD/Skin".
|
||
- The colors used in a skin can now be configured using "themes". See PLUGINS.html
|
||
for information on how a skin can make use of themes, and man vdr(5) for the
|
||
structure of a theme file. The actual theme to use can be selected through
|
||
"Setup/OSD/Theme".
|
||
- Added Croatian language texts (thanks to Drazen Dupor).
|
||
NOTE: there is apparently a problem with the newly introduced iso8859-2 font,
|
||
because as soon as Setup/OSD/Language is set to Croatian (currently the last one
|
||
in the list) everything freezes and the vdr processes have to be killed with -9
|
||
and the driver needs to be reloaded. Maybe somebody else can find out what's
|
||
going wrong here...
|
||
- Added missing NULL checks when accessing sectionHandler in device.c (thanks to
|
||
Pekka Virtanen).
|
||
- Fixed setting the time from the DVB data stream (thanks to Helmut Auer for
|
||
pointing out a frequency/transponder handling mixup). This now also takes the
|
||
actual source (sat, cable etc.) into account. Please go into "Setup/EPG" and
|
||
set the "Set system time" and "Use time from transponder" parameters accordingly
|
||
(this is necessary even if you have already set them before!).
|
||
|
||
2004-05-23: Version 1.3.8
|
||
|
||
- Fixed a crash when switching the skin and having selected a non-default theme
|
||
that is not available for the newly selected skin (thanks to Sascha Volkenandt
|
||
for reporting this one).
|
||
- Fixed some issues with gcc 3.4 (thanks to Prakash K. Cheemplavam and Marcel
|
||
Wiesweg).
|
||
- Added a hint to PLUGINS.html about how to name a plugin that implements a skin.
|
||
- Completed the Finnish OSD texts (thanks to Rolf Ahrenberg).
|
||
- Single shot timers and events now show the day of week (adopted with some changes
|
||
from the "elchi" patch, orginally introduced by Oskar Signell). Plugins that use
|
||
cEvent::GetDateString() should note that this function now returns a longer
|
||
string, including the day of week. The new function const char *WeekDayName(time_t t)
|
||
can be called with a time_t value to get the day of week for that time.
|
||
- When processing XPM data, the color name "None" is now mapped to #00000000, which
|
||
is "fully transparent" (suggested by Sascha Volkenandt).
|
||
- Fixed the OSD alignment in the SPU decoder (thanks to Miko Wohlgemuth for reporting
|
||
this one and helping to test the fix).
|
||
- Fixed freezing picture when a recording starts on a system that always uses
|
||
'Transfer Mode' (thanks to Michal Dobrzynski for reporting this one).
|
||
- Fixed a memory leak in NIT processing (thanks to Marcel Wiesweg).
|
||
- Added a few missing initializations (thanks to Marcel Wiesweg).
|
||
- Moved the declaration of cMenuText to VDR/menu.h to make it available to plugins.
|
||
It now also has a SetText() function that can be used to dynamically set the text
|
||
in an already existing cMenuText (both suggested by Stefan Huelswitt).
|
||
- Added play mode pmVideoOnly (thanks to Marcel Wiesweg).
|
||
- Added a missing cStatus::MsgOsdClear() to cDisplayChannel::~cDisplayChannel()
|
||
(thanks to Oliver Endriss).
|
||
- No longer displaying unused color buttons in the "Classic VDR" skin (thanks to
|
||
Oliver Endriss for reporting this one).
|
||
- Added some missing cStatus::MsgOsdTextItem() calls (thanks to Oliver Endriss for
|
||
reporting this one).
|
||
|
||
2004-05-31: Version 1.3.9
|
||
|
||
- Completed Croatian language texts (thanks to Drazen Dupor).
|
||
- New iso8859-2 font to fix the problem with program freezes (thanks to Drazen Dupor).
|
||
- Implemented a default cRemote::Initialize() that waits 10 seconds for a keypress
|
||
in order to prevent a "hangup" in case, e.g., the LIRC driver is not loaded (thanks
|
||
to Helmut Auer).
|
||
- Updated 'channels.conf.terr' for Hannover (thanks to Peter Waechtler).
|
||
- cBitmap::DrawBitmap() now also resets the palette if the entire bitmap area is
|
||
covered (suggested by Sascha Volkenandt).
|
||
- Fixed setting the title in the replay display of the "Classic VDR" skin in case
|
||
a shorter title is set after a longer one (thanks to Stefan Huelswitt for
|
||
reporting this one).
|
||
- Now using more separate areas in the "ST:TNG Panels" skin to allow a theme to
|
||
use more independent clrMenu* colors.
|
||
- Fixed removing the "scanning recordings..." message in case the video directory
|
||
is empty (thanks to Andreas Regel for reporting this one).
|
||
- Added SetMessage() functions to the Replay and Channel skin functions. Plugins
|
||
that implement skins will need to implement these functions. This fixes a missing
|
||
"Editing process finished" message (thanks to Oliver Endriss for reporting this
|
||
one).
|
||
- Fixed the height of the channel display in the "Classic VDR" skin.
|
||
- Fixed handling descriptor loops in 'libsi', which had sometimes caused invalid
|
||
CA ids to be added to the channel definitions (thanks to Wayne Keer for reporting
|
||
this one, and Marcel Wiesweg for fixing it).
|
||
- Fixed handling colors in cDvbSpuPalette::yuv2rgb() (thanks to Marco Schl<68><6C>ler).
|
||
- Made some functions of cFont virtual to allow implementing dummy fonts for the
|
||
'curses' skin.
|
||
- The new plugin 'skincurses' re-implements the functionality that was previously
|
||
available by compiling VDR with DEBUG_OSD. Some things may not yet work as they
|
||
should, but it's a starting point.
|
||
|
||
2004-06-06: Version 1.3.10
|
||
|
||
- Fixed some default parameters in 'skincurses'.
|
||
- Fixed cBitmap::DrawPixel(), which messed with other bitmaps' palettes in case
|
||
the pixel coordinates were outside this bitmap (thanks to Sascha Volkenandt for
|
||
reporting this one).
|
||
- The cBitmap::DrawText() function now doesn't set any background pixels if the
|
||
given background color is clrTransparent. This allows drawing "transparent"
|
||
texts (suggested by Sascha Volkenandt).
|
||
- The cBitmap::SetXpm() function now ignores unused "none" color entries, which
|
||
some broken graphics tools write into XPM files (suggested by Sascha Volkenandt).
|
||
- No longer setting lnb voltage if the frontend is not DVB-S (thanks to Marco
|
||
Schl<68><6C>ler).
|
||
- Fixed displaying the current channel when switching via the SVDRP command CHAN
|
||
(thanks to J<>rgen Schmitz for reporting this one).
|
||
- Fixed missing audio after replaying a DVD (thanks to Marco Schl<68><6C>ler).
|
||
- Added a note about the default assignment of the color keys to MANUAL.
|
||
- Added a note about NPTL ("Native Posix Thread Library") to the INSTALL file
|
||
(apparently the "fix" in version 1.3.0 didn't really fix this).
|
||
- Modified 'libsi' to require callers to state the buffer sizes when getting
|
||
strings in order to avoid buffer overflows (thanks to Philip Lawatsch for
|
||
debugging a buffer overflow in eit.c).
|
||
|
||
2004-06-19: Version 1.3.11
|
||
|
||
- In order to avoid problems on NPTL systems, VDR now checks for the presence
|
||
of NPTL at program start, and if it is, exits and tells the user to do
|
||
'export LD_ASSUME_KERNEL=2.4.1' before starting VDR.
|
||
- Revisited the "Fixed missing audio after replaying a DVD" change because it
|
||
introduced a sound disturbance when switching between channels on the same
|
||
transponder (thanks to Marco Schl<68><6C>ler).
|
||
- In order to avoid problems on UTF-8 systems, VDR now checks for the presence
|
||
of UTF-8 at program start, and if it is, exits and tells the user to turn off
|
||
UTF-8 before starting VDR (thanks to Ludwig Nussel for pointing out a problem
|
||
with systems that are set to use UTF-8). There are also problems in case the
|
||
video partition is mounted with "iocharset=utf8" (thanks to J<>rg Knitter for
|
||
reporting this one).
|
||
Please also read the "IMPORTANT NOTES" section in the INSTALL file!
|
||
- Some changes to the SPU decoder interface (thanks to Sven Goethel).
|
||
- Some improvements in cOsd creation (thanks to some suggestions by Jouni Karvo).
|
||
- Fixed calculating the OSD width and height (thanks to Olaf Henkel for reporting
|
||
a problem with long event texts in the "Classic VDR" skin).
|
||
- Fixed switching channels while an encrypted channel is being recorded, because the
|
||
channel was switched if the new channel was on the same transponder and was
|
||
a radio channel or an unencrypted channel (thanks to Martin Dauskardt for reporting
|
||
this one).
|
||
- No longer using the external 'find' command to scan the video directory for
|
||
recordings (based on a suggestion by Mirko D<>lle).
|
||
- The list of recordings is now kept statically in memory to avoid long delays
|
||
when opening the "Recordings" menu. As a side effect, external modifications to
|
||
the video directory are no longer immediately reflected in the "Recordings" menu.
|
||
If a plugin manipulates the video directory in any way, it can call the function
|
||
Recordings.TriggerUpdate() to trigger an update of the list of recordings.
|
||
If some external tool manipulates the video directory, it can touch the file
|
||
'.update' in the video directory to trigger an update of the list of recordings.
|
||
- Fixed a memory leak in theme description handling (thanks to Sascha Volkenandt).
|
||
- Added cDevice::Flush() to make sure that all data in the video card's buffers
|
||
has been processed (thanks to Reinhard Nissl). Currently this is not yet actually
|
||
implemented for FF DVB cards.
|
||
- Fixed handling the color button texts in cMenuEditStrItem (thanks to Maynard
|
||
Cedric for reporting this one).
|
||
- Fixed the description of cRingBufferLinear (thanks to Ludwig Nussel for pointing
|
||
out this one).
|
||
- Fixed cRingBufferLinear::Get() in case the buffer wraps around (thanks to Ludwig
|
||
Nussel for reporting this one).
|
||
|
||
2004-07-18: Version 1.3.12
|
||
|
||
- Removed all error messages from cRecordings::ScanVideoDir() and just skipping
|
||
entries that cause errors in order to avoid failure in case of things like
|
||
broken links etc.
|
||
- The function cTimers::SetEvents() now immediately returns if there is some user
|
||
input.
|
||
- Fixed handling menu status messages when the list contents is scrolled (thanks to
|
||
Alfred Zastrow for reporting this one).
|
||
- Fixed checking the last area for misalignment in cOsd::CanHandleAreas() (thanks
|
||
to Reinhard Nissl for reporting this one).
|
||
- No longer adding section filters to the list of filters if they can't be opened
|
||
(thanks to Marco Schl<68><6C>ler for pointing this out).
|
||
- Fixed handling error case '-1' when polling section filters (thanks to Marco
|
||
Schl<68><6C>ler).
|
||
- Fixed handling error case '-1' when polling CAM connections.
|
||
- Making sure the OSD reports oeWrongAlignment errors before any oeAreasOverlap
|
||
error (suggested by Reinhard Nissl).
|
||
- Avoiding flashing effects in the OSD of full featured DVB cards by explicitly
|
||
clearing the OSD windows before opening them (suggested by Marco Schl<68><6C>ler).
|
||
- Experimental support for NVOD channels. Currently these channels are detected
|
||
and linked to their "base" channels using the same mechanisms as for the
|
||
"linked services" (let's see if this is useful). Thanks to Mike parker for
|
||
helping to test this. Also used some input from the 'autopid' patch by Andreas
|
||
Schultz).
|
||
- Now storing the name of the service provider (aka "bouquet") in the channel
|
||
name, separated by a semicolon (see man vdr(5) for details). Explicit usage
|
||
of the various parts of the channel name is yet to come.
|
||
- The 'radio' channel icon is now only displayed in the ST:TNG skin if the channel
|
||
actually has an APID.
|
||
|
||
2004-10-17: Version 1.3.13
|
||
|
||
- Fixed checking for the presence of NPTL (thanks to Jouni Karvo).
|
||
- Making sure section filters are only set if the device actually has a lock
|
||
(thanks to Andreas Share for pointing this out).
|
||
- Fixed a possible NULL pointer assignment in cMenuText::SetText() (thanks to
|
||
Marco Schl<68>ssler).
|
||
- Fixed a crash in case the last line in channels.conf is a group separator and
|
||
that group is selected in the channel display (thanks to Dick Streefland).
|
||
- Added cRingBufferLinear::Read() to read directly from a file handle into the
|
||
ring buffer.
|
||
- Using timeouts in ring buffers to avoid 'usleep()'.
|
||
- Clearing the 'Transfer Mode' ring buffer after clearing the device to avoid
|
||
an "almost full" ring buffer.
|
||
- Removed locking from cRingBufferLinear for better performance under high load.
|
||
- Using a cRingBufferLinear in cRemux to avoid unnecessary copying of data.
|
||
- Using a cRingBufferLinear in cTSBuffer and filling it in a separate thread
|
||
to avoid buffer overflows. Plugins using cTSBuffer will need to remove the
|
||
call to the now obsolete Read() function (see cDvbDevice::GetTSPacket() for
|
||
the new usage of cTSBuffer).
|
||
- cRemux::Process() has been split into Put(), Get() and Del() to allow for a
|
||
better decoupling of the remuxing and disk writing process. Plugins using
|
||
cRemux will need to be modified accordingly.
|
||
- The actual disk writing in recordings is now done in a separate thread to
|
||
improve the overall throughput.
|
||
- Changed cRemux so that it returns the maximum available amount of data with
|
||
each call, not just 2048 byte.
|
||
- Added a visual display of all cRingBufferLinear buffers for debugging. To
|
||
activate it, define DEBUGRINGBUFFERS in ringbuffer.h.
|
||
- Instead of cCondVar now using the new cCondWait (which also avoids a possible
|
||
"near miss" condition; thanks to Sascha Volkenandt for pointing out this one).
|
||
cCondVar is still present for plugins that use it (and VDR itself also still
|
||
uses it in cRemote).
|
||
- The cRingBuffer now does EnableGet()/EnablePut() only if the buffer is more than
|
||
one third full or empty, respectively. This dramatically improves recording
|
||
performance and reduces system load (thanks to Marco Schl<68><6C>ler for doing some
|
||
testing regarding buffer performance and giving me some hints that finally led
|
||
to finding out that this was the basic problem causing buffer overflows).
|
||
- Improved Transfer Mode (thanks to Marco Schl<68><6C>ler for suggestions and testing).
|
||
- Fixed a possible crash with inconsistent SI data (thanks to Marcel Wiesweg).
|
||
- Fixed showing the replay mode if the OSD is currently in use (thanks to Kimmo
|
||
Tykkala for pointing out this problem).
|
||
- cOsdProvider::NewOsd() now always returns a valid pointer, even if the OSD is
|
||
currently in use (it will then return a dummy cOsd object and write a message to
|
||
the log file).
|
||
- Added Estonian language texts (thanks to Arthur Konovalov).
|
||
- Fixed 'newplugin' and libsi/Makefile to use the compiler defined in $(CXX) for
|
||
generating file dependencies (thanks to Andreas Brachold).
|
||
- Moved the initialization of aPid1 and aPid2 to the beginning of cDvbDevice::cDvbDevice()
|
||
to have them set in case a patch references them (thanks to Wayne Keer for pointing
|
||
this out).
|
||
- Completed the Russian OSD texts (thanks to Vyacheslav Dikonov).
|
||
- Avoiding unnecessary section filter start/stops (thanks to Marco Schl<68><6C>ler).
|
||
- Made the "Channel not available!" message and mtInfo instead of mtError (suggested
|
||
by Wayne Keer).
|
||
- Made volume control more linear (thanks to Emil Naepflein and Udo Richter).
|
||
- Now skipping code table info in SI data (suggested by Milos Kapoun).
|
||
- Added missing Czech characters to fontosd-iso8859-2.c (thanks to Milos Kapoun).
|
||
- Fixed a crash in the time search mechanism (reported by Reinhard Nissl).
|
||
- If one PID can't be added, the whole cDevice::AttachReceiver() will now fail
|
||
and all PIDs added so far will be deleted (thanks to Marco Schl<68><6C>ler for
|
||
pointing out this one).
|
||
- Now only saving channels.conf after a modification made by the user (avoids
|
||
lots of disk access due to automatic channel updates). Automatic channel
|
||
modifications will be saved every 10 minutes if no recording is currently
|
||
active.
|
||
- Removed the 'Log' parameter from the cChannel::Set... functions. Instead
|
||
checking if the channel has a non-zero number.
|
||
- Updated 'channels.conf.terr' for Hannover (thanks to Sven Kreiensen).
|
||
|
||
2004-10-24: Version 1.3.14
|
||
|
||
- Fixed detecting transponder lock in cDvbTuner (based on a patch from Stefan
|
||
Meyknecht).
|
||
- What was previously marked with WAIT_FOR_LOCK_AFTER_TUNING is now permanently
|
||
active and uses a cCondVar to signal when a transponder is locked.
|
||
- Added some missing 'const' to cChannel.
|
||
- Added a sample setup for 'DisiCon-4 Single Cable Network' to 'diseqc.conf'
|
||
(thanks to Oliver Endriss).
|
||
- Fixed attaching a cPlayer to a cDevice, so that 'Operation not permited'
|
||
errors don't occur any more (thanks to Marco Schl<68><6C>ler).
|
||
- Fixed a case where the resultBuffer in cRemux ran full before getting a sync.
|
||
- Removed the usleep() call from cDvbPlayer::Action() to make VDR run on NPTL
|
||
systems (thanks to Alfred Zastrow). The NPTL check at startup has also been
|
||
removed.
|
||
- Taking the complete size of available data into account when deciding whether
|
||
to clear the transfer buffer to avoid overflows (thanks to Reinhard Nissl).
|
||
- Updated Romanian language texts and the iso8859-2 fonts (thanks to Lucian Muresan).
|
||
- Now actually using the iso8859-15 fonts (thanks to Lucian Muresan).
|
||
- Some minor code cleanups (thanks to Prakash K. Cheemplavam).
|
||
- Fixed missing cleanup at program exit in case there is a problem with a plugin
|
||
(thanks to Mattias Gr<47>nlund for pointing this out).
|
||
- Increased the required free buffer space in the resultBuffer of cRemux to
|
||
2 * IPACKS to avoid a buffer overflow in case a cTS2PES writes one complete
|
||
packet and then (within processing the same TS packet) wants to write another
|
||
small packet.
|
||
- Removed the signal handler and WakeUp() call from cThread (it is no longer
|
||
needed).
|
||
- Added some checks when cancelling a thread and removed the usleep() in
|
||
cThread::Start() (suggested by Ludwig Nussel). Also removed 'running' from
|
||
cThread and using only childTid to indicate whether a thread is actually
|
||
running.
|
||
- Added cCondWait::Sleep() and using it to replace all usleep() calls (based
|
||
on a suggestion by Werner Fink).
|
||
- Only assigning events to timers if the related schedule has actually been
|
||
modified.
|
||
- When searching for the present event, the running status is now only taken
|
||
into account if the event has been "seen" within the past 30 seconds.
|
||
This avoids shortly seeing the wrong events in the channel display when
|
||
switching to a channel that hasn't been tuned to in a while.
|
||
|
||
2004-11-01: Version 1.3.15
|
||
|
||
- Fixed some typos in the Makefile's 'font' target (thanks to Uwe Hanke).
|
||
- Added more checks and polling when getting frontend events (based on a patch
|
||
from Werner Fink).
|
||
- No longer explicitly waiting for a tuner lock when switching channels
|
||
(apparently setting "live" PIDs before the tuner is locked doesn't hurt).
|
||
Moved the wait into cDevice::AttachReceiver() instead.
|
||
- Immediately displaying the new channel info when switching channel groups.
|
||
- Moved the main program loop variables further up to allow compilation with
|
||
older compiler versions (thanks to Marco Schl<68><6C>ler for reporting this one).
|
||
- Now calling pthread_cond_broadcast() in the desctructor of cCondWait and
|
||
cCondVar to make sure any sleepers will wake up (suggested by Werner Fink).
|
||
Also using pthread_cond_broadcast() instead of pthread_cond_signal() in
|
||
cCondWait, in case there is more than one sleeper.
|
||
- Making sure that timers and channels are only saved together, in a consistent
|
||
manner (thanks to Mirko D<>lle for reporting a problem with inconsistent
|
||
channel and timer lists).
|
||
- Now handling the channel name, short name and provider separately. cChannel
|
||
therefore has two new functions, ShortName() and Provider(). ShortName()
|
||
can be used to display a short version of the name (in case such a version
|
||
is available). The optional boolean parameter of ShortName() can be set to
|
||
true to make it return the name, if no short name is available.
|
||
The sequence of 'name' and 'short name' in the channels.conf file has been
|
||
swapped (see man vdr(5)).
|
||
- Added the 'portal name' to cChannels (thanks to Marco Schl<68><6C>ler).
|
||
- Fixed handling key codes that start with 0x1B in the KBD remote control code.
|
||
- Now using qsort() to sort cListBase lists. For this, the virtual function
|
||
cListObject::operator<() has been replaced with cListObject::Compare().
|
||
Plugins that implement derived cListObject classes may need to adjust their
|
||
code.
|
||
- The "Channels" menu can now be sorted "by number" (default), "by name" and
|
||
"by provider". While in the "Channels" menu, pressing the '0' key switches
|
||
through these modes.
|
||
- Fixed the buffer size in cRecording::SortName().
|
||
- Now displaying the name of the remote control for which the keys are being
|
||
learned inside the menu to avoid overwriting the date/time in the 'classic'
|
||
skin (thanks to Oliver Endriss for reporting this one).
|
||
|
||
2004-11-14: Version 1.3.16
|
||
|
||
- Fixed cChannel::SetName() in case only the ShortName or Provider has changed
|
||
(thanks to Sascha Volkenandt for reporting this one).
|
||
- Added Danish language texts (thanks to Mogens Elneff).
|
||
- Reactivated the NPTL check at startup because there appear to be still
|
||
unsolved problems when running on NPTL systems.
|
||
- Added missing calls to cStatus::MsgOsdClear() in cSkins::Message() (thanks
|
||
to Joachim Wilke for reporting this one, and Andreas Regel for additional
|
||
input).
|
||
- Fixed the cDvbSpuDecoder (thanks to Marco Schl<68><6C>ler).
|
||
- Fixed handling of pmAudioOnlyBlack (thanks to Stefan Huelswitt).
|
||
- Fixed a short glitch when starting a recording on the primary device while
|
||
in replay or transfer mode (thanks to Marco Schl<68><6C>ler).
|
||
- Added missing initialization of cEvent::seen.
|
||
- Checking PID language codes for ISO 639 compliance to avoid problems with
|
||
funny characters. Invalid language codes will be stored as "???".
|
||
- The '0' key now toggles the "Day" item in the "Timers" menu between "single
|
||
shot" and "repeating". The keys '1'...'7' can be used to toggle the individual
|
||
days ('1' is monday). Thanks to Sascha Klek for reporting a problem with the
|
||
'0' key in the "Day" item of the "Timers" menu.
|
||
|
||
2004-11-20: Version 1.3.17
|
||
|
||
- Fixed cRemux::ScanVideoPacket() to make sure it doesn't access memory beyond
|
||
the end of the given buffer, which has caused some unjustified "unknown
|
||
picture type errors" (thanks to Marco Schl<68><6C>ler).
|
||
- The driver is now assumed to be the 'dvb-kernel' version. The only change
|
||
for this was the additional 'linux' in the INCLUDES definition of the Makefile.
|
||
If you want to use the old DVB driver just revert this line to what it was in
|
||
VDR version 1.3.16. The 'runvdr' script by default uses the "build-2.4"
|
||
driver. If you want to use "build-2.6" just edit that file as necessary.
|
||
- Fixed a possible crash when pausing live video and the recording was unable
|
||
to start, maybe because there was no lock on the device (thanks to Andreas
|
||
Brugger for reporting this one).
|
||
- Fixed some characters in the iso8859-2 font file (thanks to Dino Ravnic).
|
||
- Fixed some errors in the Croatian language texts (thanks to Dino Ravnic).
|
||
- Fixed a possible recursion in cControl::Shutdown() (thanks to Sascha Volkenandt).
|
||
- Now setting the VPID before the APID in live mode to avoid unnecessary
|
||
overhead in the firmware (thanks to Werner Fink).
|