Klaus Schmidinger 9279cb21cd Version 1.5.15
- Updated the Italian OSD texts (thanks to Diego Pierotto).
- Added option -i to the pictures plugin's pic2mpg to ignore unknown file types.
- Revoked the switch to the "multiproto" driver in order to make a new stable
  version before making this big switch and forcing all users to install a
  driver that is not yet in the kernel source. The removed code will reappear
  in version 1.7.0.
  Note that you may need to switch back to an older version of your channels.conf
  file if you have already used version 1.5.14, because it introduced new parameters.
- Added the new command line option --userdump to enable core dumps in case VDR
  is run as root with option -u (thanks to Hans-Werner Hilse).
- Speeded up anti-aliased font rendering by caching the blend indexes (based on
  a suggestion by Martin Wache).
- Fixed setting the OSD area in the pictures plugin.
- Ignoring "repeat" and "release" keys in the time search entry mode during replay,
  to avoid inadvertently leaving it in case a key is pressed too long (suggested
  by Andreas Brugger).
- Improved sending all frames to devices that can handle them in fast forward
  trick speeds, including subtitles (thanks to Timo Eskola).
- The section handler is now stopped before the device is destroyed, to avoid
  accessing file handles after they have become invalid (thanks to Reinhard
  Nissl for reporting an invalid access when ending VDR, and to Deti Fliegl for
  a patch that was used to implement StopSectionHandler()).
- Fixed setting the date in the channel display of the classic and sttng skins,
  to avoid unnecessary OSD access (thanks to Marco Schlüßler).
- The free disk space is now also displayed in the title of the "Recordings"
  menu (suggested by Walter Koch).
- Changed the message "Upcoming VPS recording!" to "Upcoming recording!" because
  it applies to non-VPS recordings as well.
- Fixed a loss of a timer's 'recording' flag after modifying it via MODT.
- Fixed detecting directories in cFileNameList::Load().
- Running the thread that removes deleted recordings at a low priority to (maybe)
  avoid stuttering replay in case the thread is run during replay.
- Limiting the length of the recording name in timers in case VDR is run with
  --vfat, in order to avoid names that are too long for Windows (suggested by Rolf
  Ahrenberg).
- Using cString::sprintf() instead of asprintf() (thanks to Wolfgang Rohdewald
  for pointing out a possible problem if the return value is not checked).
  Plugin authors may want to consider doing the same. For convenience there is now
  an additional version of cString::sprintf() that accepts a va_list parameter.
- When deleting the recording that is currently replayed, the replay is now
  stopped immediately (thanks to Mikko Matilainen for reporting a possible crash
  if the Info key is pressed after deleting the currently replayed recording).
- Updated the Russian OSD texts (thanks to Oleg Roitburd).
- When determining the amount of free disk space, any deleted (but not yet removed)
  recordings on different file systems (that are mounted under the video directory)
  are no longer taken into account.
- When running out of disk space during a recording, only such deleted or old
  recordings are removed, that actually are on the video directory file system(s).
  This prevents VDR from accidentally deleting recordings on other file systems,
  which would not add any free space to the video directory.
- Implemented the cStatus, cDevice and cPlayer functions for setting subtitle tracks
  in plugins (thanks to Petri Hintukainen).
- Added cStatus::TimerChange() to inform plugins about changes to the list of timers
  (based on a patch from Benedikt Elser).
- Added new cStatus functions to the 'status' plugin.
- Added missing #include <limits.h> to epg.c and menuitems.h (thanks to Ville Skyttä).
- The new function cSkin::SetScrollbar() can be implemented by skins to display
  a scrollbar in every list menu. The 'classic' and 'sttng' skins have been
  changed accordingly, as well as the 'skincurses' plugin.
- Introduced 'operator const void * ()' in cString to catch cases where operator*()
  should be used.
- Fixed calculating the scrollbar sizes in the skins.
2008-02-17 18:00:00 +01:00
..
2008-02-17 18:00:00 +01:00
2008-01-13 18:00:00 +01:00
2008-02-17 18:00:00 +01:00
2008-01-13 18:00:00 +01:00
2008-02-17 18:00:00 +01:00
2008-01-13 18:00:00 +01:00
2008-01-13 18:00:00 +01:00
2008-01-13 18:00:00 +01:00
2008-02-17 18:00:00 +01:00
2008-02-17 18:00:00 +01:00
2008-02-17 18:00:00 +01:00
2008-01-13 18:00:00 +01:00
2008-01-13 18:00:00 +01:00

This is a "plugin" for the Video Disk Recorder (VDR).

Written by:                  Klaus Schmidinger <kls@cadsoft.de>

Project's homepage:          www.cadsoft.de/vdr

Latest version available at: www.cadsoft.de/vdr

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
See the file COPYING for more information.

Description:
============

The 'pictures' plugin implements a simple picture viewer.

There is already an 'image' plugin out there which has a lot more
functionality than this one, but it's way too complex for my taste,
and also converts the image files on-the-fly, which makes it slow
on slow hardware.

This plugin assumes that the pictures have already been converted to
MPEG frames (with the 'pic2mpg' script that comes with this archive),
and doesn't implement any fancy features like zooming, panning or
tiled previews. It's just a very simple viewer.

It also assumes a rather particular directory structure (see below),
which I have found to fit well for my needs. If you use a different
structure, the plugin should still work, but the information displayed
in the caption may not be as expected.

Remote control key functions while in the Pictures menu:
========================================================

- Left/right/Up/Down:  navigate in the menu as usual.
- Ok:                  opens a directory or displays the selected
                       picture.
- Red/Play:            start a slide show at the first picture in the
                       selected directory (or at the selected picture).

Remote control key functions while displaying pictures:
=======================================================

- Left/Right:  advances to the previous/next picture. At the end of a directory
               it automatically advances to the first picture of the next
               directory and displays the caption.
- Up/Play:     start the slide show.
- Down/Pause:  stop the slide show.
- Blue/Stop:   exit from the picture viewer.
- Green/Prev:  skip to the first picture in the previous directory.
- Yellow/Next: skip to the first picture in the next directory.
- Ok:          toggle the caption display.
- Back:        return to the picture selection menu.

The slide show starts with the picture immediately following the one that
is currently visible, and continues until the last available picture,
automatically crossing directories as necessary.

Pressing any of the Left/Right, Green/Prev, Yellow/Next or Back keys
automatically stops an ongoing slide show.

Directory structure:
====================

The 'pictures' plugin requires a particular directory structure in order to
work properly. Starting at some base directory (e.g. "/path/to/pictures"),
there is one directory level marking the year in which the pictures were
taken, followed by a level with a properly sortable combination of month
and description, and finally the plain picture files, as in

/path/to/pictures/YEAR/MONTH_DESCRIPTION/*.jpg

For example

/path/to/pictures/2007/06a_Vacation_in_Colorado/dsc01234.jpg
/path/to/pictures/2007/06a_Vacation_in_Colorado/dsc01235.jpg
/path/to/pictures/2007/06b_Our_cat/dsc01236.jpg

The MONTH is "01" for January through "12" for December. If there is more
than one entry for one month, it should be followed by a letter to make them
sort correctly. Note that this is just a suggestion on how to make the
directories sort in the correct chronological order. Instead of the two digit
month number, optionally followed by a letter, you can use anything else you
like. There must be an underscore between the MONTH and the DESCRIPTION part,
and any underscores within the DESCRIPTION will be converted to blanks when
displaying the description (this is done so that blanks can be avoided in
the directory names).

Preparing the files:
====================

In order to display the pictures as "still pictures" on the DVB device, they
need to be converted into MPEG frames. This procedure takes some time, and
would make viewing pictures sluggish, especially on slow hardware. Therefore
the script "pic2mpg" must be used to convert all picture files before
using this plugin, as in

pic2mpg /path/to/pictures /path/to/pictures.MPG

This will recursively walk through all pictures in the source directory and
convert them into MPEG frames, stored in the destination directory. The
extension ".MPG" is just a suggestion, you can name the directory anything
you like, and it doesn't have to start with the same path as the source
directory. Just don't make the destination directory a subdirectory of
the source directory, because this would surely lead to problems.
See "pic2mpg -h" for a list of available options.
The pic2mpg conversion can be run any time, even if converted pictures
already exist. It will only convert pictures that haven't been converted
yet. Any changes to the source directory will be reflected in the destination
directory accordingly after pic2mpg has finished (note that this especially
means that any files or directories in the destination tree that have no
corresponding entry in the source tree will be deleted!). So you can run
pic2mpg, for instance, after copying new pictures into your picture
directory, or after making any other kind of changes to your existing
pictures. It might even be a good idea to run pic2mpg in a (nightly)
cron job.