diff options
author | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2002-07-21 18:00:00 +0200 |
---|---|---|
committer | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2002-07-21 18:00:00 +0200 |
commit | a4112a96a67dbeb1cd6a63d2b4fa4b837462f467 (patch) | |
tree | 5542f0478dbba7715da703b2864fbfda640d6612 /player.h | |
parent | 54d069c95c546d6b12f6effc1af7a0274b7c31e4 (diff) | |
download | vdr-patch-lnbsharing-a4112a96a67dbeb1cd6a63d2b4fa4b837462f467.tar.gz vdr-patch-lnbsharing-a4112a96a67dbeb1cd6a63d2b4fa4b837462f467.tar.bz2 |
Version 1.1.5vdr-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.
Diffstat (limited to 'player.h')
-rw-r--r-- | player.h | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: player.h 1.4 2002/06/23 12:56:38 kls Exp $ + * $Id: player.h 1.5 2002/07/13 11:12:26 kls Exp $ */ #ifndef __PLAYER_H @@ -41,6 +41,15 @@ public: cPlayer(void); virtual ~cPlayer(); bool IsAttached(void) { return device != NULL; } + virtual bool GetIndex(int &Current, int &Total, bool SnapToIFrame = false) { return false; } + // Returns the current and total frame index, optionally snapped to the + // nearest I-frame. + virtual bool GetReplayMode(bool &Play, bool &Forward, int &Speed) { return false; } + // Returns the current replay mode (if applicable). + // 'Play' tells whether we are playing or pausing, 'Forward' tells whether + // we are going forward or backward and 'Speed' is -1 if this is normal + // play/pause mode, 0 if it is single speed fast/slow forward/back mode + // and >0 if this is multi speed mode. }; class cControl : public cOsdObject { @@ -54,6 +63,8 @@ public: cControl(cPlayer *Player, bool Hidden = false); virtual ~cControl(); virtual void Hide(void) = 0; + bool GetIndex(int &Current, int &Total, bool SnapToIFrame = false) { return player->GetIndex(Current, Total, SnapToIFrame); } + bool GetReplayMode(bool &Play, bool &Forward, int &Speed) { return player->GetReplayMode(Play, Forward, Speed); } static void Launch(cControl *Control); static void Attach(void); static void Shutdown(void); |