[ANNOUNCE] VDR developer version 2.3.9

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



VDR developer version 2.3.9 is now available at

      ftp://ftp.tvdr.de/vdr/Developer/vdr-2.3.9.tar.bz2

A 'diff' against the previous version is available at

      ftp://ftp.tvdr.de/vdr/Developer/vdr-2.3.8-2.3.9.diff

MD5 checksums:

9e4202b046df9ea960d930ce99e967ab  vdr-2.3.9.tar.bz2
38a0f436fbed219665725aa2e54a9ca0  vdr-2.3.8-2.3.9.diff

Approaching version 2.4.0:
==========================

If there are no more serious bug reports, the final version 2.4.0 of VDR
shall be released on April 15.
So please test this developer version intensely and report any problems
you might encounter as soon as possible.

The following language files still have the given number of untranslated texts:

PLUGINS/src/hello/po/ca_ES.po: 6
PLUGINS/src/hello/po/da_DK.po: 6
PLUGINS/src/hello/po/el_GR.po: 6
PLUGINS/src/hello/po/es_ES.po: 6
PLUGINS/src/hello/po/fr_FR.po: 6
PLUGINS/src/hello/po/hu_HU.po: 6
PLUGINS/src/hello/po/nl_NL.po: 6
PLUGINS/src/hello/po/nn_NO.po: 6
PLUGINS/src/hello/po/pt_PT.po: 6
PLUGINS/src/hello/po/ro_RO.po: 6
PLUGINS/src/hello/po/sl_SI.po: 6
PLUGINS/src/hello/po/sv_SE.po: 6
po/ar.po: 76
po/ca_ES.po: 76
po/cs_CZ.po: 22
po/da_DK.po: 208
po/el_GR.po: 271
po/es_ES.po: 22
po/et_EE.po: 7
po/fi_FI.po: 3
po/fr_FR.po: 22
po/hr_HR.po: 208
po/hu_HU.po: 22
po/it_IT.po: 3
po/lt_LT.po: 22
po/mk_MK.po: 22
po/nl_NL.po: 22
po/nn_NO.po: 336
po/pt_PT.po: 104
po/ro_RO.po: 22
po/ru_RU.po: 10
po/sk_SK.po: 22
po/sl_SI.po: 77
po/sr_RS.po: 76
po/sv_SE.po: 22
po/tr_TR.po: 208
po/uk_UA.po: 22
po/zh_CN.po: 76

If nobody takes care of these, they will remain untranslated in version 2.4.0.



The changes since version 2.3.8:

- Updated the Italian OSD texts (thanks to Diego Pierotto).
- Updated the Finnish OSD texts (thanks to Rolf Ahrenberg).
- Fixed a possible crash when stopping VDR (thanks to Matthias Senzel for reporting and
  helping to debug this one).
- Fixed handling VPS events outside the LingerLimit, which could cause recordings to
  stop prematurely (thanks to Johann Friedrichs).
- Fixed an invalid lock sequence when trying to remove a deleted recording in case
  of low disk space.
- Now making sure that AssertFreeDiskSpace() is called with the maximum timer
  priority in case there are several timers recording with different priorities.
- The MTD mapper now avoids immediately reusing unique PIDs when switching channels,
  to prevent possible problems with old data in buffers (thanks to Onur Sentürk).
- The function cDevice::GetVideoSystem() (which has been deprecated since version 2.1.6)
  has been finally removed.
- The macros used to control deprecated code or functions have been changed to hold
  numeric values (0 and 1), so that they can be controlled at compile time, without
  having to edit the actual source code (suggested by Jasmin Jessich).
- The default for DEPRECATED_VDR_CHARSET_OVERRIDE has been set to 0, which means VDR
  no longer reacts on the environment variable VDR_CHARSET_OVERRIDE. You can add
  'DEPRECATED_VDR_CHARSET_OVERRIDE=1' when compiling in order to restore this
  functionality. However, it is recommended to use the command line option --chartab
  instead.
- The timeout for the channel display is now reset whenever the channel or EPG data
  changes.
- OSD menus now try to keep the offset of the list cursor at a constant position on
  the screen, even if the list is modified while being displayed.
- The LCARS skin's main menu now reacts to changes of the current channel's name.
- If an event in the Schedules menu is marked with a 'T' or 'I' and the user presses the
  Red button to edit the timer, local timers are now preferred over remote timers
  in case there is more than one timer that will record that event.
- Switching the primary device is no longer done via osSwitchDvb (which has been
  removed), but rather by the main program loop reacting to changes in Setup.PrimaryDVB.
- The new SVDRP commands 'LSTD' and 'PRIM' can be used to list all available devices
  and to switch the primary device (thanks to Thomas Reufer).
- Added some comments regarding font height (thanks to Thomas Reufer).
- Fixed handling timers during the change from DST to winter time (thanks to Johann
  Friedrichs).
- Added missing checks of 'player' in member functions of cControl, and setting
  cControl::player to NULL in cDvbPlayerControl::Stop() to avoid a possible crash
  with plugins that retrieve player information after a replay has been stopped, but
  before the replay control has been destroyed (thanks to Johann Friedrich).
- Now calling Hide() and cStatus::MsgReplaying(..., false) from cReplayControl::Stop(),
  to inform plugins about an ending replay session before the replay control gets
  destroyed.
- Fixed a possible crash when moving a recording between different volumes (reported by
  Matthias Senzel).
- Fixed positioning the cursor in the Recordings menu when moving a recording between
  different volumes.
- Added a note to PLUGINS.html about writing log messages in English.
- Fixed a deadlock when moving a folder containing several recordings between
  different volumes (reported by Matthias Senzel).
- Fixed positioning to the current item when changing the sort mode in the Recordings
  menu, in case there is a LastReplayed recording.
- The CAM menu is now automatically closed when the current channel is switched
  (suggested by Dietmar Spingler).
- Fixed a lengthy write lock on the Recordings list in case of moving a folder with
  more than one recording (thanks to Matthias Senzel).
- If TS packets are not accepted by the output device in Transfer Mode, this is now
  reported only once per minute in the log file.
- The new setup option "OSD/Sorting direction for recordings" can be used to switch
  the sequence in which recordings are presented in the "Recordings" menu between
  ascending (oldest first) and descendeng (newest first) (thanks to Matthias Senzel).
- When moving recordings between volumes, the "Recordings" menu now displays those items
  that have not yet been moved completely as non-selectable. This avoids situations
  where trying to play such a recording might fail.
- Fixed canceling moving a folder with several recordings between volumes.
- When moving a recording to a different folder, the cursor is no longer placed on the
  new location of the recording, but rather stays in the original folder (suggested by
  Matthias Senzel). If the original folder got empty by moving away the last recording
  it contained, the cursor is moved up until a non empty folder is found.
- Changed the log message ""ERROR: copying directory '%s' to '%s' ended prematurely" from
  "error" to "info", because any actual error would have already been reported before this
  (suggested by Matthias Senzel).
- When selecting a folder for a recording or timer, it is now possible to open a folder
  even if it doesn't contain any subfolders (suggested by Matthias Senzel).
- Fixed a possible deadlock when detaching a receiver from a device.
- Moved any locking from cutter.c into recording.c, to avoid a problem with locking
  the Recordings list (reported by Matthias Senzel).
- Now using the 'example' macro in vdr.5 (thanks to Chris Mayo).
- Now unlocking the Recordings list before displaying an error message in
  cMenuPathEdit::ApplyChanges() and cReplayControl::Stop() (reported by Matthias Senzel).
- Fixed a possible deadlock when quickly zapping through encrypted channels (reported
  by Jörg Wendel).
- The new function cStatus::MarksModified() can be implemented by plugins to get
  informed about any modifications to the editing marks of the currently played
  recording (based on a patch from Jörg Wendel).
- Fixed handling editing marks in the replay progress display, in case the marks are
  deleted via the Info/Edit menu of the currently played recording (the progress
  display still displayed them).
- Limited some CAM related log messages to the actual master CAM, if any.
- The Perl script 'peerdemo' shows how one can find all the VDRs in the local network
  using the peer connection mechanism.
- Added the UPDATE-2.4.0 file.
- Making sure cSVDRPClient::Process() reads the entire reply once it started reading,
  even if no Response parameter is given.
- Replaced the warning regarding the open SVDRP port in the INSTALL file with a remark
  about using svdrphosts.conf to completely disable SVDRP access.
- Added a note about the fixed UDP port for SVDRP discovery to vdr.1.
- Fixed updating the Timers menu after turning a local timer on/off with the Red
  button.
- Fixed keeping the cursor position in the Recordings menu in case a timer starts
  recording while the menu is open.
- When a timer is newly created in the Timers menu, it now immediately appears at the
  correct position in the list, rather than first being added at the end and then
  jumping to the proper offset.
- Fixed getting the info of a newly edited recording (reported by Matthias Senzel).
- Improved calculating signal strength and quality (thanks to Helmut Binder).
- While a timer is recording, the file '.timer' in the recording directory now contains
  the full id of the timer that is currently recording into this directory. This is used
  to determine whether a timer is still recording on a remote VDR when deleting a recording
  from the Recordings menu.
- Fixed handling SVDRP peering for more than one instance of VDR on the same machine, and
  improved logging and debug output.
- Fixed case inconsistency with SVDRPDefaultHost in config.c.
- Added a section about the '.sort' file to vdr.5.
- Initiating the client side of a peer-to-peer SVDRP connection is now done with the new
  SVDRP command CONN instead of using the UDP port with the server's address.
  This change requires that all VDRs that shall take part in a peer-to-peer network need
  to be updated to this version.
- Moved handling remote timers into cSVDRPClientHandler::ProcessConnections().
- Combined Start/StopSVDRPServer/ClientHandler() into Start/StopSVDRPHandler().
- Updated the Polish OSD texts (thanks to Tomasz Maciej Nowak).
- When remote timers are fetched from a peer VDR, we no longer blindly delete and re-add
  them, but rather compare them and make only the minimum necessary changes.
- Fixed the CompareInts() function.
- Disabled the use of posix_fadvise() when reading (i.e. replaying), since it caused
  stuttering replay in fast forward and fast rewind mode in case the video directory
  is mounted via NFS. You can re-enable it by setting the macro USE_FADVISE_READ to 1
  in tools.c.
- Modified cStateLock's SetExplicitModify() and IncState() (changed to SetModified()) to
  allow for the introduction of syncing a separate cStateKey to a cStateLock.
- Assigning events to timers no longer triggers sending a POLL to all peer VDRs.
- When making modifications to remote timers, the local VDR no longer sends a POLL to
  all remote VDRs.
- Fixed removing a cStateKey from a cStateLock (setting StateKey.stateLock = NULL was
  done too late, after the lock had already been released).
- Now writing the info file before attaching the recorder to the device, to make sure it
  is present when the recorder needs to update the fps value.
- Making sure the Schedules menu has a proper title, even if it is empty.
- Removed sending the SVDRP command UPDR to peer VDRs whenever a change is made to the
  recordings in the video directory (which was introduced in version 2.3.8), because it
  triggered re-reading the video directory too fast.
- Improved handling VPS timers to better react to EPG changes during an ongoing recording.
- Commented out the logging in cMarks::Align(), to avoid log entries in case of editing
  marks that are not generated by VDR itself, and thus may be a little off (suggested by
  Jörg Wendel). You can activate this line again for debugging if necessary.
- Made the input buffer in cSVDRPClient dynamic.
- Fixed handling parameters in the S2SatelliteDeliverySystemDescriptor and
  T2DeliverySystemDescriptor that were overwritten when parsing the
  SatelliteDeliverySystemDescriptor or TerrestrialDeliverySystemDescriptor, respectively.
- Modified cMenuTimers::Delete() to avoid a lengthy lock on the Timers list while prompting
  the user.

Have fun!

Klaus

_______________________________________________
vdr mailing list
vdr@xxxxxxxxxxx
https://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr




[Index of Archives]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Big List of Linux Books]     [Fedora Users]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux