20 Commits

Author SHA1 Message Date
Klaus Schmidinger
0686038af3 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-04-27 18:00:00 +02:00
Klaus Schmidinger
9f91980146 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ß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-13 18:00:00 +02:00
Klaus Schmidinger
48fd2b04e9 Version 1.1.20
- Now checking if there is a connection to the keyboard (thanks to Jaakko Hyvä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ä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.
2002-12-15 18:00:00 +01:00
Klaus Schmidinger
2b15337b71 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-08 18:00:00 +01:00
Klaus Schmidinger
96ebdbf4b1 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-01 18:00:00 +01:00
Klaus Schmidinger
8b5d404083 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-10 18:00:00 +01:00
Klaus Schmidinger
1a8a081629 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-03 18:00:00 +01:00
Klaus Schmidinger
57bd7eeed1 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ä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-10-27 17:00:00 +01:00
Klaus Schmidinger
d08073815d 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-09-29 18:00:00 +02:00
Klaus Schmidinger
ae8a947367 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-09 18:00:00 +02:00
Klaus Schmidinger
8f9cc68f76 Version 0.85
- Added Norwegian language texts (thanks to Jrgen 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
  Rder).
- 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 Helmut Schchner).
  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-07-29 18:00:00 +02:00
Klaus Schmidinger
f2937af95c 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).
- Reacitvated 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-02-24 18:00:00 +01:00
Klaus Schmidinger
a379eb714f 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-10-08 18:00:00 +02:00
Klaus Schmidinger
ef8fe3f04c 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 saves 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-03 18:00:00 +02:00
Klaus Schmidinger
7e4b4d2905 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-09-20 18:00:00 +02:00
Klaus Schmidinger
1d22145c42 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" key 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-07-25 18:00:00 +02:00
Klaus Schmidinger
3b78ec8374 Version 0.06
- 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).
2000-07-15 18:00:00 +02:00
Klaus Schmidinger
9599a8fd8a 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-05-27 18:00:00 +02:00
Klaus Schmidinger
85b8e41e8b 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-04-24 18:00:00 +02:00
Klaus Schmidinger
c475c637ab Version 0.01 (Initial revision). 2000-02-19 18:00:00 +01:00